'1.0', 'info' => ['style' => 'RPC', 'product' => 'ESA', 'version' => '2024-09-10'], 'directories' => [ [ 'children' => [ [ 'children' => ['CreateSite', 'CheckSiteName'], 'type' => 'directory', 'title' => 'Add and verify sites', ], [ 'children' => ['GetSite', 'ListSites'], 'type' => 'directory', 'title' => 'Query sites', ], [ 'children' => ['DeleteSite', 'UpdateSiteCoverage'], 'type' => 'directory', 'title' => 'Update and delete sites', ], ], 'type' => 'directory', 'title' => 'Site management', ], [ 'children' => [ [ 'children' => [ [ 'children' => ['UpdateSitePause', 'GetSitePause'], 'type' => 'directory', 'title' => 'Site suspension', ], ], 'type' => 'directory', 'title' => 'Site status', ], [ 'children' => [ [ 'children' => ['CreateCustomHostname', 'DeleteCustomHostname', 'UpdateCustomHostname', 'VerifyCustomHostname', 'GetCustomHostname', 'ListCustomHostnames', 'ApplyCustomHostnameCertificate'], 'type' => 'directory', 'title' => 'SaaS domain names', ], [ 'children' => ['BatchCreateRecords', 'DeleteRecord', 'UpdateRecord', 'ListRecords', 'GetRecord', 'ListEdgeRoutineRecords', 'ExportRecords'], 'type' => 'directory', 'title' => 'DNS records', ], [ 'children' => ['UpdateCnameFlattening'], 'type' => 'directory', 'title' => 'CNAME flattening', ], ], 'type' => 'directory', 'title' => 'DNS', ], [ 'children' => [ [ 'children' => ['ApplyCertificate', 'SetCertificate', 'ListCertificatesByRecord', 'GetCertificateQuota', 'ListCertificates', 'GetCertificate'], 'type' => 'directory', 'title' => 'Site certificates', ], [ 'children' => ['GetClientCaCertificate', 'ListClientCaCertificates', 'GetClientCertificate', 'ListClientCertificates', 'SetClientCertificateHostnames', 'GetClientCertificateHostnames', 'SetClientCaCertificateHostnames', 'GetClientCaCertificateHostnames'], 'type' => 'directory', 'title' => 'Client certificates', ], [ 'children' => ['UploadOriginCaCertificate', 'GetOriginCaCertificate', 'DeleteOriginCaCertificate', 'ListOriginCaCertificates', 'GetSiteOriginClientCertificate', 'DeleteSiteOriginClientCertificate', 'ListSiteOriginClientCertificates', 'UploadOriginClientCertificate', 'GetOriginClientCertificate', 'DeleteOriginClientCertificate', 'ListOriginClientCertificates', 'SetOriginClientCertificateHostnames', 'GetOriginClientCertificateHostnames'], 'type' => 'directory', 'title' => 'Origin certificates', ], [ 'children' => ['SetKeylessServer', 'GetKeylessServer', 'ListKeylessServers', 'DeleteKeylessServer'], 'type' => 'directory', 'title' => 'Keyless service', ], ], 'type' => 'directory', 'title' => 'SSL/TLS', ], [ 'children' => [ [ 'children' => ['SetAutomaticFrequencyControlConfig', 'GetAutomaticFrequencyControlConfig'], 'type' => 'directory', 'title' => 'Intelligent rate limiting', ], [ 'children' => ['CreateWafRule', 'CreateWafRuleset', 'BatchCreateWafRules', 'GetWafRule', 'GetWafRuleset', 'ListWafRules', 'ListWafRulesets', 'UpdateWafRule', 'UpdateWafRuleset', 'BatchUpdateWafRules', 'DeleteWafRule', 'DeleteWafRuleset', 'ListWafTemplateRules', 'ListWafManagedRules', 'ListWafUsageOfRules', 'GetWafQuota', 'GetWafFilter', 'GetSiteWafSettings', 'EditSiteWafSettings', 'BatchGetExpressionFields'], 'type' => 'directory', 'title' => 'WAF', ], [ 'children' => ['SetHttpDDoSAttackRuleStatus', 'SetHttpDDoSAttackRuleAction', 'DescribeHttpDDoSAttackRules', 'DescribeDDoSAllEventList', 'SetDdosMaxBurstGbps', 'DescribeDdosMaxBurstGbps', 'SetHttpDDoSAttackIntelligentProtection', 'DeleteHttpDDoSIntelligentRule', 'DescribeHttpDDoSAttackIntelligentProtection', 'DescribeHttpDDoSIntelligentRateLimitRules', 'DescribeHttpDDoSIntelligentAclRules'], 'type' => 'directory', 'title' => 'DDoS', ], [ 'children' => ['GetApiSchemaUsage'], 'type' => 'directory', 'title' => 'API security', ], [ 'children' => ['CreateOriginProtection', 'DeleteOriginProtection', 'UpdateOriginProtection', 'UpdateOriginProtectionIpWhiteList', 'GetOriginProtection'], 'type' => 'directory', 'title' => 'Origin protection', ], ], 'type' => 'directory', 'title' => 'Security protection', ], [ 'children' => [ [ 'children' => ['DescribePurgeTasks', 'GetPurgeQuota'], 'type' => 'directory', 'title' => 'Purge cache', ], [ 'children' => ['UpdateCacheTag'], 'type' => 'directory', 'title' => 'Cache tags', ], [ 'children' => ['DescribePreloadTasks'], 'type' => 'directory', 'title' => 'Prefetch cache', ], [ 'children' => ['CreateScheduledPreloadJob', 'CreateScheduledPreloadExecutions', 'StartScheduledPreloadExecution', 'StopScheduledPreloadExecution', 'DeleteScheduledPreloadExecution', 'DeleteScheduledPreloadJob', 'UpdateScheduledPreloadExecution', 'ResetScheduledPreloadJob', 'GetScheduledPreloadJob', 'ListScheduledPreloadJobs', 'ListScheduledPreloadExecutions'], 'type' => 'directory', 'title' => 'Scheduled prefetch', ], [ 'children' => ['BlockObject'], 'type' => 'directory', 'title' => 'Content blocking', ], [ 'children' => ['UpdateTieredCache'], 'type' => 'directory', 'title' => 'Tiered cache', ], [ 'children' => ['ListCacheReserveInstances', 'UpdateCacheReserveSpec'], 'type' => 'directory', 'title' => 'Cache reserve', ], ], 'type' => 'directory', 'title' => 'Cache', ], [ 'children' => [ [ 'children' => ['CreateHttpsBasicConfiguration', 'UpdateHttpsBasicConfiguration', 'ListHttpsBasicConfigurations'], 'type' => 'directory', 'title' => 'SSL/TLS rules', ], [ 'children' => ['CreateHttpsApplicationConfiguration', 'UpdateHttpsApplicationConfiguration', 'GetHttpsApplicationConfiguration', 'ListHttpsApplicationConfigurations'], 'type' => 'directory', 'title' => 'HTTPS rules', ], [ 'children' => ['CreateRedirectRule', 'UpdateRedirectRule'], 'type' => 'directory', 'title' => 'Redirect rules', ], [ 'children' => ['CreateRewriteUrlRule', 'UpdateRewriteUrlRule'], 'type' => 'directory', 'title' => 'Rewrite URL', ], [ 'children' => ['CreateHttpRequestHeaderModificationRule', 'UpdateHttpRequestHeaderModificationRule', 'GetHttpRequestHeaderModificationRule', 'ListHttpRequestHeaderModificationRules'], 'type' => 'directory', 'title' => 'Modify outbound request headers (ESA to origin)', ], [ 'children' => ['CreateHttpIncomingRequestHeaderModificationRule', 'UpdateHttpIncomingRequestHeaderModificationRule', 'GetHttpIncomingRequestHeaderModificationRule', 'ListHttpIncomingRequestHeaderModificationRules', 'DeleteHttpIncomingRequestHeaderModificationRule'], 'type' => 'directory', 'title' => 'Modify inbound request headers (client to ESA)', ], [ 'children' => ['CreateHttpResponseHeaderModificationRule', 'UpdateHttpResponseHeaderModificationRule', 'GetHttpResponseHeaderModificationRule', 'ListHttpResponseHeaderModificationRules'], 'type' => 'directory', 'title' => 'Modify outbound response headers (ESA to client)', ], [ 'children' => ['CreateHttpIncomingResponseHeaderModificationRule', 'UpdateHttpIncomingResponseHeaderModificationRule', 'GetHttpIncomingResponseHeaderModificationRule', 'ListHttpIncomingResponseHeaderModificationRules', 'DeleteHttpIncomingResponseHeaderModificationRule'], 'type' => 'directory', 'title' => 'Modify inbound response headers (origin to ESA)', ], [ 'children' => ['CreateCustomResponseCodeRule', 'UpdateCustomResponseCodeRule', 'DeleteCustomResponseCodeRule', 'GetCustomResponseCodeRule', 'ListCustomResponseCodeRules'], 'type' => 'directory', 'title' => 'Custom response codes', ], [ 'children' => ['UpdateManagedTransform', 'GetManagedTransform'], 'type' => 'directory', 'title' => 'Managed transforms', ], [ 'children' => ['CreateCacheRule', 'UpdateCacheRule', 'GetCacheRule', 'ListCacheRules'], 'type' => 'directory', 'title' => 'Cache rules', ], [ 'children' => ['CreateNetworkOptimization', 'UpdateNetworkOptimization'], 'type' => 'directory', 'title' => 'Network optimization rules', ], [ 'children' => ['CreateCompressionRule', 'UpdateCompressionRule'], 'type' => 'directory', 'title' => 'File compression', ], [ 'children' => ['CreateImageTransform', 'UpdateImageTransform', 'GetImageTransform', 'ListImageTransforms'], 'type' => 'directory', 'title' => 'Image processing', ], [ 'children' => ['CreateVideoProcessing', 'UpdateVideoProcessing', 'GetVideoProcessing', 'ListVideoProcessings', 'DeleteVideoProcessing'], 'type' => 'directory', 'title' => 'Video processing', ], [ 'children' => ['CreateOriginRule', 'UpdateOriginRule', 'GetOriginRule', 'ListOriginRules'], 'type' => 'directory', 'title' => 'Back-to-origin rules', ], ], 'type' => 'directory', 'title' => 'Rules', ], [ 'children' => [ [ 'children' => ['UpdateIPv6', 'GetIPv6'], 'type' => 'directory', 'title' => 'IPv6', ], [ 'children' => ['CreateUrlObservation', 'UpdateUrlObservation', 'DescribeUrlObservationData', 'ListUrlObservations', 'DeleteUrlObservation'], 'type' => 'directory', 'title' => 'Web page monitoring', ], [ 'children' => ['GetCrossBorderOptimization', 'UpdateCrossBorderOptimization'], 'type' => 'directory', 'title' => 'Chinese mainland network - access optimization', ], ], 'type' => 'directory', 'title' => 'Speed and network', ], [ 'children' => [ [ 'children' => ['CreateWaitingRoom', 'UpdateWaitingRoom', 'ListWaitingRooms', 'CreateWaitingRoomEvent', 'UpdateWaitingRoomEvent', 'ListWaitingRoomEvents', 'UpdateSeoBypass'], 'type' => 'directory', 'title' => 'Waiting room', ], [ 'children' => ['CreateOriginPool', 'UpdateOriginPool', 'GetOriginPool', 'ListOriginPools'], 'type' => 'directory', 'title' => 'Origin address pools', ], [ 'children' => ['CreateLoadBalancer', 'UpdateLoadBalancer', 'GetLoadBalancer', 'ListLoadBalancers', 'ListLoadBalancerRegions'], 'type' => 'directory', 'title' => 'Load balancing', ], ], 'type' => 'directory', 'title' => 'Traffic', ], [ 'children' => ['CreateTransportLayerApplication', 'UpdateTransportLayerApplication', 'GetTransportLayerApplication', 'ListTransportLayerApplications', 'DeleteTransportLayerApplication'], 'type' => 'directory', 'title' => 'Layer 4 proxy', ], [ 'children' => ['ListSiteRoutes'], 'type' => 'directory', 'title' => 'Function routing', ], ], 'type' => 'directory', 'title' => 'Site configuration', ], [ 'children' => [ [ 'children' => [ [ 'children' => ['CreateRoutine', 'ListUserRoutines', 'GetRoutine', 'UpdateRoutineConfigDescription'], 'type' => 'directory', 'title' => 'Function management', ], [ 'children' => ['CreateRoutineRoute', 'UpdateRoutineRoute', 'DeleteRoutineRoute', 'ListRoutineRoutes', 'GetRoutineRoute'], 'type' => 'directory', 'title' => 'Function routing', ], [ 'children' => ['CreateRoutineRelatedRecord', 'ListRoutineRelatedRecords'], 'type' => 'directory', 'title' => 'Function-associated host records', ], [ 'children' => ['CommitRoutineStagingCode', 'ListRoutineCodeVersions', 'GetRoutineCodeVersion', 'CreateRoutineCodeDeployment'], 'type' => 'directory', 'title' => 'Function code versions', ], ], 'type' => 'directory', 'title' => 'Edge functions', ], [ 'children' => [ [ 'children' => ['DeleteEdgeContainerApp', 'UpdateEdgeContainerAppResourceReserve', 'GetEdgeContainerAppResourceReserve', 'DescribeEdgeContainerAppStats', 'GetEdgeContainerAppResourceStatus', 'GetEdgeContainerAppResourceCapacity'], 'type' => 'directory', 'title' => 'Container applications', ], [ 'children' => ['CreateEdgeContainerAppImageSecret', 'ListEdgeContainerAppImageSecrets', 'DeleteEdgeContainerAppImageSecret'], 'type' => 'directory', 'title' => 'Container application image secrets', ], [ 'children' => ['CreateEdgeContainerAppVersion', 'GetEdgeContainerAppVersion', 'PublishEdgeContainerAppVersion', 'RollbackEdgeContainerAppVersion'], 'type' => 'directory', 'title' => 'Version management', ], ], 'type' => 'directory', 'title' => 'Edge containers', ], [ 'children' => [ [ 'children' => ['DescribeKvAccountStatus', 'GetKvAccount'], 'type' => 'directory', 'title' => 'Service status query', ], [ 'children' => ['GetKvDetail', 'ListKvs', 'GetKv', 'PutKv', 'DeleteKv', 'BatchPutKv', 'BatchDeleteKv', 'PutKvWithHighCapacity', 'BatchPutKvWithHighCapacity', 'BatchDeleteKvWithHighCapacity'], 'type' => 'directory', 'title' => 'Key-value pair settings', ], [ 'children' => ['CreateKvNamespace', 'DeleteKvNamespace', 'GetKvNamespace'], 'type' => 'directory', 'title' => 'Storage space', ], ], 'type' => 'directory', 'title' => 'Edge storage', ], ], 'type' => 'directory', 'title' => 'Edge computing', ], [ 'children' => [ [ 'children' => ['DescribeSiteTimeSeriesData', 'DescribeSiteTopData'], 'type' => 'directory', 'title' => 'Data analytics', ], [ 'children' => ['CreateSiteDeliveryTask', 'UpdateSiteDeliveryTask', 'UpdateUserDeliveryTaskStatus', 'GetSiteLogDeliveryQuota', 'CreateUserDeliveryTask', 'UpdateUserDeliveryTask', 'GetUserDeliveryTask', 'GetSiteDeliveryTask'], 'type' => 'directory', 'title' => 'Real-time logs', ], [ 'children' => ['DescribeSiteLogs'], 'type' => 'directory', 'title' => 'Offline logs', ], ], 'type' => 'directory', 'title' => 'Analytics and logs', ], [ 'children' => [ [ 'children' => ['CreateUserWafRuleset', 'DeleteUserWafRuleset', 'GetUserWafRuleset', 'ListUserWafRulesets', 'UpdateUserWafRuleset'], 'type' => 'directory', 'title' => 'Global WAF', ], [ 'children' => ['GetList', 'ListLists'], 'type' => 'directory', 'title' => 'Groups', ], [ 'children' => ['CreateCustomScenePolicy', 'UpdateCustomScenePolicy', 'DescribeCustomScenePolicies'], 'type' => 'directory', 'title' => 'Scenario-specific policies', ], [ 'children' => ['CreatePage', 'UpdatePage', 'GetPage', 'ListPages'], 'type' => 'directory', 'title' => 'Custom pages', ], ], 'type' => 'directory', 'title' => 'Global configuration', ], [ 'children' => ['TagResources'], 'type' => 'directory', 'title' => 'Tag management', ], [ 'children' => [ [ 'children' => ['ListTraceTasks', 'DescribeTraceDiagnoseReport', 'GenerateTraceDiagnose'], 'type' => 'directory', 'title' => 'Site diagnostics', ], 'ListESAIPInfo', ], 'type' => 'directory', 'title' => 'Tools', ], [ 'children' => [ [ 'children' => ['PurchaseRatePlan', 'UpdateRatePlanSpec', 'ListUserRatePlanInstances', 'ListPostpaidRatePlanInstances', 'DescribeRatePlanPrice'], 'type' => 'directory', 'title' => 'Plan instance management', ], [ 'children' => ['ListDDoSInstances', 'ReleaseInstance'], 'type' => 'directory', 'title' => 'Security instance management', ], ], 'type' => 'directory', 'title' => 'Billing management', ], [ 'children' => [ 'GetPerformanceDataCollection', 'UpdatePerformanceDataCollection', 'ActivateClientCertificate', 'ActivateVersionManagement', 'CheckSiteProjectName', 'CheckUserProjectName', 'CreateClientCertificate', 'CreateEdgeContainerApp', 'CreateEdgeContainerAppRecord', 'CreateList', 'CreateRecord', 'CreateSiteCustomLog', 'CreateWaitingRoomRule', 'DeactivateVersionManagement', 'DeleteCacheRule', 'DeleteCertificate', 'DeleteClientCaCertificate', 'DeleteClientCertificate', 'DeleteCompressionRule', 'DeleteCustomScenePolicy', 'DeleteEdgeContainerAppRecord', 'DeleteEdgeContainerAppVersion', 'DeleteHttpRequestHeaderModificationRule', 'DeleteHttpResponseHeaderModificationRule', 'DeleteHttpsApplicationConfiguration', 'DeleteHttpsBasicConfiguration', 'DeleteImageTransform', 'DeleteList', 'DeleteLoadBalancer', 'DeleteNetworkOptimization', 'DeleteOriginPool', 'DeleteOriginRule', 'DeletePage', 'DeleteRedirectRule', 'DeleteRewriteUrlRule', 'DeleteRoutine', 'DeleteRoutineCodeVersion', 'DeleteRoutineRelatedRecord', 'DeleteSiteDeliveryTask', 'DeleteUserDeliveryTask', 'DeleteWaitingRoom', 'DeleteWaitingRoomEvent', 'DeleteWaitingRoomRule', 'DescribeBotPrice', 'DescribeCacheReservePrice', 'DescribeCacheReservePriceGap', 'DescribeDDoSBpsList', 'DescribeDDoSBpsMax', 'DescribeDDoSEventMax', 'DescribeDDoSL7QpsList', 'DescribeDDoSOverseasAttackCount', 'DescribeHttpDDoSAttackProtection', 'DescribeRatePlanInstanceStatus', 'DescribeRatePlanPriceGap', 'DescribeSiteWafTimeSeriesData', 'DescribeSiteWafTopData', 'DescribeWafUsageData', 'DisableCustomScenePolicy', 'EnableCustomScenePolicy', 'GetCacheReserveSpecification', 'GetCacheTag', 'GetCnameFlattening', 'GetCompressionRule', 'GetDcvDelegation', 'GetDevelopmentMode', 'GetEdgeContainer', 'GetEdgeContainerApp', 'GetEdgeContainerAppLogRiver', 'GetEdgeContainerAppStatus', 'GetEdgeContainerDeployRegions', 'GetEdgeContainerLogs', 'GetEdgeContainerStagingDeployStatus', 'GetEdgeContainerTerminal', 'GetErService', 'GetFailFile', 'GetHttpsBasicConfiguration', 'GetNetworkOptimization', 'GetRealtimeDeliveryField', 'GetRedirectRule', 'GetRewriteUrlRule', 'GetRoutineCodeVersionInfo', 'GetRoutineStagingCodeUploadInfo', 'GetSeoBypass', 'GetSiteCurrentNS', 'GetSiteCustomLog', 'GetSiteNameExclusive', 'GetTieredCache', 'GetUploadTask', 'GetUserLogDeliveryQuota', 'GetWafBotAppKey', 'ListCasCertificates', 'ListCiphers', 'ListCompressionRules', 'ListEdgeContainerAppRecords', 'ListEdgeContainerAppVersions', 'ListEdgeContainerApps', 'ListEdgeContainerRecords', 'ListEdgeRoutinePlans', 'ListInstanceQuotas', 'ListInstanceQuotasWithUsage', 'ListLoadBalancerOriginStatus', 'ListManagedRulesGroups', 'ListNetworkOptimizations', 'ListRedirectRules', 'ListRewriteUrlRules', 'ListSiteDeliveryTasks', 'ListTagResources', 'ListUploadTasks', 'ListUserDeliveryTasks', 'ListWafPhases', 'ListWaitingRoomRules', 'OpenEdgeContainer', 'OpenErService', 'PreloadCaches', 'PublishRoutineCodeVersion', 'PurchaseBotInstance', 'PurchaseCacheReserve', 'PurgeCaches', 'RebuildEdgeContainerAppStagingEnv', 'RevokeClientCertificate', 'SetHttpDDoSAttackProtection', 'SubmitUploadTask', 'UntagResources', 'UpdateDevelopmentMode', 'UpdateEdgeContainerAppLogRiver', 'UpdateList', 'UpdateSiteAccessType', 'UpdateSiteCustomLog', 'UpdateSiteDeliveryTaskStatus', 'UpdateSiteNameExclusive', 'UpdateSiteVanityNS', 'UpdateWaitingRoomRule', 'UploadClientCaCertificate', 'UploadFile', 'UploadSiteOriginClientCertificate', 'VerifySite', ], 'type' => 'directory', 'title' => 'Others', ], ], 'components' => [ 'schemas' => [ 'WafBatchRuleShared' => [ 'title' => 'WAF批量规则共享', 'description' => 'WAF batch rule sharing.'."\n", 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'Target' => ['title' => '防护目标类型:web/app', 'description' => 'Protection type: web or app.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'web', 'backendName' => 'target'], 'Mode' => ['title' => 'web sdk 集成方式:自动集成(automatic)/手动集成(manual)', 'description' => 'Web SDK integration method: automatic integration (automatic) or manual integration (manual).'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'automatic', 'backendName' => 'mode'], 'CrossSiteId' => ['title' => '指定跨域站点id', 'description' => 'Specifies the cross-domain website ID.'."\n", 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int64', 'example' => '10000001', 'backendName' => 'crossSiteId'], 'Name' => ['title' => '规则集名称', 'description' => 'The ruleset name.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'example', 'backendName' => 'name'], 'Match' => ['title' => '匹配引擎', 'description' => 'The matching rule.'."\n", 'visibility' => 'Public', 'backendName' => 'match', '$ref' => '#/components/schemas/WafRuleMatch2'], 'Action' => ['title' => '动作', 'description' => 'The action that you want WAF to perform on requests that match the rule.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'deny', 'backendName' => 'action'], 'Actions' => [ 'title' => '动作扩展', 'description' => 'The extended action configurations.'."\n", 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'Response' => [ 'title' => '自定义响应', 'description' => 'The custom response.'."\n", 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '自定义响应页面id', 'description' => 'The ID of the custom response page.'."\n", 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int64', 'example' => '50000001', 'backendName' => 'id'], 'Code' => ['title' => '自定义响应码', 'description' => 'The custom response code.'."\n", 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int32', 'example' => '403', 'backendName' => 'code'], ], 'backendName' => 'response', ], ], 'backendName' => 'actions', ], 'Expression' => ['title' => '表达式', 'description' => 'The expression.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'ip.src eq 1.1.1.1', 'backendName' => 'expression'], ], ], 'WafQuotaInteger' => [ 'title' => 'a integer', 'description' => '对integer类型值进行校验的quota结构。', 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'Equal' => ['title' => 'equal', 'description' => '等于。', 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int32', 'backendName' => 'eq', 'example' => '1'], 'GreaterThan' => ['title' => 'greater than', 'description' => '大于。', 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int32', 'backendName' => 'gt', 'example' => '1'], 'GreaterThanOrEqual' => ['title' => 'greater than or equal', 'description' => '大于等于。', 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int32', 'backendName' => 'ge', 'example' => '1'], 'LessThan' => ['title' => 'less than', 'description' => '小于。', 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int32', 'backendName' => 'lt', 'example' => '1'], 'LessThanOrEqual' => ['title' => 'less than or equal', 'description' => '小于等于。', 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int32', 'backendName' => 'le', 'example' => '1'], ], ], 'WafQuotaString' => [ 'title' => 'A short description of struct', 'description' => '对string类型值进行校验的quota结构。', 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'Regexp' => ['title' => '正则表达式', 'description' => '正则表达式。', 'visibility' => 'Public', 'type' => 'string', 'example' => '^\\d+$', 'backendName' => 'regex'], ], ], 'WafRatelimitCharacteristics' => [ 'description' => 'The characteristics of a WAF rate limit rule.', 'type' => 'object', 'properties' => [ 'Logic' => ['description' => 'The logical relationship between the criteria.', 'type' => 'string', 'title' => '', 'example' => 'and'], 'Criteria' => [ 'description' => 'A list of match criteria.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Logic' => ['description' => 'The logical relationship between the criteria.', 'type' => 'string', 'title' => '', 'example' => 'and'], 'Criteria' => [ 'description' => 'A list of match criteria.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Logic' => ['description' => 'The logical relationship between the criteria.', 'type' => 'string', 'title' => '', 'example' => 'and'], 'Criteria' => [ 'description' => 'A list of match criteria.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'MatchType' => ['description' => 'The field to match.', 'type' => 'string', 'title' => '', 'example' => 'ip.src'], ], 'description' => 'A match criterion.', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'MatchType' => ['description' => 'The field to match.', 'type' => 'string', 'title' => '', 'example' => 'ip.src'], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'MatchType' => ['description' => 'The field to match.', 'type' => 'string', 'title' => '', 'example' => 'ip.src'], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'MatchType' => ['description' => 'The field to match.', 'type' => 'string', 'title' => '', 'example' => 'ip.src'], ], 'title' => '', 'example' => '', ], 'WafRuleConfig' => [ 'title' => 'A short description of struct', 'description' => 'The WAF rule configurations.'."\n", 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'Status' => ['title' => '规则状态', 'description' => 'The status of the WAF rule.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'on', 'backendName' => 'status'], 'Action' => ['title' => '执行动作', 'description' => 'The operation to perform after the WAF rule is matched.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'deny', 'backendName' => 'action'], 'Actions' => [ 'title' => '扩展动作', 'description' => 'The extended action configurations.'."\n", 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'Response' => [ 'title' => '自定义响应页面', 'description' => 'The custom error page.'."\n", 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '自定义响应页面ID', 'description' => 'The ID of the custom error page, which can be obtained by calling the [ListPages](~~2850223~~) operation.'."\n", 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int64', 'example' => '50000001', 'backendName' => 'id'], 'Code' => ['title' => '自定义响应码', 'description' => 'The custom response code.'."\n", 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int32', 'example' => '403', 'backendName' => 'code'], ], 'backendName' => 'response', ], 'Bypass' => [ 'title' => '跳过模块', 'description' => 'The skip configuration specified by the whitelist rule.'."\n", 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'Skip' => ['title' => '跳过模块类型', 'description' => 'The skip scope applied when requests match conditions defined in the whitelist rule.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'part', 'backendName' => 'skip'], 'RegularRules' => [ 'title' => '托管规则id列表', 'description' => 'The IDs of managed rules.'."\n", 'visibility' => 'Public', 'type' => 'array', 'items' => ['description' => 'The ID of the managed rule.'."\n", 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int64', 'example' => '100001', 'extendType' => 'true'], 'backendName' => 'regularRules', ], 'CustomRules' => [ 'title' => '自定义规则id列表', 'description' => 'The IDs of custom rules.'."\n", 'visibility' => 'Public', 'type' => 'array', 'items' => ['description' => 'The ID of the custom rule.'."\n", 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int64', 'example' => '20000001', 'extendType' => 'true'], 'backendName' => 'customRules', ], 'RegularTypes' => [ 'title' => '托管规则类型列表', 'description' => 'The types of managed rules.'."\n", 'visibility' => 'Public', 'type' => 'array', 'items' => ['description' => 'The type of the managed rule.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'sqli', 'extendType' => 'true'], 'backendName' => 'regularTypes', ], 'Tags' => [ 'title' => '跳过模块列表', 'description' => 'The skipped rule categories when requests match conditions defined in the whitelist rule.'."\n", 'visibility' => 'Public', 'type' => 'array', 'items' => ['description' => 'The skipped rule category when requests match conditions defined in the whitelist rule.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'http_custom', 'extendType' => 'true'], 'backendName' => 'tags', ], ], 'backendName' => 'bypass', ], ], 'backendName' => 'actions', ], 'ManagedList' => ['title' => '名单名字', 'description' => 'The managed list.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'intelligence_crawler', 'backendName' => 'managedList'], 'ManagedRulesets' => [ 'title' => '托管规则集列表', 'description' => 'The managed rulesets.'."\n", 'visibility' => 'Public', 'type' => 'array', 'items' => [ 'description' => 'The managed ruleset.'."\n", 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'ProtectionLevel' => ['title' => '防护等级', 'description' => 'The protection level.'."\n", 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'backendName' => 'protectionLevel'], 'Action' => ['title' => '执行动作', 'description' => 'The action.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'deny', 'backendName' => 'action'], 'ManagedRules' => [ 'title' => '托管规则列表', 'description' => 'The managed rules.'."\n", 'visibility' => 'Public', 'type' => 'array', 'items' => [ 'description' => 'The managed rule.'."\n", 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'Status' => ['title' => '托管规则状态', 'description' => 'The status of the managed rule.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'on', 'backendName' => 'status'], 'Action' => ['title' => '托管规则动作', 'description' => 'The action performed on requests that match the managed rule.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'deny', 'backendName' => 'action'], 'Id' => ['title' => '托管规则ID', 'description' => 'The ID of the managed rule.'."\n", 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int64', 'example' => '100001', 'backendName' => 'id'], ], 'extendType' => 'true', ], 'backendName' => 'managedRules', ], 'AttackType' => ['title' => '攻击类型', 'description' => 'The attack type.'."\n", 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int32', 'example' => '11', 'backendName' => 'attackType'], 'NumberTotal' => ['title' => '规则总数', 'description' => 'The total number of rules.'."\n", 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'backendName' => 'numberTotal'], 'NumberEnabled' => ['title' => '已开启规则数', 'description' => 'The number of enabled rules.'."\n", 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int32', 'example' => '50', 'backendName' => 'numberEnabled'], ], 'extendType' => 'true', ], 'backendName' => 'managedRulesets', ], 'Sigchl' => [ 'title' => '令牌校验', 'description' => 'The token verification configurations.'."\n", 'visibility' => 'Public', 'type' => 'array', 'items' => ['description' => 'The token verification configuration item.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'sig', 'extendType' => 'true'], 'backendName' => 'sigchl', ], 'Name' => ['title' => '规则名称', 'description' => 'The name of the WAF rule.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'example', 'backendName' => 'name'], 'AppSdk' => [ 'title' => 'app sdk', 'description' => 'The SDK configuration for apps.'."\n", 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'CustomSign' => [ 'title' => '自定义加签字段', 'description' => 'The custom signature field.'."\n", 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'Value' => ['title' => '字段值', 'description' => 'The field value.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'examplesignvalue', 'backendName' => 'value'], 'Key' => ['title' => '字段名', 'description' => 'The field name.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'sign', 'backendName' => 'key'], ], 'backendName' => 'customSign', ], 'CustomSignStatus' => ['title' => '自定义加签字段开关', 'description' => 'Indicates whether to configure the custom signature field.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'on', 'backendName' => 'customSignStatus'], 'FeatureAbnormal' => [ 'title' => '特征异常', 'description' => 'The app anomalies.'."\n", 'visibility' => 'Public', 'type' => 'array', 'items' => ['description' => 'The app anomaly.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'wxbb_invalid_sign', 'extendType' => 'true'], 'backendName' => 'featureAbnormal', ], ], 'backendName' => 'appSdk', ], 'RateLimit' => [ 'title' => '频次控制', 'description' => 'The configuration of the rate limiting rule.'."\n", 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'Characteristics' => ['title' => '统计对象', 'description' => 'The statistical objects to which the rule applies.'."\n", 'visibility' => 'Public', 'backendName' => 'characteristics', '$ref' => '#/components/schemas/WafRuleMatch2'], 'OnHit' => ['title' => '在命中缓存的请求上应用', 'description' => 'Indicates whether to apply the rule to requests that hit the cache.'."\n", 'visibility' => 'Public', 'type' => 'boolean', 'example' => 'true', 'backendName' => 'onHit'], 'TTL' => ['title' => '超时时间', 'description' => 'The timeout period for creating the stack.'."\n", 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'backendName' => 'ttl'], 'Threshold' => [ 'title' => '阈值', 'description' => 'The thresholds.'."\n", 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'ManagedRulesBlocked' => ['title' => '托管规则命中阈值', 'description' => 'The maximum number of times that the managed rule is triggered.'."\n", 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'backendName' => 'managedRulesBlocked'], 'DistinctManagedRules' => ['title' => '不同的托管规则个数阈值', 'description' => 'The maximum number of managed rules that are triggered.'."\n", 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'backendName' => 'distinctManagedRules'], 'ResponseStatus' => [ 'title' => '响应码阈值', 'description' => 'The configuration of the status code threshold.'."\n", 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'Ratio' => ['title' => '响应码百分比', 'description' => 'The percentage of the occurrences of the status code to total status codes.'."\n", 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'backendName' => 'ratio'], 'Count' => ['title' => '响应码次数阈值', 'description' => 'The maximum number of times that the status code is returned.'."\n", 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'backendName' => 'count'], 'Code' => ['title' => 'HTTP响应码', 'description' => 'The HTTP status code.'."\n", 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int32', 'example' => '404', 'backendName' => 'code'], ], 'backendName' => 'responseStatus', ], 'Traffic' => ['title' => '流量阈值', 'description' => 'The traffic threshold, which is deprecated.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => '10Gb', 'backendName' => 'traffic'], 'Request' => ['title' => '请求阈值', 'description' => 'The request threshold.'."\n", 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'backendName' => 'request', 'parseType' => 'struct'], ], 'backendName' => 'threshold', ], 'Interval' => ['title' => '统计时长', 'description' => 'The statistical interval.'."\n", 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'backendName' => 'interval'], ], 'backendName' => 'rateLimit', ], 'Type' => ['title' => '规则类型', 'description' => 'The name of the WAF rule.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'http_custom', 'backendName' => 'type'], 'AppPackage' => [ 'title' => '二次打包检测', 'description' => 'The configuration of secondary package detection.'."\n", 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'PackageSigns' => [ 'title' => '二次打包检测', 'description' => 'The package signatures.'."\n", 'visibility' => 'Public', 'type' => 'array', 'items' => [ 'description' => 'The package signature information.'."\n", 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'Sign' => ['title' => '包签名', 'description' => 'The valid package signature.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'sign', 'backendName' => 'sign'], 'Name' => ['title' => '指定合法包名', 'description' => 'The valid package name.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'name', 'backendName' => 'name'], ], 'extendType' => 'true', ], 'backendName' => 'packageSigns', ], ], 'backendName' => 'appPackage', ], 'ManagedGroupId' => ['title' => '托管规则组id', 'description' => 'The ID of the managed rule group, which is deprecated.'."\n", 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int64', 'example' => '30000001', 'backendName' => 'managedGroupId'], 'Timer' => ['title' => '定时器', 'description' => 'The timer.'."\n", 'visibility' => 'Public', 'backendName' => 'timer', '$ref' => '#/components/schemas/WafTimer'], 'Expression' => ['title' => '表达式', 'description' => 'The match expression.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'ip.src eq 1.1.1.1', 'backendName' => 'expression'], 'SecurityLevel' => [ 'title' => '安全级别', 'description' => 'The security level.'."\n", 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'Value' => ['title' => '安全级别的值', 'description' => 'Valid value:'."\n" ."\n" .'* off'."\n" .'* essentially_off'."\n" .'* low'."\n" .'* medium'."\n" .'* high'."\n" .'* under_attack'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'low', 'backendName' => 'value'], ], 'backendName' => 'securityLevel', ], 'Value' => ['title' => 'IP访问控制值', 'description' => 'Defines whether the IP can access.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => '10.0.0.1', 'backendName' => 'value'], 'Id' => ['title' => '规则id', 'description' => 'The ID of the WAF rule.'."\n", 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int64', 'example' => '20000001', 'backendName' => 'id'], 'Notes' => ['title' => '备注', 'description' => 'The remarks.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'example notes', 'backendName' => 'notes'], ], ], 'WafRuleMatch' => [ 'description' => 'WAF规则匹配结构。', 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'Logic' => ['title' => '逻辑关系', 'description' => '逻辑关系。', 'visibility' => 'Public', 'type' => 'string', 'example' => 'and', 'backendName' => 'logic'], 'Criteria' => [ 'title' => '逻辑列表', 'description' => '逻辑列表。', 'visibility' => 'Public', 'type' => 'array', 'items' => ['description' => 'WAF规则匹配结构。', 'visibility' => 'Public', 'extendType' => 'true', '$ref' => '#/components/schemas/WafRuleMatch'], 'backendName' => 'criteria', ], 'MatchType' => ['title' => '匹配域', 'description' => '匹配域。', 'visibility' => 'Public', 'type' => 'string', 'example' => 'ip.src', 'backendName' => 'type'], 'MatchOperator' => ['title' => '匹配符', 'description' => '匹配符。', 'visibility' => 'Public', 'type' => 'string', 'example' => 'eq', 'backendName' => 'operator'], 'MatchValue' => ['title' => '匹配值', 'description' => '匹配值。', 'visibility' => 'Public', 'type' => 'any', 'example' => '1.1.1.1', 'backendName' => 'value'], 'Negate' => ['title' => '匹配结果取反', 'description' => '匹配结果取反。', 'visibility' => 'Public', 'type' => 'boolean', 'backendName' => 'negate'], 'ConvertToLower' => ['title' => '值大小写不敏感', 'description' => '值大小写不敏感。', 'visibility' => 'Public', 'type' => 'boolean', 'backendName' => 'convertToLower'], ], ], 'WafRuleMatch2' => [ 'description' => 'The matching items of the WAF rule.'."\n", 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'Logic' => ['title' => '逻辑关系', 'description' => 'The logical judgment.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'and', 'backendName' => 'logic'], 'Criteria' => [ 'title' => '逻辑列表', 'description' => 'The details of logical databases.'."\n", 'visibility' => 'Public', 'type' => 'array', 'items' => [ 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'Logic' => ['title' => '逻辑关系', 'description' => 'The logical judgment.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'and', 'backendName' => 'logic'], 'Criteria' => [ 'title' => '逻辑列表', 'description' => 'The details of logical databases.'."\n", 'visibility' => 'Public', 'type' => 'array', 'items' => [ 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'Logic' => ['title' => '逻辑关系', 'description' => 'The logical judgment.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'and', 'backendName' => 'logic'], 'Criteria' => [ 'title' => '逻辑列表', 'description' => 'The details of logical databases.'."\n", 'visibility' => 'Public', 'type' => 'array', 'items' => [ 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'MatchType' => ['title' => '匹配域', 'description' => 'The matching type.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'ip.src', 'backendName' => 'type'], 'MatchOperator' => ['title' => '匹配符', 'description' => 'The matching operator.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'eq', 'backendName' => 'operator'], 'MatchValue' => ['title' => '匹配值', 'description' => 'The value of the matching condition.'."\n", 'visibility' => 'Public', 'type' => 'any', 'example' => '1.1.1.1', 'backendName' => 'value'], 'Negate' => ['title' => '匹配结果取反', 'description' => 'Converts a value or condition to its opposite.'."\n", 'visibility' => 'Public', 'type' => 'boolean', 'backendName' => 'negate'], 'ConvertToLower' => ['title' => '值大小写不敏感', 'description' => 'Transforms input to lowercase to ensure case-insensitivity.'."\n", 'visibility' => 'Public', 'type' => 'boolean', 'backendName' => 'convertToLower'], ], 'extendType' => 'true', 'description' => '', ], 'backendName' => 'criteria', ], 'MatchType' => ['title' => '匹配域', 'description' => 'The matching type.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'ip.src', 'backendName' => 'type'], 'MatchOperator' => ['title' => '匹配符', 'description' => 'The matching operator.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'eq', 'backendName' => 'operator'], 'MatchValue' => ['title' => '匹配值', 'description' => 'The value of the matching condition.'."\n", 'visibility' => 'Public', 'type' => 'any', 'example' => '1.1.1.1', 'backendName' => 'value'], 'Negate' => ['title' => '匹配结果取反', 'description' => 'Converts a value or condition to its opposite.'."\n", 'visibility' => 'Public', 'type' => 'boolean', 'backendName' => 'negate'], 'ConvertToLower' => ['title' => '值大小写不敏感', 'description' => 'Transforms input to lowercase to ensure case-insensitivity.'."\n", 'visibility' => 'Public', 'type' => 'boolean', 'backendName' => 'convertToLower'], ], 'extendType' => 'true', 'description' => '', ], 'backendName' => 'criteria', ], 'MatchType' => ['title' => '匹配域', 'description' => 'The matching type.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'ip.src', 'backendName' => 'type'], 'MatchOperator' => ['title' => '匹配符', 'description' => 'The matching operator.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'eq', 'backendName' => 'operator'], 'MatchValue' => ['title' => '匹配值', 'description' => 'The value of the matching condition.'."\n", 'visibility' => 'Public', 'type' => 'any', 'example' => '1.1.1.1', 'backendName' => 'value'], 'Negate' => ['title' => '匹配结果取反', 'description' => 'Converts a value or condition to its opposite.'."\n", 'visibility' => 'Public', 'type' => 'boolean', 'backendName' => 'negate'], 'ConvertToLower' => ['title' => '值大小写不敏感', 'description' => 'Transforms input to lowercase to ensure case-insensitivity.'."\n", 'visibility' => 'Public', 'type' => 'boolean', 'backendName' => 'convertToLower'], ], 'extendType' => 'true', 'description' => '', ], 'backendName' => 'criteria', ], 'MatchType' => ['title' => '匹配域', 'description' => 'The matching type.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'ip.src', 'backendName' => 'type'], 'MatchOperator' => ['title' => '匹配符', 'description' => 'The matching operator.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => 'eq', 'backendName' => 'operator'], 'MatchValue' => ['title' => '匹配值', 'description' => 'The value of the matching condition.'."\n", 'visibility' => 'Public', 'type' => 'any', 'example' => '1.1.1.1', 'backendName' => 'value'], 'Negate' => ['title' => '匹配结果取反', 'description' => 'Converts a value or condition to its opposite.'."\n", 'visibility' => 'Public', 'type' => 'boolean', 'backendName' => 'negate'], 'ConvertToLower' => ['title' => '值大小写不敏感', 'description' => 'Transforms input to lowercase to ensure case-insensitivity.'."\n", 'visibility' => 'Public', 'type' => 'boolean', 'backendName' => 'convertToLower'], ], ], 'WafSiteSettings' => [ 'title' => '', 'description' => 'A short description of struct', 'type' => 'object', 'properties' => [ 'ClientIpIdentifier' => [ 'title' => '', 'description' => 'The client IP identification.', 'type' => 'object', 'properties' => [ 'Mode' => [ 'title' => '', 'description' => 'The identification mode.', 'enumValueTitles' => ['headers' => 'Specified headers.', 'connection_ip' => 'Connection IP.'], 'type' => 'string', 'example' => 'headers', ], 'Headers' => [ 'title' => '', 'description' => 'The specified headers.', 'type' => 'array', 'items' => ['description' => 'The specified header.', 'type' => 'string', 'example' => 'X-Forwarded-For', 'title' => ''], 'example' => '', ], ], 'example' => '', ], 'AddBotProtectionHeaders' => [ 'title' => '', 'description' => 'The bot protection headers.', 'type' => 'object', 'properties' => [ 'Enable' => ['title' => '', 'description' => 'The switch.', 'type' => 'boolean', 'example' => ''], ], 'example' => '', ], 'AddSecurityHeaders' => [ 'title' => '', 'description' => 'The security headers.', 'type' => 'object', 'properties' => [ 'Enable' => ['title' => '', 'description' => 'The switch.', 'type' => 'boolean', 'example' => ''], ], 'example' => '', ], 'SecurityLevel' => [ 'title' => '', 'description' => 'The security level.', 'type' => 'object', 'properties' => [ 'Value' => [ 'title' => '', 'description' => 'The security level value.', 'enumValueTitles' => ['high' => 'High.', 'low' => 'Low.', 'under_attack' => 'I\'m under attack.', 'medium' => 'Medium.', 'essentially_off' => 'Essentially off.', 'off' => 'Off.'], 'type' => 'string', 'example' => 'low', ], ], 'example' => '', ], 'BotManagement' => [ 'title' => '', 'description' => 'The bot management.', 'type' => 'object', 'properties' => [ 'DefiniteBots' => [ 'title' => '', 'description' => 'The definite bots.', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'The rule ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '20000001'], 'Action' => ['title' => '', 'description' => 'The action.', 'type' => 'string', 'example' => 'captcha'], ], 'example' => '', ], 'LikelyBots' => [ 'title' => '', 'description' => 'The likely bots.', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'The rule ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '20000002'], 'Action' => ['title' => '', 'description' => 'The action.', 'type' => 'string', 'example' => 'deny'], ], 'example' => '', ], 'VerifiedBots' => [ 'title' => '', 'description' => 'The verified bots.', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'The rule ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '20000003'], 'Action' => ['title' => '', 'description' => 'The action.', 'type' => 'string', 'example' => 'bypass'], ], 'example' => '', ], 'JSDetection' => [ 'title' => '', 'description' => 'The JavaScript detection.', 'type' => 'object', 'properties' => [ 'Enable' => ['title' => '', 'description' => 'The switch.', 'type' => 'boolean', 'example' => ''], ], 'example' => '', ], 'EffectOnStatic' => [ 'title' => '', 'description' => 'Specifies whether the rule applies to static resource requests.', 'type' => 'object', 'properties' => [ 'Enable' => ['title' => '', 'description' => 'The switch.', 'type' => 'boolean', 'example' => 'true'], ], 'example' => '', ], ], 'example' => '', ], 'BandwidthAbuseProtection' => [ 'title' => '', 'description' => 'The bandwidth abuse protection.', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'The ID of the bandwidth abuse protection rule.', 'type' => 'integer', 'example' => '10000001', 'format' => 'int64'], 'Status' => ['title' => '', 'description' => 'The status of the bandwidth abuse protection rule.', 'type' => 'string', 'example' => 'on'], 'Action' => ['title' => '', 'description' => 'The action of the bandwidth abuse protection rule.', 'type' => 'string', 'example' => 'deny'], ], 'example' => '', ], 'DisableSecurityModule' => [ 'title' => '', 'description' => 'The configuration for disabling the security module.', 'type' => 'object', 'properties' => [ 'Status' => ['title' => '', 'description' => 'The status switch for disabling the security module.', 'type' => 'string', 'example' => 'on'], ], 'example' => '', ], 'RequestBodyInspection' => [ 'title' => '', 'description' => 'The request body inspection configuration. Controls the deep packet inspection behavior of WAF for HTTP request bodies. After this feature is enabled, content-based matching rules such as SQL injection and XSS detection take effect on request bodies.'."\n" ."\n" .'This structure can contain the following fields:'."\n" .'- Id: The unique identifier of the built-in inspection rule.'."\n" .'- SizeLimit: The maximum size of the request body to inspect.'."\n" .'- Action: The action to take when the request body exceeds the size limit.', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'The request body inspection rule ID, which is the unique identifier of the built-in rule. When request body inspection is enabled, the server uses this ID to associate the matching logic of the built-in inspection rule. The valid values are based on the built-in rule list of WAF.', 'type' => 'integer', 'example' => '10000001', 'format' => 'int64'], 'SizeLimit' => ['title' => '', 'description' => 'The maximum size of the request body to inspect, in bytes.'."\n" ."\n" .'- If the request body is less than or equal to this value, the entire content is subject to WAF matching.'."\n" .'- If the request body exceeds this value, the action specified in the Action field is taken, such as inspecting only the first N bytes, rejecting the request, or allowing the request.'."\n" ."\n" .'> The valid value range and default value are determined by the WAF server-side configuration.', 'type' => 'string', 'example' => '16KB'], 'Action' => ['title' => '', 'description' => 'The action to take when the request body size exceeds SizeLimit.'."\n" ."\n" .'Common valid values (the complete list is determined by the server-side configuration):'."\n" .'- allow: allows the request without performing deep packet inspection on the portion that exceeds the limit.'."\n" ."\n" .'> The complete enumeration is determined by the WAF server-side configuration.', 'type' => 'string', 'example' => 'allow'], ], 'example' => '', ], ], 'example' => '', ], 'WafTimer' => [ 'title' => 'WAF定时器', 'description' => 'WAF定时器', 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'Scopes' => ['title' => '定时类型:永久生效(permanent/<空>)/时间段生效(periods)/weekly(周期生效)', 'description' => '定时类型:永久生效(permanent/<空>)/时间段生效(periods)/weekly(周期生效)。', 'visibility' => 'Public', 'type' => 'string', 'example' => 'permanent', 'backendName' => 'scopes'], 'Zone' => ['title' => '时区,不填则默认为UTC+00:00。
例:8表示东8区,-8表示西8区
范围:-12 - +14', 'description' => '时区,不填则默认为UTC+00:00。
例:8表示东8区,-8表示西8区
范围:-12 - +14。', 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int32', 'example' => '8', 'backendName' => 'zone'], 'Periods' => [ 'title' => '生效时间段', 'description' => '生效时间段。', 'visibility' => 'Public', 'type' => 'array', 'items' => [ 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'Start' => ['title' => '起始时间,值为RFC3339格式的UTC时间', 'description' => '起始时间,值为RFC3339格式的UTC时间。', 'visibility' => 'Public', 'type' => 'string', 'example' => '2025-01-01T00:00:00Z', 'backendName' => 'start'], 'End' => ['title' => '结束时间,值为RFC3339格式的UTC时间', 'description' => '结束时间,值为RFC3339格式的UTC时间。', 'visibility' => 'Public', 'type' => 'string', 'example' => '2025-01-01T01:00:00Z', 'backendName' => 'end'], ], 'extendType' => 'true', ], 'backendName' => 'periods', ], 'WeeklyPeriods' => [ 'title' => '每周生效时间段', 'description' => '每周生效时间段。', 'visibility' => 'Public', 'type' => 'array', 'items' => [ 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'Days' => ['title' => '周期,多个使用逗号分隔,1-7分别代表周一-周日。
例:周一,周三值为"1,3"', 'description' => '周期,多个使用逗号分隔,1-7分别代表周一-周日。
例:周一,周三值为"1,3"。', 'visibility' => 'Public', 'type' => 'string', 'example' => '1', 'backendName' => 'days'], 'DailyPeriods' => [ 'title' => '该周期内的生效时间', 'description' => '该周期内的生效时间。', 'visibility' => 'Public', 'type' => 'array', 'items' => [ 'visibility' => 'Public', 'type' => 'object', 'properties' => [ 'Start' => ['title' => '起始时间,格式为HH:mm:ss', 'description' => '起始时间,格式为HH:mm:ss。', 'visibility' => 'Public', 'type' => 'string', 'example' => '00:00:00', 'backendName' => 'start'], 'End' => ['title' => '结束时间,格式为HH:mm:ss', 'description' => '结束时间,格式为HH:mm:ss。', 'visibility' => 'Public', 'type' => 'string', 'example' => '01:00:00', 'backendName' => 'end'], ], 'extendType' => 'true', ], 'backendName' => 'dailyPeriods', ], ], 'extendType' => 'true', ], 'backendName' => 'weeklyPeriods', ], ], ], ], ], 'apis' => [ 'ActivateClientCertificate' => [ 'summary' => 'Activates the client based on the certificate ID.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238804', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The certificate ID, which can be obtained by calling the [ListClientCertificates](~~2852848~~) operation.'."\n", 'type' => 'string', 'required' => true, 'example' => 'babaded901474b9693acf530e0fb****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The website ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123', 'title' => ''], 'SiteName' => ['description' => 'The website name.'."\n", 'type' => 'string', 'example' => 'example.com ', 'title' => ''], 'Id' => ['description' => 'The certificate ID.'."\n", 'type' => 'string', 'example' => 'babaded901474b9693acf530e0fb****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Certificate.StatusError', 'errorMessage' => 'The status of the certificate is invalid.', 'description' => 'The specified certificate status is invalid.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Id.MissingParameter', 'errorMessage' => 'The parameter Id is required.', 'description' => 'The required parameter Id is missing.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'Certificate.NotFound', 'errorMessage' => 'The specified certificate does not exist.', 'description' => 'The specified certificate does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SiteId\\": 1234567890123,\\n \\"SiteName\\": \\"example.com \\",\\n \\"Id\\": \\"babaded901474b9693acf530e0fb****\\",\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\"\\n}","type":"json"}]', 'title' => 'ActivateClientCertificate', 'changeSet' => [ ['createdAt' => '2024-09-23T02:15:35.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ActivateClientCertificate'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:ActivateClientCertificate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'ActivateVersionManagement' => [ 'summary' => 'Enables version management. This allows a site to support multiple configuration versions and multiple deployment environments, providing more flexible management of site traffic and configuration.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239166', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~ListSites~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '11223***', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C370DAF1-C838-4288-A1A0-9A87633D2***', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'The current plan\'s quota of version management is insufficient. Please try to upgrade the plan.', 'description' => 'The version management quota of the current package is insufficient. Please try to upgrade the package version.'], ['errorCode' => 'Site.ServiceBusy', 'errorMessage' => 'This website is being configured. Try again later.', 'description' => 'This website is being configured. Try again later.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C370DAF1-C838-4288-A1A0-9A87633D2***\\"\\n}","type":"json"}]', 'title' => 'Enable site version management', 'description' => 'Prerequisites for enabling site version management:'."\n" ."\n" .'1. The site plan must include the version management quota item `version_management_available`, and its value must be `true`.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ActivateVersionManagement'], ], ], 'ramActions' => [], ], 'ApplyCertificate' => [ 'summary' => 'Applies for a free certificate.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238947', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'Domains', 'in' => 'query', 'schema' => ['description' => 'A comma-separated list of domain names.', 'type' => 'string', 'required' => true, 'example' => 'www.example.com,blog.example.com', 'title' => ''], ], [ 'name' => 'Type', 'in' => 'query', 'schema' => [ 'description' => 'The certificate type. Valid values: `lets_encrypt` for a Let\'s Encrypt certificate, `digicert_single` for a Digicert single-domain certificate, and `digicert_wildcard` for a Digicert wildcard certificate.', 'enumValueTitles' => ['digicert_wildcard' => 'digicert\\_wildcard', 'lets_encrypt' => 'lets\\_encrypt', 'digicert_single' => 'digicert\\_single'], 'type' => 'string', 'required' => false, 'example' => 'lets_encrypt', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response object.', 'type' => 'object', 'properties' => [ 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com ', 'title' => ''], 'TotalCount' => ['description' => 'The total number of certificates requested, which matches the number of domain names provided in the request.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''], 'Result' => [ 'description' => 'A list of application details for each free certificate.', 'type' => 'array', 'items' => [ 'description' => 'The details for a free certificate application.', 'type' => 'object', 'properties' => [ 'Domain' => ['description' => 'The certificate domain name.', 'type' => 'string', 'example' => '*.example.com ', 'title' => ''], 'Status' => ['description' => 'The certificate application status.', 'type' => 'string', 'example' => 'Applying', 'title' => ''], 'Id' => ['description' => 'The certificate ID.', 'type' => 'string', 'example' => '30000478', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '156A6B-677B1A-4297B7-9187B7-2B44792', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The specified site is not found.', 'description' => 'The site you specified does not exist. Please check whether the site you entered is correct.'], ['errorCode' => 'SiteNotActivated', 'errorMessage' => 'The site is not activated, the process is not allowed.', 'description' => 'The operation is not supported because the site is not activated.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InvalidParameter.Domains', 'errorMessage' => 'You have already submitted a certificate application for the domain name.', 'description' => 'You have already submitted a certificate application for the domain name.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'QuotaCheckFailed', 'errorMessage' => 'Failed to check free certificate Quota, please try again later.', 'description' => 'Failed to check free certificate Quota, please try again later.'], ['errorCode' => 'InvalidParameter.Type', 'errorMessage' => 'The specified Type parameter is invalid, please check and try again.', 'description' => 'The Type parameter you configured is incorrect. Please check and try again. Certificate application type support lets_encrypt, digicert_single, digicert_wildcard.'], ['errorCode' => 'QuotaExceed.RecordCount', 'errorMessage' => 'The maximum number of records has been reached. Delete some and try again or upgrade your plan.', 'description' => 'The maximum number of records has been reached. Delete some and try again or upgrade your plan.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ['errorCode' => 'QuotaExceeded', 'errorMessage' => 'The quota is exceeded.', 'description' => 'The quota is exceeded.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'ApplyCertificate', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ApplyCertificate'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:ApplyCertificate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SiteName\\": \\"example.com \\",\\n \\"TotalCount\\": 2,\\n \\"Result\\": [\\n {\\n \\"Domain\\": \\"*.example.com \\",\\n \\"Status\\": \\"Applying\\",\\n \\"Id\\": \\"30000478\\"\\n }\\n ],\\n \\"RequestId\\": \\"156A6B-677B1A-4297B7-9187B7-2B44792\\"\\n}","type":"json"}]', ], 'ApplyCustomHostnameCertificate' => [ 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239650', 'abilityTreeNodes' => ['FEATUREdcdn4DMKZ4'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'HostnameId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The ID of the SaaS domain name. Call the [ListCustomHostnames](~~3018667~~) operation to obtain the ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'title' => '', 'example' => '1234567890123'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The unique ID of the request. Alibaba Cloud generates this ID for each request.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F'."\n", 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'NoPermission', 'errorMessage' => 'You do not have permissions to access or operate on the resource.Contact your account administrator to attach the AliyunESAFullAccess policy to the current user.', 'description' => 'You do not have permissions to access or operate on the resource.Contact your account administrator to attach the AliyunESAFullAccess policy to the current user.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ], 404 => [ ['errorCode' => 'CustomHostname.NotFound', 'errorMessage' => 'The custom hostname does not exist. Modify it and try again.', 'description' => 'The custom hostname does not exist. Modify it and try again.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'ApplyCustomHostnameCertificate', 'summary' => 'Requests a new free certificate for a Software as a Service (SaaS) domain name. Call this operation only if the previous certificate request failed, or the current certificate is about to expire or has expired.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ApplyCustomHostnameCertificate'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:ApplyCustomHostnameCertificate', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\\\n\\"\\n}","type":"json"}]', 'translator' => 'machine', ], 'BatchCreateRecords' => [ 'summary' => 'Creates multiple DNS records in a batch. Multiple record types are supported.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239587', 'abilityTreeNodes' => ['FEATUREdcdnVFT29S'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'RecordList', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The list of DNS records to create.', 'type' => 'array', 'items' => [ 'description' => 'A single record object that contains the specific configuration of the record.', 'type' => 'object', 'properties' => [ 'RecordName' => ['description' => 'The record name.', 'type' => 'string', 'required' => true, 'example' => 'www.example.com', 'title' => ''], 'Type' => ['description' => 'The DNS type of the record.', 'type' => 'string', 'required' => true, 'example' => 'A/AAAA', 'title' => ''], 'Proxied' => ['description' => 'Specifies whether to enable proxied acceleration for the record. Only CNAME records and A/AAAA records support proxied acceleration. Valid values:'."\n" .'- **true**: Proxied acceleration is enabled.'."\n" .'- **false**: Proxied acceleration is disabled.', 'type' => 'boolean', 'required' => true, 'example' => 'true', 'title' => ''], 'SourceType' => ['description' => 'The origin type of the CNAME record. This parameter is required when you add a CNAME record. Valid values:'."\n" ."\n" .'- **OSS**: OSS origin.'."\n" .'- **S3**: S3 origin.'."\n" .'- **LB**: load balancing origin.'."\n" .'- **OP**: IPAM pool origin.'."\n" .'- **Domain**: common domain name origin.'."\n" ."\n" .'If this parameter is left empty or not specified, the default value is Domain, which indicates a common domain name origin.', 'type' => 'string', 'required' => false, 'example' => 'OSS', 'title' => ''], 'BizName' => ['description' => 'The business scenario for record acceleration. Valid values:'."\n" .'- **image_video**: video and image.'."\n" .'- **api**: API.'."\n" .'- **web**: web page.', 'type' => 'string', 'required' => false, 'example' => 'web', 'title' => ''], 'Data' => [ 'description' => 'The DNS information of the record. Different fields are required based on the record type.', 'type' => 'object', 'properties' => [ 'Usage' => ['description' => 'The usage identifier of the record. Value range: **0 to 255**. This parameter applies to SMIMEA and TLSA records.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], 'Fingerprint' => ['description' => 'The public key fingerprint of the record. This parameter applies to SSHFP records.', 'type' => 'string', 'required' => false, 'example' => 'abcdef1234567890', 'title' => ''], 'Priority' => ['description' => 'The priority of the record. Value range: **0 to 65535**. A smaller value indicates a higher priority. This parameter is required when you add MX, SRV, or URI records.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''], 'Port' => ['description' => 'The port of the record. Value range: **0 to 65535**. This parameter applies only to SRV records.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], 'Flag' => ['description' => 'The flag of the CAA record, which indicates its priority and processing method. Value range: **0 to 255**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '128', 'title' => ''], 'Algorithm' => ['description' => 'The encryption algorithm used by the record. Value range: **0 to 255**. This parameter applies to CERT and SSHFP records.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], 'Weight' => ['description' => 'The weight of the record. Value range: **0 to 65535**. This parameter applies to SRV and URI records.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], 'Type' => ['description' => 'The certificate type (for CERT records) or public key type (for SSHFP records) of the record.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], 'MatchingType' => ['description' => 'The algorithm policy used to match or verify certificates. Value range: **0 to 255**. This parameter applies to SMIMEA and TLSA records.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], 'Value' => ['description' => 'The record value or partial content. The meaning varies by record type:'."\n" .'- **A/AAAA**: the IP address.'."\n" .'- **CNAME**: the target domain name.'."\n" .'- **MX**: a valid target mail server domain name.'."\n" .'- **TXT**: a valid text string.'."\n" .'- **CAA**: a valid certification authority domain name.'."\n" .'- **SRV**: a valid target host domain name.'."\n" .'- **URI**: a valid URI string.', 'type' => 'string', 'required' => false, 'example' => 'example.com', 'title' => ''], 'KeyTag' => ['description' => 'The public key identifier of the record. Value range: **0 to 65535**. This parameter applies to CERT records.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], 'Tag' => ['description' => 'The tag of the CAA record, which indicates its specific type and purpose, such as issue, issuewild, or iodef.', 'type' => 'string', 'required' => false, 'example' => 'issue', 'title' => ''], 'Certificate' => ['description' => 'The public key certificate information of the record. This parameter applies to CERT, SMIMEA, and TLSA records.', 'type' => 'string', 'required' => false, 'example' => 'dGVzdGFkYWxrcw==', 'title' => ''], 'Selector' => ['description' => 'The type of certificate or public key used by the record. Value range: **0 to 255**. This parameter applies to SMIMEA and TLSA records.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], 'required' => true, 'example' => '{'."\n" .' "value":"2.2.2.2"'."\n" .'}', 'title' => '', ], 'Ttl' => ['description' => 'The time-to-live (TTL) of the record, in seconds. A value of 1 indicates that the TTL is set to automatic.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '60', 'title' => ''], 'AuthConf' => [ 'description' => 'The origin authentication information of the CNAME record.', 'type' => 'object', 'properties' => [ 'SecretKey' => ['description' => 'The SecretKey of the account to which the origin belongs. This parameter is required when the origin type is OSS and the authentication type is private cross-account read, or when the origin type is S3 and the authentication type is private read.', 'type' => 'string', 'required' => false, 'example' => 'VIxuvJSA2S03f******kp208dy5w7'."\n", 'title' => ''], 'Version' => ['description' => 'The signature algorithm version. This parameter is available when the origin type is S3 and the authentication type is private read. Valid values:'."\n" .'- **v2**'."\n" .'- **v4**'."\n" ."\n" .'Default value: v4.', 'type' => 'string', 'required' => false, 'example' => 'v4', 'title' => ''], 'Region' => ['description' => 'The region of the origin. This parameter is required when the origin type is S3. Obtain the region from the official S3 website.', 'type' => 'string', 'required' => false, 'example' => 'us-east-1'."\n", 'title' => ''], 'AuthType' => ['description' => 'The origin authentication type. Different origin types support different authentication types. The origin type refers to the SourceType parameter in this operation. When the origin type is OSS or S3, you must specify the authentication type. Valid values:'."\n" .'- **public**: public read. Select this value when the origin type is OSS or S3 and the origin allows public read access.'."\n" .'- **private**: private read. Select this value when the origin type is S3 and the origin allows only private read access.'."\n" .'- **private_same_account**: private same-account read. Select this value when the origin type is OSS, the origin is under the same Alibaba Cloud account, and the origin allows only private read access.'."\n" .'- **private_cross_account**: private cross-account read. Select this value when the origin type is OSS, the origin is under a different Alibaba Cloud account, and the origin allows only private read access.', 'type' => 'string', 'required' => false, 'example' => 'private', 'title' => ''], 'AccessKey' => ['description' => 'The AccessKey of the account to which the origin belongs. This parameter is required when the origin type is OSS and the authentication type is private cross-account read, or when the origin type is S3 and the authentication type is private read.', 'type' => 'string', 'required' => false, 'example' => 'u0Nkg5gBK*******QF5wvKMM504JUHt'."\n", 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => true, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response structure for the batch record creation operation.', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '2430E05E-1340-5773-B5E1-B743929F46F2', 'title' => ''], 'RecordResultList' => [ 'description' => 'The list of record creation results, including details of successfully and unsuccessfully created records.', 'type' => 'object', 'properties' => [ 'Success' => [ 'description' => 'The list of successfully created records.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'RecordName' => ['description' => 'The record name.', 'type' => 'string', 'example' => 'www.example.com', 'title' => ''], 'Proxied' => ['description' => 'Specifies whether to enable proxied acceleration for the record. Only CNAME records and A/AAAA records support proxied acceleration. Valid values:'."\n" .'- **true**: Proxied acceleration is enabled.'."\n" .'- **false**: Proxied acceleration is disabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Description' => ['description' => 'The description of the creation result.', 'type' => 'string', 'example' => 'success', 'title' => ''], 'RecordType' => ['description' => 'The DNS type of the record, such as **A/AAAA, CNAME, or TXT**.', 'type' => 'string', 'example' => 'A/AAAA', 'title' => ''], 'SourceType' => ['description' => 'The origin type of the CNAME record. This field is empty for other record types. Valid values:'."\n" .'- **OSS**: OSS origin.'."\n" .'- **S3**: S3 origin.'."\n" .'- **LB**: load balancing origin.'."\n" .'- **OP**: IPAM pool origin.'."\n" .'- **Domain**: common domain name origin.', 'type' => 'string', 'example' => 'OSS', 'title' => ''], 'Data' => [ 'description' => 'The DNS information of the record.', 'type' => 'object', 'properties' => [ 'Usage' => ['description' => 'The usage identifier of the record. Value range: **0 to 255**. This parameter applies to SMIMEA and TLSA records.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Fingerprint' => ['description' => 'The public key fingerprint of the record. This parameter applies to SSHFP records.', 'type' => 'string', 'example' => 'abcdef1234567890', 'title' => ''], 'Priority' => ['description' => 'The priority of the record. Value range: **0 to 65535**. A smaller value indicates a higher priority. This parameter applies to MX, SRV, and URI records.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'Port' => ['description' => 'The port of the record. Value range: **0 to 65535**. This parameter applies only to SRV records.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Flag' => ['description' => 'The flag of the record, which indicates its priority and processing method. This parameter applies to CAA records.', 'type' => 'integer', 'format' => 'int32', 'example' => '128', 'title' => ''], 'Algorithm' => ['description' => 'The encryption algorithm used by the record. Value range: **0 to 255**. This parameter applies to CERT and SSHFP records.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Weight' => ['description' => 'The weight of the record. Value range: **0 to 65535**. This parameter applies to SRV and URI records.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Type' => ['description' => 'The certificate type (for CERT records) or public key type (for SSHFP records) of the record.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'MatchingType' => ['description' => 'The algorithm policy used to match or verify certificates. Value range: **0 to 255**. This parameter applies to SMIMEA and TLSA records.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Value' => ['description' => 'The record value or partial content. This parameter is included in A/AAAA, CNAME, NS, MX, TXT, CAA, SRV, and URI records. The meaning varies by record type:'."\n" ."\n" .'- **A/AAAA**: the IP address. Separate multiple IP addresses with commas (,). At least one IPv4 address is required.'."\n" .'- **CNAME**: the target domain name.'."\n" .'- **NS**: the name server of the specified domain name.'."\n" .'- **MX**: a valid target mail server domain name.'."\n" .'- **TXT**: a valid text string.'."\n" .'- **CAA**: a valid certification authority domain name.'."\n" .'- **SRV**: a valid target host domain name.'."\n" .'- **URI**: a valid URI string.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], 'KeyTag' => ['description' => 'The public key identifier of the record. Value range: **0 to 65535**. This parameter applies to CERT records.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Tag' => ['description' => 'The tag of the CAA record, which indicates its specific type and purpose, such as issue, issuewild, or iodef.', 'type' => 'string', 'example' => 'issue', 'title' => ''], 'Certificate' => ['description' => 'The public key certificate information of the record. This parameter applies to CERT, SMIMEA, and TLSA records.', 'type' => 'string', 'example' => 'dGVzdGFkYWxrcw==', 'title' => ''], 'Selector' => ['description' => 'The type of certificate or public key used by the record. Value range: **0 to 255**. This parameter applies to SMIMEA and TLSA records.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], ], 'example' => '{"value":"1.1.1.1"}'."\n", 'title' => '', ], 'BizName' => ['description' => 'The business scenario for record acceleration. Valid values:'."\n" .'- **image_video**: video and image.'."\n" .'- **api**: API.'."\n" .'- **web**: web page.', 'type' => 'string', 'example' => 'web', 'title' => ''], 'RecordId' => ['description' => 'The record ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123', 'title' => ''], 'Ttl' => ['description' => 'The time-to-live (TTL) of the record, in seconds. A value of 1 indicates that the TTL is set to automatic.', 'type' => 'integer', 'format' => 'int32', 'example' => '60', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'Failed' => [ 'description' => 'The list of records that failed to be created.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'RecordName' => ['description' => 'The record name.', 'type' => 'string', 'example' => 'a.example.com', 'title' => ''], 'Proxied' => ['description' => 'Indicates whether proxied acceleration is enabled for the record. Only CNAME records and A/AAAA records support proxied acceleration. Valid values:'."\n" ."\n" .'- **true**: Proxied acceleration is enabled.'."\n" .'- **false**: Proxied acceleration is disabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Description' => ['description' => 'The result description.', 'type' => 'string', 'example' => 'The record name is invalid.', 'title' => ''], 'RecordType' => ['description' => 'The DNS type of the record, such as **A/AAAA, CNAME, or TXT**.', 'type' => 'string', 'example' => 'A/AAAA', 'title' => ''], 'SourceType' => ['description' => 'The origin type of the CNAME record. This field is empty for other record types. Valid values:'."\n" .'- **OSS**: OSS origin.'."\n" .'- **S3**: S3 origin.'."\n" .'- **LB**: load balancing origin.'."\n" .'- **OP**: IPAM pool origin.'."\n" .'- **Domain**: common domain name origin.', 'type' => 'string', 'example' => 'OSS', 'title' => ''], 'Data' => [ 'description' => 'The DNS information of the record, including record values and related properties for various record types.', 'type' => 'object', 'properties' => [ 'Usage' => ['description' => 'The usage identifier of the record. Value range: **0 to 255**. This parameter applies to SMIMEA and TLSA records.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Fingerprint' => ['description' => 'The public key fingerprint of the record. This parameter applies to SSHFP records.', 'type' => 'string', 'example' => 'abcdef1234567890', 'title' => ''], 'Priority' => ['description' => 'The priority of the record. Value range: **0 to 65535**. A smaller value indicates a higher priority. This parameter applies to MX, SRV, and URI records.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'Port' => ['description' => 'The port number of the record. This parameter applies only to SRV records.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Flag' => ['description' => 'The flag of the record, which indicates its priority and processing method. This parameter applies to CAA records.', 'type' => 'integer', 'format' => 'int32', 'example' => '128', 'title' => ''], 'Algorithm' => ['description' => 'The encryption algorithm used by the record. Value range: **0 to 255**. This parameter applies to CERT and SSHFP records.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Weight' => ['description' => 'The weight of the record. This parameter applies to SRV and URI records.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Type' => ['description' => 'The certificate type (for CERT records) or public key type (for SSHFP records) of the record.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'MatchingType' => ['description' => 'The algorithm policy used to match or verify certificates. Value range: **0 to 255**. This parameter applies to SMIMEA and TLSA records.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Value' => ['description' => 'The record value or partial content. This parameter is included in A/AAAA, CNAME, NS, MX, TXT, CAA, SRV, and URI records. The meaning varies by record type:'."\n" ."\n" .'- **A/AAAA**: the IP address. Separate multiple IP addresses with commas (,). At least one IPv4 address is required.'."\n" .'- **CNAME**: the target domain name.'."\n" .'- **NS**: the name server of the specified domain name.'."\n" .'- **MX**: a valid target mail server domain name.'."\n" .'- **TXT**: a valid text string.'."\n" .'- **CAA**: a valid certification authority domain name.'."\n" .'- **SRV**: a valid target host domain name.'."\n" .'- **URI**: a valid URI string.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], 'KeyTag' => ['description' => 'The public key identifier of the record. Value range: **0 to 65535**. This parameter applies to CERT records.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Tag' => ['description' => 'The tag of the CAA record, which indicates its specific type and purpose, such as issue, issuewild, or iodef.', 'type' => 'string', 'example' => 'issue', 'title' => ''], 'Certificate' => ['description' => 'The public key certificate information of the record. This parameter applies to CERT, SMIMEA, and TLSA records.', 'type' => 'string', 'example' => 'dGVzdGFkYWxrcw==', 'title' => ''], 'Selector' => ['description' => 'The type of certificate or public key used by the record. Value range: **0 to 255**. This parameter applies to SMIMEA and TLSA records.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], ], 'example' => '{"value":"2.2.2.2"}', 'title' => '', ], 'BizName' => ['description' => 'The business scenario for record acceleration. Valid values:'."\n" .'- **image_video**: video and image.'."\n" .'- **api**: API.'."\n" .'- **web**: web page.', 'type' => 'string', 'example' => 'web', 'title' => ''], 'RecordId' => ['description' => 'The record ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123', 'title' => ''], 'Ttl' => ['description' => 'The time-to-live (TTL) of the record, in seconds. A value of 1 indicates that the TTL is set to automatic.', 'type' => 'integer', 'format' => 'int32', 'example' => '60', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'TotalCount' => ['description' => 'The total number of records in the creation operation.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'QuotaExceed.RecordCount', 'errorMessage' => 'The maximum number of records has been reached. Delete some and try again or upgrade your plan.', 'description' => 'The maximum number of records has been reached. Delete some and try again or upgrade your plan.'], ['errorCode' => 'Site.ServiceBusy', 'errorMessage' => 'This website is being configured. Try again later.', 'description' => 'This website is being configured. Try again later.'], ['errorCode' => 'Record.Conflict', 'errorMessage' => 'The specified record content conflicts with existing records. Adjust your configurations based on the related product documentation.', 'description' => 'The specified record content conflicts with existing records. Adjust your configurations based on the related product documentation.'], ['errorCode' => 'SourceCircleExist', 'errorMessage' => 'The host record of the resource to be operated on is already the source station of another resource, or the source station of the current resource has been added as a host record. To avoid loopback, modify the host record or source station and retry.', 'description' => 'The host record of the resource to be operated on is already the source station of another resource, or the source station of the current resource has been added as a host record. To avoid loopback, modify the host record or source station and retry.'], ['errorCode' => 'InvalidParameter.RecordsExceedLimit', 'errorMessage' => 'The number of incoming records exceeds the maximum limit.', 'description' => 'The number of incoming records exceeds the maximum limit.'], ['errorCode' => 'QuotaExceed.WildcardRecordCount', 'errorMessage' => 'The number of wildcard records added by your current site has reached the quota limit. Please delete useless wildcard records or upgrade to the plan and try again.', 'description' => 'The number of wildcard records added by your current site has reached the quota limit. Please delete useless wildcard records or upgrade to the plan and try again.'], ['errorCode' => 'SameNameRecordsExceedLimit', 'errorMessage' => 'The maximum number of records with the same name added in one batch exceeds 5. Add records with the same name in batches or reduce the number of records with the same name added in one batch.', 'description' => 'The maximum number of records with the same name added in batches exceeds 5. Add records with the same name in batches or reduce the number of records with the same name added in batches.'], ['errorCode' => 'InvalidParameter.InvalidDSRecordName', 'errorMessage' => 'Please add/import an NS record with the same name before adding this DS record.', 'description' => 'Please add/import an NS record with the same name before adding this DS record'], ['errorCode' => 'InvalidParameter.InvalidBiz', 'errorMessage' => 'The incoming parameter value of the business type is empty or incorrect.', 'description' => 'The incoming parameter value of the business type is empty or incorrect.'], ['errorCode' => 'Record.RecordValueContainSourceInBlacklist', 'errorMessage' => 'The record value contains the blacklist address, and the details can be submitted for work order consultation.', 'description' => 'The record value contains the blacklist address, and the details can be submitted for work order consultation.'], ['errorCode' => 'InvalidParameter.InvalidRecordNameSuffix', 'errorMessage' => 'If you add other records, the suffix of the host record must be the same as the site name.', 'description' => 'If you add another record, the suffix of the host record must be the same as the site name. Please adjust and try again.'], ['errorCode' => 'InvalidParameter.RecordNameExceedLimit', 'errorMessage' => 'The length of the record name exceeds the maximum limit.', 'description' => 'The record name cannot exceed 200 characters.'], ['errorCode' => 'InvalidParameter.InvalidHostPolicy', 'errorMessage' => 'The host parameter in the origin fetch request is invalid.', 'description' => 'The host parameter in the origin fetch request is invalid.'], ['errorCode' => 'InvalidParameter.CnameSiteRecordUnsupport', 'errorMessage' => 'The current record type is not supported for a website connected by CNAME setup.', 'description' => 'You can only add A/AAAA and CNAME records to a website connected by CNAME setup.'], ['errorCode' => 'InvalidParameter.RecordCommentExceedLimit', 'errorMessage' => 'The number of incoming record comment exceeds the maximum limit.', 'description' => 'The record comment information is greater than 50 characters.'], ['errorCode' => 'QuotaExceed.WildCardRecord', 'errorMessage' => 'The number of wildcard records exceeds the plan quota. Contact the sales team to increase your quota.', 'description' => 'The number of wildcard records exceeds the plan quota. Contact the sales team to increase your quota.'], ['errorCode' => 'Record.AorAAAARecordValueContainInvalidIP', 'errorMessage' => 'The A/AAAA record value contains the invalid IP.', 'description' => 'When creating or editing an A/AAAA record, the record value contains an invalid IP.'], ['errorCode' => 'Record.AorAAAARecordValueIPExceedLimit', 'errorMessage' => 'The number of IP addresses exceeds the limit for the A/AAAA record.', 'description' => 'When creating or editing A/AAAA records, the number of IP addresses exceeds the limit. A host record only supports 8 IPv4 and 4 IPv6 IP addresses. Please adjust and try again.'], ['errorCode' => 'Record.CAARecordFlagExceedLimit', 'errorMessage' => 'The value of the flag parameter for a CAA record is out of range.', 'description' => 'The value of the flag parameter for a CAA record is out of range while creating or editing DNS record information.'], ['errorCode' => 'Record.CAARecordTagExceedLimit', 'errorMessage' => 'The CAA record tag has illegal characters other than issue, issuewild, and iodef.', 'description' => 'When creating or editing CAA records, illegal characters other than issue, issuewild, and iodef are passed in the tag value.'], ['errorCode' => 'Record.CERTRecordAlgorithmExceedLimit', 'errorMessage' => 'The value of the algorithm parameter for the CERT record is out of range.', 'description' => 'The value of the algorithm parameter for the CERT record is out of range while creating or editing DNS record information.'], ['errorCode' => 'Record.CERTRecordKeyTagExceedLimit', 'errorMessage' => 'The value of the keyTag parameter for a CERT record is out of range.', 'description' => 'The value of the keyTag parameter for a CERT record is out of range when creating or editing DNS record information.'], ['errorCode' => 'Record.CERTRecordTypeExceedLimit', 'errorMessage' => 'The CERT record type is out of range.', 'description' => 'The CERT record type parameter was out of range when creating or editing DNS record information.'], ['errorCode' => 'Record.CNameRecordValueCannotEqualExistedIPASource', 'errorMessage' => 'The CNAME record cannot be the origin of the added Layer 4 application. Check the values of other Layer 4 proxy records and try again.', 'description' => 'The CNAME record cannot be the origin of the added Layer 4 application. Check the values of other Layer 4 proxy records and try again.'], ['errorCode' => 'Record.CNameRecordValueCannotEqualExistedPoolSource', 'errorMessage' => 'The CNAME record cannot be the origin of the added source address pool. Check and try again.', 'description' => 'The CNAME record cannot be the origin of the added source address pool. Check and try again.'], ['errorCode' => 'Record.CNameRecordValueCannotEqualExistedRecordSource', 'errorMessage' => 'The CNAME record cannot be the origin of an added record. Check the record values of other records and try again.', 'description' => 'The CNAME record cannot be the origin of an added record. Check the record values of other records and try again.'], ['errorCode' => 'Record.CNameRecordValueCannotEqualOtherExistedIPARecord', 'errorMessage' => 'The record value of a CNAME record cannot be exactly the same as the name of another existing Layer 4 proxy record.', 'description' => 'The record value of a CNAME record cannot be exactly the same as the name of another existing Layer 4 proxy record.'], ['errorCode' => 'Record.CNameRecordValueCannotEqualOtherExistedRecord', 'errorMessage' => 'The record value of a CNAME record cannot be the same as the name of another existing CNAME record.', 'description' => 'The record value of a CNAME record cannot be the same as the name of another existing CNAME record.'], ['errorCode' => 'Record.CNameRecordValueCannotEqualHostRecord', 'errorMessage' => 'The record value of the CNAME record cannot be exactly the same as the host record.', 'description' => 'The record value of the CNAME record cannot be exactly the same as the host record. Please adjust and try again.'], ['errorCode' => 'Record.CNameRecordValueExceedLimit', 'errorMessage' => 'The CNAME record value cannot exceed 253 characters, please delete and try again.', 'description' => 'The record value cannot exceed 253 characters, please delete and try again.'], ['errorCode' => 'Record.CNameRecordValueInvalidDomainUnderline', 'errorMessage' => 'Record values (DNS-only records) generally start with an underscore, a lowercase letter a-z, and the numbers 0-9. The middle part of the record can be lowercase letters, numbers, or hyphens, and the length is between 0 and 61 characters.', 'description' => 'Record values (DNS-only records) generally start with an underscore, a lowercase letter a-z, and the numbers 0-9. The middle part of the record can be lowercase letters, numbers, or hyphens, and the length is between 0 and 61 characters.'], ['errorCode' => 'Record.CNameRecordValueInvalidRecordDomain', 'errorMessage' => 'Record values (records with agent acceleration enabled) must start with a lowercase letter a-z and numbers 0-9. The middle part of the record can be lowercase letters, numbers, or hyphens, and the length is between 0 and 61 characters.', 'description' => 'Record values (records with agent acceleration enabled) must start with a lowercase letter a-z and numbers 0-9. The middle part of the record can be lowercase letters, numbers, or hyphens, and the length is between 0 and 61 characters.'], ['errorCode' => 'Record.EmptyRecordValue', 'errorMessage' => 'The record value is empty, please fill it in correctly and try again.', 'description' => 'The record value is empty, please fill it in correctly and try again.'], ['errorCode' => 'Record.InvalidCertEncodeWithCERTRecord', 'errorMessage' => 'The certificate value of the CERT record is not base64-encoded.', 'description' => 'When you create or edit CERT record information, the certificate value of the CERT record is not base64-encoded.'], ['errorCode' => 'Record.InvalidFingerprintWithSSHFPRecord', 'errorMessage' => 'The SSHFP record fingerprint value is not hexadecimal encoded.', 'description' => 'When creating or editing SSHFP record information, the fingerprint value is not hexadecimal encoded.'], ['errorCode' => 'Record.InvalidIssueDataWithCAARecordTag', 'errorMessage' => 'The tag of a CAA record can only be a semicolon or a valid domain name separated by semicolons.', 'description' => 'When creating or editing CAA record information, the tag tag of a CAA record can only be a semicolon or a valid domain name separated by semicolons.'], ['errorCode' => 'Record.InvalidMailAddressWithCAARecordTag', 'errorMessage' => 'The CAA record tag is prefixed with mailto:, it must be followed by a legal email address.', 'description' => 'When creating or editing CAA record information, when Tag is iodef and Value is prefixed with mailto:, it must be followed by a legal email address.'], ['errorCode' => 'Record.InvalidSmimeaEncodeWithSMIMEARecord', 'errorMessage' => 'The certificate value of the SMIMEA record is not base64-encoded.', 'description' => 'When creating or editing SMIMEA record information, the certificate value of the SMIMEA record is not base64-encoded.'], ['errorCode' => 'Record.InvalidTslaEncodeWithTSLARecord', 'errorMessage' => 'The certificate value passed in is not hexadecimal encoded with TSLA record.', 'description' => 'When creating or editing TLSA record information, the certificate value passed in is not hexadecimal encoded.'], ['errorCode' => 'Record.InvalidURLWithURIRecord', 'errorMessage' => 'The URI record value must be a valid URL address.', 'description' => 'When creating or editing URI record information, the record value must be a valid URL address.'], ['errorCode' => 'Record.NoRecordNameConflictWithNSRecord', 'errorMessage' => 'No record name can conflict with an NS record name.', 'description' => 'No record name can conflict with an NS record name.'], ['errorCode' => 'Record.NSRecordCannotEqualSiteName', 'errorMessage' => 'An NS record with the exact same name as the site name is not allowed.', 'description' => 'Adding an NS record with the exact same name as the site name is not allowed.'], ['errorCode' => 'Record.OSSSourceInvalidAuthType', 'errorMessage' => 'The recorded OSS origin station authentication type is not supported.', 'description' => 'The recorded OSS origin station authentication type is not supported.'], ['errorCode' => 'Record.ParseJSONRecordValueFailed', 'errorMessage' => 'The JSON data format of the record data is incorrect. Please adjust and try again.', 'description' => 'The JSON data format of the record data is incorrect. Please adjust and try again.'], ['errorCode' => 'Record.PoolSourceNotExistPool', 'errorMessage' => 'If the source station type of the record is source address pool, the input source address pool does not exist.', 'description' => 'If the source station type of the record is source address pool, the input source address pool does not exist.'], ['errorCode' => 'Record.RecordNameConflictForSpecifiedRecordType', 'errorMessage' => 'The A/AAAA and CNAME records cannot have the same name.', 'description' => 'The A/AAAA and CNAME records cannot have the same name.'], ['errorCode' => 'Record.RecordNameConflictWithIPAName', 'errorMessage' => 'The record name cannot have the same name as the Layer 4 proxy record.', 'description' => 'When you create or edit DNS record information, the record name cannot have the same name as the Layer 4 proxy record.'], ['errorCode' => 'Record.RecordNameConflictWithLBName', 'errorMessage' => 'The record name cannot be the same as the Server Load Balancer record name.', 'description' => 'When creating or editing DNS record information, the record name cannot be the same as the Server Load Balancer record name.'], ['errorCode' => 'Record.RecordNameConflictWithNSRecord', 'errorMessage' => 'The NS record name cannot be the same as any other type of record name.', 'description' => 'When creating or editing DNS record information, the NS record name cannot be the same as any other type of record name.'], ['errorCode' => 'Record.RecordNameConflictWithPoolName', 'errorMessage' => 'The record name cannot be the same as the source address pool record name.', 'description' => 'When creating or editing DNS record information, the record name cannot be the same as the source address pool record name.'], ['errorCode' => 'Record.RecordNameInBlacklist', 'errorMessage' => 'The record name is in blacklist.', 'description' => 'The record name is in the blacklist and cannot be added.'], ['errorCode' => 'Record.S3SourceInvalidAuthRegion', 'errorMessage' => 'The recorded S3 origin belongs to a region that is not in the supported range.', 'description' => 'The recorded S3 origin belongs to a region that is not in the supported range.'], ['errorCode' => 'Record.S3SourceInvalidAuthType', 'errorMessage' => 'The recorded S3 origin authentication type is not supported.', 'description' => 'The recorded S3 origin authentication type is not supported.'], ['errorCode' => 'Record.S3SourceInvalidAuthVersion', 'errorMessage' => 'The version of the authentication signature algorithm of the S3 origin is not supported.', 'description' => 'The version of the authentication signature algorithm of the S3 origin is not supported.'], ['errorCode' => 'Record.SourceAccessKeyExceedLimit', 'errorMessage' => 'The character length of the AccessKey parameter value for the record source station is out of range.', 'description' => 'The character length of the AccessKey parameter value for the record source station is out of range.'], ['errorCode' => 'Record.SourceEmptyAK', 'errorMessage' => 'The AccessKey of the account to which the origin site belongs is empty.', 'description' => 'The AccessKey of the account to which the origin site belongs is empty.'], ['errorCode' => 'Record.SourceEmptyAuthConf', 'errorMessage' => 'The authentication information of the origin station is empty.', 'description' => 'The recorded authentication information of the origin station is empty.'], ['errorCode' => 'Record.SourceEmptySecretKey', 'errorMessage' => 'The SecretKey of the account to which the recorded origin site belongs is empty.', 'description' => 'The SecretKey of the account to which the recorded origin site belongs is empty.'], ['errorCode' => 'Record.SourceSecretKeyExceedLimit', 'errorMessage' => 'The character length of the SecretKey parameter value for the record source station is out of range.', 'description' => 'The character length of the SecretKey parameter value for the record source station is out of range.'], ['errorCode' => 'Record.SRVRecordInvalidRecordName', 'errorMessage' => 'SRV host record name is not valid. The SRV host record name must begin with an underscore (-) followed by a lowercase letter (a-z), a number (0-9), and a hyphen (-), followed by 1 arbitrary character, followed by an underscore (-) and a lowercase letter, number, or hyphen.', 'description' => 'SRV host record name is not valid. The SRV host record name must begin with an underscore (-), followed by a lowercase letter (a-z), number (0-9), hyphen (-), followed by any character, followed by an underscore (-) and a lowercase letter, number, or hyphen.'], ['errorCode' => 'Record.SRVRecordPortExceedLimit', 'errorMessage' => 'The SRV record port is out of range.', 'description' => 'When creating or editing DNS record information, the SRV record port filled in is out of range.'], ['errorCode' => 'Record.SSHFPRecordAlgorithmExceedLimit', 'errorMessage' => 'The algorithm parameter value for the SSHFP record is out of range.', 'description' => 'The algorithm parameter value for the SSHFP record is out of range while creating or editing DNS record information.'], ['errorCode' => 'Record.TTLExceedLimit', 'errorMessage' => 'The TTL parameter value for a record is out of range.', 'description' => 'The TTL parameter value for a record is out of range while creating or editing DNS record information.'], ['errorCode' => 'Record.TXTRecordValueExceedLimit', 'errorMessage' => 'The TXT record value cannot exceed 450 characters.', 'description' => 'When you create or edit DNS record information, the TXT record value cannot exceed 450 characters.'], ['errorCode' => 'Record.TypeExceedLimitWithSSHFPRecord', 'errorMessage' => 'The SSHFP record Type parameter value is out of range.', 'description' => 'The SSHFP record Type parameter value is out of range while creating or editing DNS record information.'], ['errorCode' => 'Record.UnmatchedRecordNameContainDoubleConsecutiveDot', 'errorMessage' => 'Illegal host record name. The host record cannot contain consecutive dot.', 'description' => 'Illegal host record name. The host record cannot contain consecutive dot.'], ['errorCode' => 'Record.UnmatchedRecordNameForbidStarSev', 'errorMessage' => 'Illegal host record name, SRV record name disallowed asterisk.', 'description' => 'Illegal host record name, SRV record name disallowed asterisk.'], ['errorCode' => 'Record.UnmatchedRecordNameInvalidATChar', 'errorMessage' => 'Illegal host record name. The at symbol can only appear at the top of the host record and can only be followed. Symbol, other strings are not allowed.', 'description' => 'Illegal host record name. The \'@\' symbol can only appear at the top of the host record and can only be followed. Symbol, other strings are not allowed.'], ['errorCode' => 'Record.UnmatchedRecordNameInvalidNamePrefixSuffix', 'errorMessage' => 'Illegal host record name. Host record values cannot start or end with a dot, a hyphens.', 'description' => 'Illegal host record name. Host record values cannot start or end with a dot, a hyphens.'], ['errorCode' => 'Record.UnmatchedRecordNameInvalidStartSymbol', 'errorMessage' => 'Illegal host record name. The asterisk is only allowed in the first place of the host record, and only the following dot is allowed after the asterisk.', 'description' => 'Illegal host record name. The asterisk is only allowed in the first place of the host record, and only the following dot is allowed after the asterisk.'], ['errorCode' => 'Record.UnmatchedRecordNameSeperateStringTooLarge', 'errorMessage' => 'Illegal host record name. The number of characters in each segment separated by dot cannot exceed 63.', 'description' => 'Illegal host record name. The number of characters in each segment separated by \'.\' cannot exceed 63.'], ['errorCode' => 'Record.UnsupportedSourceType', 'errorMessage' => 'The recorded source station type is not in the supported range.', 'description' => 'The recorded source station type is not in the supported range.'], ['errorCode' => 'Record.UnsupportedType', 'errorMessage' => 'The record type parameter is unsupported.', 'description' => 'The record type parameter is incorrect. Please check the record type parameter.'], ['errorCode' => 'Record.ValidProxiedForSpecifedRecordType', 'errorMessage' => 'Only A/AAAA and CNAME types support proxy acceleration.', 'description' => 'When creating or editing a record, proxy acceleration is enabled in the proxy state. Only A/AAAA and CNAME types support proxy acceleration.'], ['errorCode' => 'Record.RecordUsageExceedLimit', 'errorMessage' => 'The usage parameter value filled in is out of range.', 'description' => 'When creating or editing DNS record information, the usage parameter value filled in is out of range.'], ['errorCode' => 'Record.RecordSelectorExceedLimit', 'errorMessage' => 'The selector parameter value filled in is out of range.', 'description' => 'While creating or editing DNS record information, the selector parameter value filled in is out of range.'], ['errorCode' => 'Record.RecordMatchingTypeExceedLimit', 'errorMessage' => 'The matchingType parameter value filled in is out of range.', 'description' => 'While creating or editing DNS record information, the matchingType parameter value filled in is out of range.'], ['errorCode' => 'Record.RecordPriorityExceedLimit', 'errorMessage' => 'The record priority parameter value filled in is out of range.', 'description' => 'When creating or editing DNS record information, the record priority parameter value filled in is out of range.'], ['errorCode' => 'Record.RecordWeightExceedLimit', 'errorMessage' => 'The record weight parameter value filled in is out of range.', 'description' => 'When creating or editing DNS record information, the record weight parameter value filled in is out of range.'], ['errorCode' => 'Record.RecordNameConflictWithSameRecordType', 'errorMessage' => 'Record conflicts with an existing host record that has the same name and value.', 'description' => 'Record conflicts with an existing host record that has the same name and value.'], ['errorCode' => 'Record.UnmatchedRecordNameInvalidUnderLine', 'errorMessage' => 'The host record name contains an illegal underscore. The underscore is only supported at the beginning of the TXT, CNAME, MX, SRV, and NS records. Proxy acceleration cannot be enabled, and records can only be added in the DNS mode.', 'description' => 'The host record name contains an illegal underscore. The underscore is only supported at the beginning of the TXT, CNAME, MX, SRV, and NS records. Proxy acceleration cannot be enabled, and records can only be added in the DNS mode.'], ['errorCode' => 'InvalidParameter.CnameSiteRecordNoProxied', 'errorMessage' => 'A non-proxied record was added for a website using a CNAME setup.', 'description' => 'A non-proxied record was added for a website using a CNAME setup.'], ['errorCode' => 'Record.InvalidIodefDataWithCAARecordTag', 'errorMessage' => 'The CAA record Tag value cannot start with mailto: or http:// or https.', 'description' => 'When creating or editing CAA record information, the Tag value cannot start with mailto: http:// or mailto: https.'], ['errorCode' => 'Record.UnmatchedRecordNameOnlyContainSymbol', 'errorMessage' => 'The host record value cannot exist separately in various symbols, and can be added with any lowercase letters or numbers.', 'description' => 'The host record value cannot exist separately in various symbols, and can be added with any lowercase letters or numbers.'."\n"], ['errorCode' => 'Record.WildcardConflictForSpecifiedRecordType', 'errorMessage' => 'The A/AAAA,CNAME records cannot add all and asterisk prefixed records at the same time.', 'description' => 'A/AAAA,CNAME records cannot add all and asterisk prefixed records at the same time.'], ['errorCode' => 'Record.InvalidHTTPURLValueWithCAARecordTag', 'errorMessage' => 'The CAA record is prefixed with http:// or https://, it must be followed by a valid URL.', 'description' => 'When you create or edit a CAA record, if the Tag is `iodef` and the Value starts with `http://` or `https://`, it must be followed by a valid URL.'], ['errorCode' => 'Record.UnmatchedRecordNameOnlyRangeChars', 'errorMessage' => 'Illegal host record character. Only lowercase a-z, uppercase A- Z, digits 0-9, some special characters are supported as valid characters in host records.', 'description' => 'Illegal host record character. Only lowercase a-z, uppercase A- Z, digits 0-9, \'-\', \'_\', \'.\', \'*\', and \'@\' are supported as valid characters in host records \',\' @ \'.'."\n"], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2430E05E-1340-5773-B5E1-B743929F46F2\\",\\n \\"RecordResultList\\": {\\n \\"Success\\": [\\n {\\n \\"RecordName\\": \\"www.example.com\\",\\n \\"Proxied\\": true,\\n \\"Description\\": \\"success\\",\\n \\"RecordType\\": \\"A/AAAA\\",\\n \\"SourceType\\": \\"OSS\\",\\n \\"Data\\": {\\n \\"Usage\\": 0,\\n \\"Fingerprint\\": \\"abcdef1234567890\\",\\n \\"Priority\\": 10,\\n \\"Port\\": 0,\\n \\"Flag\\": 128,\\n \\"Algorithm\\": 0,\\n \\"Weight\\": 0,\\n \\"Type\\": 0,\\n \\"MatchingType\\": 0,\\n \\"Value\\": \\"example.com\\",\\n \\"KeyTag\\": 0,\\n \\"Tag\\": \\"issue\\",\\n \\"Certificate\\": \\"dGVzdGFkYWxrcw==\\",\\n \\"Selector\\": 0\\n },\\n \\"BizName\\": \\"web\\",\\n \\"RecordId\\": 1234567890123,\\n \\"Ttl\\": 60\\n }\\n ],\\n \\"Failed\\": [\\n {\\n \\"RecordName\\": \\"a.example.com\\",\\n \\"Proxied\\": true,\\n \\"Description\\": \\"The record name is invalid.\\",\\n \\"RecordType\\": \\"A/AAAA\\",\\n \\"SourceType\\": \\"OSS\\",\\n \\"Data\\": {\\n \\"Usage\\": 0,\\n \\"Fingerprint\\": \\"abcdef1234567890\\",\\n \\"Priority\\": 10,\\n \\"Port\\": 0,\\n \\"Flag\\": 128,\\n \\"Algorithm\\": 0,\\n \\"Weight\\": 0,\\n \\"Type\\": 0,\\n \\"MatchingType\\": 0,\\n \\"Value\\": \\"example.com\\",\\n \\"KeyTag\\": 0,\\n \\"Tag\\": \\"issue\\",\\n \\"Certificate\\": \\"dGVzdGFkYWxrcw==\\",\\n \\"Selector\\": 0\\n },\\n \\"BizName\\": \\"web\\",\\n \\"RecordId\\": 1234567890123,\\n \\"Ttl\\": 60\\n }\\n ],\\n \\"TotalCount\\": 20\\n }\\n}","type":"json"}]', 'title' => 'Batch create DNS records', 'description' => 'This API operation allows you to create or update multiple DNS records at a time. It is suitable for scenarios that require managing a large number of DNS configurations. Supported record types include but are not limited to A/AAAA, CNAME, NS, MX, TXT, CAA, SRV, and URI. Detailed configuration items are provided to meet specific requirements, such as Priority, Flag, Tag, and Weight. In addition, for specific record types such as CERT, SSHFP, SMIMEA, and TLSA, advanced settings such as certificate information and encryption algorithms are supported.'."\n" ."\n" .'Successfully and unsuccessfully processed records are listed separately in the response, so that you can identify which records are processed, which records failed, and the failure reasons.', 'changeSet' => [ ['createdAt' => '2025-06-10T08:19:05.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-02-18T05:59:13.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-11-12T05:57:29.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2024-10-11T06:13:39.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-24T08:28:18.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T06:13:42.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1', 'countWindow' => 1, 'regionId' => '*', 'api' => 'BatchCreateRecords'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:BatchCreateRecords', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'BatchCreateWafRules' => [ 'summary' => 'Batch creates rules in a specified WAF phase. You can create multiple rules at a time and configure shared settings for these rules.', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239658', 'abilityTreeNodes' => ['FEATUREdcdnBQ0J3E', 'FEATUREdcdn1OLUH8'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1'], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. For sites with version management enabled, you can use this parameter to specify the site version on which the configuration takes effect. The default value is 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'Phase', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The WAF rule execution phase. This **batch operation supports only** the following two phases. For other phases, use the single-rule operations `CreateWafRule` or `UpdateWafRule`:'."\n" .'- `http_anti_scan`: scan protection rules'."\n" .'- `http_bot`: advanced mode bots'."\n" ."\n" .'> Note: The `http_anti_scan` and `http_bot` phases **support only batch creation**. The single-rule operation `CreateWafRule` does not accept these two values. Conversely, other phases such as `http_custom` and `http_whitelist` can be created only by using single-rule operations and cannot use this batch operation.'."\n" ."\n" .'**Required constraint**: Although this parameter is marked as optional (required: false) in the specification, it is **required** when you call this batch operation. If this parameter is not specified, the service returns `InvalidParameter(400)`.'."\n" ."\n" .'**Plan prerequisite**: `http_anti_scan` requires the site to have a **high or higher plan**. Calling this operation with a basic plan returns `Phase.HttpAntiScan.NotSupport`. Verify the site plan before calling this operation.', 'type' => 'string', 'example' => 'http_anti_scan', 'required' => false], ], [ 'name' => 'RulesetId', 'in' => 'formData', 'schema' => ['description' => 'The ID of the WAF ruleset. You can call the [ListWafRulesets](~~2878359~~) operation to obtain the ruleset ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'minimum' => '1', 'example' => '10000001', 'title' => ''], ], [ 'name' => 'Shared', 'in' => 'formData', 'style' => 'json', 'schema' => ['title' => '', 'description' => 'The shared configuration for multiple rules. Specifies the common properties of multiple rules.'."\n" ."\n" .'**Conditionally required**: Although this parameter is marked as optional (required: false) in the specification, it is **required** when `Phase=http_anti_scan`. If this parameter is not specified, the service returns `InvalidParameter(400)`.'."\n" ."\n" .'**Subfield requirements**: In the `http_anti_scan` phase, Shared must include shared fields such as `Name` (rule name) and `Action` (rule action). For other phases, the required subfields of Shared vary depending on the specific phase.', '$ref' => '#/components/schemas/WafBatchRuleShared', 'required' => false, 'example' => ''], ], [ 'name' => 'Configs', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The list of rule configurations. Specifies the detailed configuration for each rule.'."\n" ."\n" .'**Required subfields for each phase** (applicable only to the two phases supported by this batch operation):'."\n" ."\n" .'- `http_anti_scan`: You must specify `Type` and at least one of `ManagedList` or `RateLimit`.'."\n" .'- `http_bot`: You must specify the advanced mode bots configuration. The subfields are defined in the `WafRuleConfig` data structure.'."\n" ."\n" .'> Note: Other phases such as `http_custom` and `http_whitelist` cannot use this batch operation. Use the single-rule operation `CreateWafRule` instead. The subfield constraints are described in the single-rule operation documentation.'."\n" ."\n" .'> If `Configs` is not specified or required subfields are missing, the service returns `InvalidParameter(400)` or `Rule.Config.Malformed`.', 'type' => 'array', 'items' => ['description' => 'The rule configuration.', '$ref' => '#/components/schemas/WafRuleConfig', 'required' => false, 'title' => '', 'example' => ''], 'required' => false, 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'RulesetId' => ['description' => 'The ID of the WAF ruleset. You can call the [ListWafRulesets](~~2878359~~) operation to obtain the ruleset ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '10000001', 'title' => ''], 'Ids' => [ 'description' => 'The IDs of the WAF rules. You can call the [ListWafRules](~~2878257~~) operation to obtain the rule IDs.', 'type' => 'array', 'items' => ['description' => 'The IDs of the WAF rules. You can call the [ListWafRules](~~2878257~~) operation to obtain the rule IDs.', 'type' => 'integer', 'format' => 'int64', 'example' => '20000001', 'title' => ''], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ], 403 => [ ['errorCode' => '%s.NotSupport', 'errorMessage' => 'The specified resource type %s is not supported.', 'description' => 'The specified resource type is not supported. To use this type of resource, please contact us.'], ['errorCode' => '%s.OverQuota', 'errorMessage' => 'The quantity of %s exceeds the quota.', 'description' => 'The amount of this resource exceeds the quota. If you need to apply for more quota, please contact us.'], ['errorCode' => '%s.WrongValueMatched', 'errorMessage' => 'The value of specified parameter %s can not pass the matching check.', 'description' => 'The value of the specified parameter can not pass the matching check. If you determine that you need to use this parameter value, please contact us.'], ['errorCode' => 'Rule.Config.Malformed', 'errorMessage' => 'The format of the rule configuration is invalid.Check the configuration for syntax errors or structural inconsistencies and correct them to meet the requirements.', 'description' => 'The format of the rule configuration is invalid.Check the configuration for syntax errors or structural inconsistencies and correct them to meet the requirements.'], ['errorCode' => 'Rule.Config.Noncompliance', 'errorMessage' => 'The specified rule configuration does not meet the compliance requirements.Check and adjust your configurations.', 'description' => 'The specified rule configuration does not meet the compliance requirements.Check and adjust your configurations.'], ['errorCode' => 'Ruleset.Name.AlreadyExists', 'errorMessage' => 'The specified rule set name already exists.Try again with a unique name or modify the existing rule set name.', 'description' => 'The specified rule set name already exists.Try again with a unique name or modify the existing rule set name.'], ['errorCode' => 'Site.NotExist', 'errorMessage' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.', 'description' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.'], ['errorCode' => 'Expression.Invalid', 'errorMessage' => 'The specified expression is invalid: %s.', 'description' => 'The specified expression is invalid.'], ['errorCode' => 'Ruleset.NotExist', 'errorMessage' => 'The specified rule set does not exist or has not been registered in the system.Check whether the specified rule set identifier is valid and matches a rule set that has been correctly defined and maintained by the system\'s rule set registry.If you want to add a new rule set, make sure that the creation and registration process is complete to bring the rule set into effect.', 'description' => 'The specified rule set does not exist or has not been registered in the system.Check whether the specified rule set identifier is valid and matches a rule set that has been correctly defined and maintained by the system\'s rule set registry.If you want to add a new rule set, make sure that the creation and registration process is complete to bring the rule set into effect.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"RulesetId\\": 10000001,\\n \\"Ids\\": [\\n 20000001\\n ]\\n}","type":"json"}]', 'title' => 'Batch create WAF rules', 'changeSet' => [ ['createdAt' => '2025-04-17T07:08:14.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-09-25T07:02:52.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T06:13:38.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'BatchCreateWafRules'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:BatchCreateWafRules', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'BatchDeleteKv' => [ 'summary' => 'Delete key-value pairs in bulk from a specified namespace.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239149', 'abilityTreeNodes' => ['FEATUREdcdnGMYWU5'], ], 'parameters' => [ [ 'name' => 'Namespace', 'in' => 'query', 'schema' => ['description' => 'Name specified when you call [CreateKvNamespace](~~2850317~~).', 'type' => 'string', 'title' => '', 'required' => true, 'example' => 'test_namespace'], ], [ 'name' => 'Keys', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'List of keys to delete in bulk. You can delete up to 10,000 keys.', 'type' => 'array', 'items' => ['description' => 'Name of the key to delete.', 'type' => 'string', 'required' => false, 'example' => 'test_key1', 'title' => ''], 'required' => true, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Response schema', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'ID of the request.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F'], 'FailKeys' => [ 'description' => 'List of keys that failed to delete.', 'type' => 'array', 'items' => ['description' => 'Name of a key that failed to delete.', 'type' => 'string', 'example' => 'test_key1', 'title' => ''], 'title' => '', 'example' => '', ], 'SuccessKeys' => [ 'description' => 'List of keys that deleted successfully.', 'type' => 'array', 'items' => ['description' => 'Name of a key that deleted successfully.', 'type' => 'string', 'example' => 'test_key2', 'title' => ''], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidAccount.Malformed', 'errorMessage' => 'The specified account is invalid.', 'description' => 'The account number is not entered correctly, for example, the input is empty.'], ['errorCode' => 'InvalidNameSpace.Malformed', 'errorMessage' => 'The specified namespace is invalid.', 'description' => 'The bucket name is entered incorrectly, such as an empty string.'], ['errorCode' => 'InvalidKey.Malformed', 'errorMessage' => 'The specified key is invalid.', 'description' => 'Key name input error, such as entering an empty string.'], ['errorCode' => 'InvalidKey.ExceedsMaximum', 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', 'description' => 'The length of the requested key is too large.'], ['errorCode' => 'InvalidValue.ExceedsMaximum', 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', 'description' => 'The value deposited is too large.'], ], 403 => [ ['errorCode' => 'InvalidKey.ExceedsCapacity', 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', 'description' => 'The capacity of the storage space exceeds the limit.'], ['errorCode' => 'Unauthorized.InvalidParameters', 'errorMessage' => 'The specified authentication parameters are invalid.', 'description' => 'Authentication parameter input error.'], ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'InvalidAccount.NotFound', 'errorMessage' => 'The specified account does not exist.', 'description' => 'The specified account does not exist.'], ['errorCode' => 'InvalidNameSpace.NotFound', 'errorMessage' => 'The specified namespace does not exist.', 'description' => ''], ['errorCode' => 'InvalidKey.NotFound', 'errorMessage' => 'The specified key does not exist.', 'description' => 'The specified key-value pair does not exist.'], ], 406 => [ ['errorCode' => 'InvalidNameSpace.Duplicate', 'errorMessage' => 'The specified namespace already exists.', 'description' => 'Specified storage space'], ['errorCode' => 'InvalidNameSpace.QuotaFull', 'errorMessage' => 'The maximum number of namespaces is exceeded.', 'description' => 'The number of storage spaces exceeds the capacity limit.'], ], 429 => [ ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests are submitted.', 'description' => 'Submissions are too frequent, please try again later'], ['errorCode' => 'TooQuickRequests', 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', 'description' => 'The modification or deletion of key-value pairs is too frequent.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'BatchDeleteKv', 'changeSet' => [ ['createdAt' => '2024-09-20T13:49:27.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1', 'countWindow' => 1, 'regionId' => '*', 'api' => 'BatchDeleteKv'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:BatchDeleteKv', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\",\\n \\"FailKeys\\": [\\n \\"test_key1\\"\\n ],\\n \\"SuccessKeys\\": [\\n \\"test_key2\\"\\n ]\\n}","type":"json"}]', ], 'BatchDeleteKvWithHighCapacity' => [ 'summary' => 'Batch deletes key-value pairs from a specified KV namespace based on a specified list of key names. The maximum request body size is 100 MB.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239122', 'abilityTreeNodes' => ['FEATUREdcdnGMYWU5'], ], 'parameters' => [ [ 'name' => 'Namespace', 'in' => 'query', 'schema' => ['description' => 'The namespace name specified when you called [CreateKvNamespace](~~2850317~~).', 'type' => 'string', 'title' => '', 'required' => true, 'example' => 'test_namespace'], ], [ 'name' => 'Url', 'in' => 'query', 'schema' => ['description' => 'The download URL that contains the key-value pairs to be batch deleted, such as an OSS download URL with read permissions.'."\n" ."\n" .'- When you call this operation by using the SDK, the SDK automatically uploads the content to OSS and passes the corresponding URL.'."\n" ."\n" .'- To call this operation directly, upload the JSON payload (in the same format as the BatchDeleteKv body: {"Namespace":"...","Keys":[...]}) to an OSS bucket and generate a signed HTTPS GET URL.', 'type' => 'string', 'required' => true, 'isFileTransferUrl' => true, 'example' => 'https://xxxobject.oss-cn-region.aliyuncs.com/9d91_xxxxxxxxxxx_158bb6e0f97c477791209bb46bd599f7', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F'], 'FailKeys' => [ 'description' => 'The list of keys that failed to be deleted.', 'type' => 'array', 'items' => ['description' => 'The key name that failed to be deleted.', 'type' => 'string', 'example' => 'test_key1', 'title' => ''], 'title' => '', 'example' => '', ], 'SuccessKeys' => [ 'description' => 'The list of keys that were successfully deleted.', 'type' => 'array', 'items' => ['description' => 'The key name that was successfully deleted.', 'type' => 'string', 'example' => 'test_key1', 'title' => ''], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidAccount.Malformed', 'errorMessage' => 'The specified account is invalid.', 'description' => 'The account number is not entered correctly, for example, the input is empty.'], ['errorCode' => 'InvalidNameSpace.Malformed', 'errorMessage' => 'The specified namespace is invalid.', 'description' => 'The bucket name is entered incorrectly, such as an empty string.'], ['errorCode' => 'InvalidKey.Malformed', 'errorMessage' => 'The specified key is invalid.', 'description' => 'Key name input error, such as entering an empty string.'], ['errorCode' => 'InvalidKey.ExceedsMaximum', 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', 'description' => 'The length of the requested key is too large.'], ['errorCode' => 'InvalidValue.ExceedsMaximum', 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', 'description' => 'The value deposited is too large.'], ], 403 => [ ['errorCode' => 'InvalidKey.ExceedsCapacity', 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', 'description' => 'The capacity of the storage space exceeds the limit.'], ['errorCode' => 'Unauthorized.InvalidParameters', 'errorMessage' => 'The specified authentication parameters are invalid.', 'description' => 'Authentication parameter input error.'], ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'InvalidAccount.NotFound', 'errorMessage' => 'The specified account does not exist.', 'description' => 'The specified account does not exist.'], ['errorCode' => 'InvalidNameSpace.NotFound', 'errorMessage' => 'The specified namespace does not exist.', 'description' => ''], ['errorCode' => 'InvalidKey.NotFound', 'errorMessage' => 'The specified key does not exist.', 'description' => 'The specified key-value pair does not exist.'], ], 406 => [ ['errorCode' => 'InvalidNameSpace.Duplicate', 'errorMessage' => 'The specified namespace already exists.', 'description' => 'Specified storage space'], ['errorCode' => 'InvalidNameSpace.QuotaFull', 'errorMessage' => 'The maximum number of namespaces is exceeded.', 'description' => 'The number of storage spaces exceeds the capacity limit.'], ], 429 => [ ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests are submitted.', 'description' => 'Submissions are too frequent, please try again later'], ['errorCode' => 'TooQuickRequests', 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', 'description' => 'The modification or deletion of key-value pairs is too frequent.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], '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' => 'Batch delete high-capacity key-value pairs from a KV namespace', 'description' => '>'."\n" .'Prerequisites for non-SDK calls: (1) You must have an OSS bucket with read and write permissions. (2) You must be able to generate a pre-signed HTTPS GET URL by using the OSS SDK or API. (3) The uploaded JSON file must use the same format as the BatchDeleteKv request body.>.'."\n" ."\n" .'This operation provides the same functionality as [BatchDeleteKv](~~2850204~~), but allows a larger request body. If the request body is small, use the [BatchDeleteKv](~~2850204~~) operation to reduce server-side processing time. This operation must be called by using an SDK. For example, when using the Golang SDK, call the BatchDeleteKvWithHighCapacityAdvance function.'."\n" .'```'."\n" .'func TestBatchDeleteWithHighCapacity() error {'."\n" .' // Initialize the configuration'."\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" .' // Construct the batch delete request for key-value pairs'."\n" .' namespace := "test_batch_put"'."\n" .' rawReq := BatchDeleteKvRequest{'."\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" .' // If the payload is larger than 2 MB, call the high-capacity operation to delete the key-value pairs'."\n" .' reqHighCapacity := BatchDeleteKvWithHighCapacityAdvanceRequest{'."\n" .' Namespace: &namespace,'."\n" .' UrlObject: bytes.NewReader(payload),'."\n" .' }'."\n" .' resp, err := cli.BatchDeleteKvWithHighCapacityAdvance(&reqHighCapacity, runtime)'."\n" .' if err != nil {'."\n" .' return err'."\n" .' }'."\n" .' return nil'."\n" .'}.', 'changeSet' => [ ['createdAt' => '2024-09-20T13:49:26.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1', 'countWindow' => 1, 'regionId' => '*', 'api' => 'BatchDeleteKvWithHighCapacity'], ], ], 'ramActions' => [], ], 'BatchGetExpressionFields' => [ 'summary' => 'Retrieves matching items for expressions in batches.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239608', 'abilityTreeNodes' => ['FEATUREdcdnWQK30N'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'required' => false], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The plan instance ID.', 'type' => 'string', 'required' => false, 'example' => 'esa-site-bitkull7uubk', 'title' => ''], ], [ 'name' => 'PlanNameEn', 'in' => 'query', 'schema' => ['description' => 'The plan name (in English).', 'type' => 'string', 'required' => false, 'example' => 'entranceplan', 'title' => ''], ], [ 'name' => 'Kind', 'in' => 'formData', 'schema' => ['description' => 'The type of the expression.', 'type' => 'string', 'required' => false, 'example' => 'wireshark', 'title' => ''], ], [ 'name' => 'Phase', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The WAF phase.', 'type' => 'string', 'example' => 'http_bot', 'required' => false], ], [ 'name' => 'Expressions', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'The list of expressions.', 'type' => 'array', 'items' => [ 'description' => 'The details of the expression.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'The sequence number of the expression.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], 'Expression' => ['description' => 'The content of the expression.', 'type' => 'string', 'required' => false, 'example' => 'ip.src eq 1.1.1.1', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'example' => 'http_bot', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'Fields' => [ 'description' => 'The list of matching fields.', 'type' => 'array', 'items' => [ 'description' => 'The details of the matching field.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'The ID of the expression, which corresponds to the ID in the request parameters.', 'type' => 'string', 'example' => '1', 'title' => ''], 'Fields' => [ 'description' => 'The list of matching fields for a single expression.', 'type' => 'array', 'items' => ['description' => 'The matching field value for a single expression.', 'type' => 'string', 'example' => 'ip.src', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], 403 => [ ['errorCode' => 'Expression.Invalid', 'errorMessage' => 'Expression syntax error or data type mismatched.', 'description' => 'Expression syntax error or data type mismatched.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"Fields\\": [\\n {\\n \\"Id\\": \\"1\\",\\n \\"Fields\\": [\\n \\"ip.src\\"\\n ]\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Batch retrieve matching fields for expressions', 'changeSet' => [ ['createdAt' => '2024-09-25T07:02:48.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T06:13:41.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'BatchGetExpressionFields'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:BatchGetExpressionFields', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'BatchPutKv' => [ 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239368', 'abilityTreeNodes' => ['FEATUREdcdnGMYWU5'], ], 'parameters' => [ [ 'name' => 'Namespace', 'in' => 'query', 'schema' => ['description' => 'The name specified when you call [CreateKvNamespace](~~2850317~~).', 'type' => 'string', 'title' => '', 'required' => true, 'example' => 'test_namespace'], ], [ 'name' => 'KvList', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'The list of key-value pairs to set. The total size cannot exceed 2 MB (2 × 1,000 × 1,000).', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The name of the key. The key can be up to 512 characters long and cannot contain spaces or backslashes (/).', 'type' => 'string', 'required' => true, 'example' => 'test_key', 'title' => ''], 'Value' => ['description' => 'The value of the key.', 'type' => 'string', 'required' => true, 'example' => 'test_value', 'title' => ''], 'Expiration' => ['description' => 'The expiration time. This is a UNIX timestamp in seconds and cannot be earlier than the current time. If you set both Expiration and ExpirationTtl, ExpirationTtl takes precedence.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1690081381', 'title' => ''], 'ExpirationTtl' => ['description' => 'The time-to-live (TTL). This is a relative time in seconds. If you set both Expiration and ExpirationTtl, ExpirationTtl takes precedence.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '3600', 'title' => ''], ], 'required' => true, 'description' => '', 'title' => '', 'example' => '', ], 'required' => true, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F'], 'FailKeys' => [ 'description' => 'A list of keys that failed to be written.', 'type' => 'array', 'items' => ['description' => 'The name of a key that failed to be written.', 'type' => 'string', 'example' => 'test_key1', 'title' => ''], 'title' => '', 'example' => '', ], 'SuccessKeys' => [ 'description' => 'A list of keys that were successfully written.', 'type' => 'array', 'items' => ['description' => 'The name of a key that was successfully written.', 'type' => 'string', 'example' => 'test_key2', 'title' => ''], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidAccount.Malformed', 'errorMessage' => 'The specified account is invalid.', 'description' => 'The account number is not entered correctly, for example, the input is empty.'], ['errorCode' => 'InvalidNameSpace.Malformed', 'errorMessage' => 'The specified namespace is invalid.', 'description' => 'The bucket name is entered incorrectly, such as an empty string.'], ['errorCode' => 'InvalidKey.Malformed', 'errorMessage' => 'The specified key is invalid.', 'description' => 'Key name input error, such as entering an empty string.'], ['errorCode' => 'InvalidKey.ExceedsMaximum', 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', 'description' => 'The length of the requested key is too large.'], ['errorCode' => 'InvalidValue.ExceedsMaximum', 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', 'description' => 'The value deposited is too large.'], ], 403 => [ ['errorCode' => 'InvalidKey.ExceedsCapacity', 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', 'description' => 'The capacity of the storage space exceeds the limit.'], ['errorCode' => 'Unauthorized.InvalidParameters', 'errorMessage' => 'The specified authentication parameters are invalid.', 'description' => 'Authentication parameter input error.'], ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'InvalidAccount.NotFound', 'errorMessage' => 'The specified account does not exist.', 'description' => 'The specified account does not exist.'], ['errorCode' => 'InvalidNameSpace.NotFound', 'errorMessage' => 'The specified namespace does not exist.', 'description' => ''], ['errorCode' => 'InvalidKey.NotFound', 'errorMessage' => 'The specified key does not exist.', 'description' => 'The specified key-value pair does not exist.'], ], 406 => [ ['errorCode' => 'InvalidNameSpace.Duplicate', 'errorMessage' => 'The specified namespace already exists.', 'description' => 'Specified storage space'], ['errorCode' => 'InvalidNameSpace.QuotaFull', 'errorMessage' => 'The maximum number of namespaces is exceeded.', 'description' => 'The number of storage spaces exceeds the capacity limit.'], ], 429 => [ ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests are submitted.', 'description' => 'Submissions are too frequent, please try again later'], ['errorCode' => 'TooQuickRequests', 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', 'description' => 'The modification or deletion of key-value pairs is too frequent.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'BatchPutKv', 'summary' => 'Sets multiple key-value pairs in a specified namespace.', 'changeSet' => [ ['createdAt' => '2024-09-20T13:49:26.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1', 'countWindow' => 1, 'regionId' => '*', 'api' => 'BatchPutKv'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:BatchPutKv', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\",\\n \\"FailKeys\\": [\\n \\"test_key1\\"\\n ],\\n \\"SuccessKeys\\": [\\n \\"test_key2\\"\\n ]\\n}","type":"json"}]', ], 'BatchPutKvWithHighCapacity' => [ 'summary' => 'Batch sets key-value pairs in a specified KV namespace based on a specified list of key names. The maximum request body size is 100 MB.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239294', 'abilityTreeNodes' => ['FEATUREdcdnGMYWU5'], ], 'parameters' => [ [ 'name' => 'Namespace', 'in' => 'query', 'schema' => ['description' => 'The namespace name specified when you called [CreateKvNamespace](~~2850317~~).', 'type' => 'string', 'title' => '', 'required' => true, 'example' => 'test_namespace'], ], [ 'name' => 'Url', 'in' => 'query', 'schema' => ['description' => 'A publicly accessible HTTP(S) URL that points to a JSON file containing the key-value pairs to be batch set. The server actively downloads the content from this URL.'."\n" ."\n" .'- If you use an SDK, the SDK automatically uploads the file and generates the URL.'."\n" ."\n" .'- In non-SDK scenarios, upload the JSON payload to any publicly accessible HTTP service and specify the URL.'."\n" ."\n" .'The file content pointed to by the URL must be in the following JSON format: {"Namespace":"","KvList":[{"Key":"","Value":""},...]}.If the URL content does not match this format, the API silently returns an empty SuccessKeys array.', 'type' => 'string', 'required' => true, 'isFileTransferUrl' => true, 'example' => 'https://xxxobject.oss-cn-region.aliyuncs.com/9d91_xxxxxxxxxxx_158bb6e0f97c477791209bb46bd599f7', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F'], 'FailKeys' => [ 'description' => 'The list of keys that failed to be written.', 'type' => 'array', 'items' => ['description' => 'The key name that failed to be written.', 'type' => 'string', 'example' => 'test_key1', 'title' => ''], 'title' => '', 'example' => '', ], 'SuccessKeys' => [ 'description' => 'The list of keys that were written.', 'type' => 'array', 'items' => ['description' => 'The key name that was written.', 'type' => 'string', 'example' => 'test_key2', 'title' => ''], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidAccount.Malformed', 'errorMessage' => 'The specified account is invalid.', 'description' => 'The account number is not entered correctly, for example, the input is empty.'], ['errorCode' => 'InvalidNameSpace.Malformed', 'errorMessage' => 'The specified namespace is invalid.', 'description' => 'The bucket name is entered incorrectly, such as an empty string.'], ['errorCode' => 'InvalidKey.Malformed', 'errorMessage' => 'The specified key is invalid.', 'description' => 'Key name input error, such as entering an empty string.'], ['errorCode' => 'InvalidKey.ExceedsMaximum', 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', 'description' => 'The length of the requested key is too large.'], ['errorCode' => 'InvalidValue.ExceedsMaximum', 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', 'description' => 'The value deposited is too large.'], ], 403 => [ ['errorCode' => 'InvalidKey.ExceedsCapacity', 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', 'description' => 'The capacity of the storage space exceeds the limit.'], ['errorCode' => 'Unauthorized.InvalidParameters', 'errorMessage' => 'The specified authentication parameters are invalid.', 'description' => 'Authentication parameter input error.'], ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'InvalidAccount.NotFound', 'errorMessage' => 'The specified account does not exist.', 'description' => 'The specified account does not exist.'], ['errorCode' => 'InvalidNameSpace.NotFound', 'errorMessage' => 'The specified namespace does not exist.', 'description' => ''], ['errorCode' => 'InvalidKey.NotFound', 'errorMessage' => 'The specified key does not exist.', 'description' => 'The specified key-value pair does not exist.'], ], 406 => [ ['errorCode' => 'InvalidNameSpace.Duplicate', 'errorMessage' => 'The specified namespace already exists.', 'description' => 'Specified storage space'], ['errorCode' => 'InvalidNameSpace.QuotaFull', 'errorMessage' => 'The maximum number of namespaces is exceeded.', 'description' => 'The number of storage spaces exceeds the capacity limit.'], ], 429 => [ ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests are submitted.', 'description' => 'Submissions are too frequent, please try again later'], ['errorCode' => 'TooQuickRequests', 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', 'description' => 'The modification or deletion of key-value pairs is too frequent.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\",\\n \\"FailKeys\\": [\\n \\"test_key1\\"\\n ],\\n \\"SuccessKeys\\": [\\n \\"test_key2\\"\\n ]\\n}","type":"json"}]', 'title' => 'Batch set large-capacity key-value pairs in a KV namespace', 'description' => 'This operation provides the same functionality as [BatchPutKv](~~2850203~~), but allows larger request bodies. If the request body is small, use the [BatchPutKv](~~2850203~~) operation to reduce server-side processing time. This operation must be called by using an SDK. For example, when using the Golang SDK, call the BatchPutKvWithHighCapacityAdvance function.'."\n" .'```'."\n" .'func TestBatchPutKvWithHighCapacity() error {'."\n" .' // Initialize the configuration'."\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" .' // Construct the key-value pairs for batch upload'."\n" .' namespace := "test_batch_put"'."\n" .' numKv := 10000'."\n" .' kvList := make([]*BatchPutKvRequestKvList, 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] = &BatchPutKvRequestKvList{'."\n" .' Key: &key,'."\n" .' Value: &value,'."\n" .' }'."\n" .' }'."\n" .' rawReq := BatchPutKvRequest{'."\n" .' Namespace: &namespace,'."\n" .' KvList: kvList,'."\n" .' }.'."\n" ."\n" .' payload, err := json.Marshal(rawReq)'."\n" .' if err != nil {'."\n" .' return err'."\n" .' }.'."\n" ."\n" .' // If the payload is larger than 2 MB, call the high-capacity operation to upload it'."\n" .' reqHighCapacity := BatchPutKvWithHighCapacityAdvanceRequest{'."\n" .' Namespace: &namespace,'."\n" .' UrlObject: bytes.NewReader(payload),'."\n" .' }'."\n" .' resp, err := cli.BatchPutKvWithHighCapacityAdvance(&reqHighCapacity, runtime)'."\n" .' if err != nil {'."\n" .' return err'."\n" .' }'."\n" .' return nil'."\n" .'}.', 'changeSet' => [ ['createdAt' => '2024-09-20T13:49:26.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1', 'countWindow' => 1, 'regionId' => '*', 'api' => 'BatchPutKvWithHighCapacity'], ], ], 'ramActions' => [], ], 'BatchUpdateWafRules' => [ 'summary' => 'Batch updates rules in a specified WAF ruleset. You can use this operation to update the configurations of multiple rules at a time.', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239643', 'abilityTreeNodes' => ['FEATUREdcdnBQ0J3E', 'FEATUREdcdn1OLUH8'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1'], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. For sites with version management enabled, you can use this parameter to specify the site version on which the configuration takes effect. The default value is 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'Phase', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The WAF rule execution phase. This **batch operation supports only** the following two phases. For other phases, use the single-rule operation `UpdateWafRule`:'."\n" .'- `http_anti_scan`: scan protection rules'."\n" .'- `http_bot`: advanced mode bots'."\n" ."\n" .'> Note: The `http_anti_scan` and `http_bot` phases **support only batch updates**. The single-rule operation `UpdateWafRule` does not accept these two values. Conversely, other phases such as `http_custom` and `http_whitelist` can be updated only by using the single-rule operation, not this batch operation.'."\n" ."\n" .'**Required constraint**: Although this parameter is marked as optional (required: false) in the specification, it is **required** when you call this batch operation. The server cannot determine the target ruleset without the Phase parameter and returns `InvalidParameter(400)` if it is not provided.', 'type' => 'string', 'example' => 'http_anti_scan', 'required' => false], ], [ 'name' => 'RulesetId', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The ID of the WAF ruleset. You can call the [ListWafRulesets](~~2878359~~) operation to obtain the ruleset ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '10000001', 'required' => false], ], [ 'name' => 'Shared', 'in' => 'formData', 'style' => 'json', 'schema' => ['title' => '', 'description' => 'The shared configuration for multiple rules. Specifies the common properties shared across multiple rules.'."\n" ."\n" .'**Conditionally required**: Although this parameter is marked as optional (required: false) in the specification, it is **required** when `Phase=http_anti_scan`. The server returns `InvalidParameter(400)` if it is not provided.'."\n" ."\n" .'**Subfield requirements**: When the phase is `http_anti_scan`, Shared must include the `Name` (rule name), `Expression` (match expression), and `Action` (rule action) shared fields. For other phases, the required subfields of Shared vary depending on the specific phase.', '$ref' => '#/components/schemas/WafBatchRuleShared', 'required' => false, 'example' => ''], ], [ 'name' => 'Configs', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The list of rule configurations. Specifies the detailed configuration for each rule.'."\n" ."\n" .'**Required subfields for each phase** (applicable only to the two phases supported by this batch operation):'."\n" ."\n" .'- `http_anti_scan`: You must provide `Type` and at least one of `ManagedList` or `RateLimit`.'."\n" .'- `http_bot`: You must provide the advanced mode bots configuration. The subfields are defined in the `WafRuleConfig` data structure.'."\n" ."\n" .'> Note: Other phases such as `http_custom` and `http_whitelist` cannot use this batch operation. Use the single-rule operation `UpdateWafRule` instead. The subfield constraints for those phases are described in the single-rule operation documentation.'."\n" ."\n" .'> Important: If `Configs` is missing or subfields are incomplete, the server returns `InvalidParameter(400)` or `Rule.Config.Malformed`.', 'type' => 'array', 'items' => ['title' => '', 'description' => 'The rule configuration.', '$ref' => '#/components/schemas/WafRuleConfig', 'required' => false, 'example' => ''], 'required' => false, 'example' => '10000001', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ], 403 => [ ['errorCode' => '%s.NotSupport', 'errorMessage' => 'The specified resource type %s is not supported.', 'description' => 'The specified resource type is not supported. To use this type of resource, please contact us.'], ['errorCode' => '%s.OverQuota', 'errorMessage' => 'The quantity of %s exceeds the quota.', 'description' => 'The amount of this resource exceeds the quota. If you need to apply for more quota, please contact us.'], ['errorCode' => '%s.WrongValueMatched', 'errorMessage' => 'The value of specified parameter %s can not pass the matching check.', 'description' => 'The value of the specified parameter can not pass the matching check. If you determine that you need to use this parameter value, please contact us.'], ['errorCode' => 'Rule.Config.Malformed', 'errorMessage' => 'The format of the rule configuration is invalid.Check the configuration for syntax errors or structural inconsistencies and correct them to meet the requirements.', 'description' => 'The format of the rule configuration is invalid.Check the configuration for syntax errors or structural inconsistencies and correct them to meet the requirements.'], ['errorCode' => 'Rule.Config.Noncompliance', 'errorMessage' => 'The specified rule configuration does not meet the compliance requirements.Check and adjust your configurations.', 'description' => 'The specified rule configuration does not meet the compliance requirements.Check and adjust your configurations.'], ['errorCode' => 'Ruleset.Name.AlreadyExists', 'errorMessage' => 'The specified rule set name already exists.Try again with a unique name or modify the existing rule set name.', 'description' => 'The specified rule set name already exists.Try again with a unique name or modify the existing rule set name.'], ['errorCode' => 'Site.NotExist', 'errorMessage' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.', 'description' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.'], ['errorCode' => 'Ruleset.NotExist', 'errorMessage' => 'The specified rule set does not exist or has not been registered in the system.Check whether the specified rule set identifier is valid and matches a rule set that has been correctly defined and maintained by the system\'s rule set registry.If you want to add a new rule set, make sure that the creation and registration process is complete to bring the rule set into effect.', 'description' => 'The specified rule set does not exist or has not been registered in the system.Check whether the specified rule set identifier is valid and matches a rule set that has been correctly defined and maintained by the system\'s rule set registry.If you want to add a new rule set, make sure that the creation and registration process is complete to bring the rule set into effect.'], ['errorCode' => 'Expression.Invalid', 'errorMessage' => 'The specified expression is invalid: %s.', 'description' => 'The specified expression is invalid.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\"\\n}","type":"json"}]', 'title' => 'Batch update WAF rules', 'changeSet' => [ ['createdAt' => '2025-04-17T07:08:14.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-09-25T07:02:52.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-23T06:19:49.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T06:13:37.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'BatchUpdateWafRules'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:BatchUpdateWafRules', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'BlockObject' => [ 'summary' => 'Blocks access to specified URLs.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238896', 'abilityTreeNodes' => ['FEATUREdcdnSU2QP6'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'Type', 'in' => 'query', 'schema' => [ 'description' => 'The type. Valid values:'."\n" ."\n" .'- **block**: blocks the URLs.'."\n" .'- **unblock**: unblocks the URLs.', 'enumValueTitles' => ['unblock' => 'Unblock.', 'block' => 'Block.'], 'type' => 'string', 'required' => true, 'enum' => ['block', 'unblock'], 'example' => 'block', 'title' => '', ], ], [ 'name' => 'Content', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The content to block.', 'type' => 'array', 'items' => ['description' => 'The URL.'."\n" .'>The hostname in the URL must be a DNS record name (the RecordName field, which supports wildcard records) returned by ListRecords(SiteId). If you use a hostname that is not configured, the error InvalidParameter.RecordNotBelongToSite(400) is returned. Call ListRecords to obtain the RecordName first, and then use the RecordName as the hostname to construct the URL.>.', 'type' => 'string', 'required' => false, 'example' => 'http://a.com/1.jpg', 'title' => ''], 'required' => true, 'title' => '', 'example' => '', ], ], [ 'name' => 'Maxage', 'in' => 'query', 'schema' => ['description' => 'The effective period of the block, in seconds. This parameter is required when the type is set to block.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '864000', 'minimum' => '600', 'example' => '864000', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9'], 'TaskId' => ['description' => 'The task ID. This ID is returned when you create a block task.', 'type' => 'string', 'example' => '15940956620', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingTimeParameter', 'errorMessage' => 'The StartTime and EndTime must be both specified.', 'description' => 'Please provide both a start time and an end time.'], ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'DomainNameOverLimit', 'errorMessage' => 'A maximum of 500 domains are supported for each request.', 'description' => 'Only 500 domain names are supported at a time. Please reduce the number of domain names to request again.'], ['errorCode' => 'InvalidTime', 'errorMessage' => 'The query time cannot exceed the last 3 days.', 'description' => 'The query time cannot exceed the last 3 days.'], ['errorCode' => 'MissingParameter.ObjectType', 'errorMessage' => 'The ObjectType parameter is required if DomainName or ObjectType is specified.', 'description' => 'Specify the ObjectType parameter.'], ['errorCode' => 'InvalidStationParameter', 'errorMessage' => 'The specified Station is invalid.', 'description' => 'The specified node parameter is invalid.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ['errorCode' => 'InvalidTaskId.Malformed', 'errorMessage' => 'The specified taskId is invalid.', 'description' => 'The specified task ID is invalid.'], ['errorCode' => 'InvalidParameters.InvalidUrls', 'errorMessage' => 'The specified urls are invalid.', 'description' => 'The requested URL parameter is invalid.'], ['errorCode' => 'InvalidParameters', 'errorMessage' => 'The specified parameters are invalid.', 'description' => 'Parameter is illegal.'], ['errorCode' => 'InvalidParameter.RecordNotBelongToSite', 'errorMessage' => 'The record name passed in does not belong to the current site.', 'description' => 'The record name passed in does not belong to the current site.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"TaskId\\": \\"15940956620\\"\\n}","type":"json"}]', 'title' => 'URL blocking', 'changeSet' => [ ['createdAt' => '2025-03-13T07:58:30.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-24T06:04:31.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'BlockObject'], ], ], 'ramActions' => [], ], 'CheckSiteName' => [ 'summary' => 'Checks whether a specified website name is available.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239613', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'SiteName', 'in' => 'query', 'schema' => ['description' => 'The website name.', 'type' => 'string', 'required' => true, 'example' => 'example.com', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-280B-72F8FD6DA2FE', 'title' => ''], 'Passed' => ['description' => 'Indicates whether the verification passed.'."\n" ."\n" .'- **true**'."\n" ."\n" .'- **false**', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Messeage' => ['description' => 'The verification message.', 'type' => 'string', 'example' => 'Site name is available.', 'title' => ''], 'Description' => ['description' => 'The description of the verification result. Valid values:'."\n" ."\n" .'- **success**: The verification is successful.'."\n" ."\n" .'- **Site.AlreadyExist**: The website domain name has already been added.'."\n" ."\n" .'- **Site.InvalidName**: Invalid website domain name.'."\n" ."\n" .'- **Site.SubSiteUnavailable**: Subdomains are not allowed.'."\n" ."\n" .'- **Site.InternalError**: An internal error occurs.', 'type' => 'string', 'example' => 'success', 'title' => ''], 'IsSubSite' => ['description' => 'Indicates whether a subdomain is specified. Valid values:'."\n" ."\n" .'- **true**'."\n" ."\n" .'- **false**', 'type' => 'boolean', 'example' => 'false', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'SubSiteUnavailable', 'errorMessage' => 'Subdomains are allowed only in Enterprise plans. Upgrade your plan to add a subdomain to ESA.', 'description' => 'Subdomains are allowed only in Enterprise plans. Upgrade your plan to add a subdomain to ESA.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-280B-72F8FD6DA2FE\\",\\n \\"Passed\\": true,\\n \\"Messeage\\": \\"Site name is available.\\",\\n \\"Description\\": \\"success\\",\\n \\"IsSubSite\\": false\\n}","type":"json"}]', 'title' => 'CheckSiteName', 'changeSet' => [ ['createdAt' => '2024-09-18T08:22:14.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CheckSiteName'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:CheckSiteName', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'CheckSiteProjectName' => [ 'summary' => 'Checks the name of a real-time log delivery task.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239055', 'abilityTreeNodes' => ['FEATUREdcdn9K10I1'], ], 'parameters' => [ [ 'name' => 'ProjectName', 'in' => 'query', 'schema' => ['description' => 'The name of the real-time log delivery task.'."\n", 'type' => 'string', 'required' => true, 'example' => 'user_log', 'title' => ''], ], [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '12312312213212', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '34DCBC8A-****-****-****-6DAA11D7DDBD', 'title' => ''], 'Check' => ['description' => 'Indicates whether the task name is valid. Valid values:'."\n" ."\n" .'* **true**'."\n" .'* **false**'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'ProjectName' => ['description' => 'The name of the real-time log delivery task.'."\n", 'type' => 'string', 'example' => 'dcdn_waf_userAccount_log', 'title' => ''], 'Description' => ['description' => 'The result description.'."\n", 'type' => 'string', 'example' => 'project name pass the check', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'RealtimeLogProjectExistError', 'errorMessage' => 'Realtime-log project name already exist.', 'description' => 'Real-time log entry name already exists'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"34DCBC8A-****-****-****-6DAA11D7DDBD\\",\\n \\"Check\\": true,\\n \\"ProjectName\\": \\"dcdn_waf_userAccount_log\\",\\n \\"Description\\": \\"project name pass the check\\"\\n}","type":"json"}]', 'title' => 'CheckSiteProjectName', 'changeSet' => [ ['createdAt' => '2024-09-27T05:57:03.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CheckSiteProjectName'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:CheckSiteProjectName', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'CheckUserProjectName' => [ 'summary' => 'Checks the name of a real-time log delivery task by account.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238730', 'abilityTreeNodes' => ['FEATUREdcdn9K10I1'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'ProjectName', 'in' => 'query', 'schema' => ['description' => 'The name of the real-time log delivery task.'."\n", 'type' => 'string', 'required' => true, 'example' => 'ali-dcdn-log-56', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '34DCBC8A-****-****-****-6DAA11D7DDBD', 'title' => ''], 'Check' => ['description' => 'Indicates whether the name is valid. Valid values:'."\n" ."\n" .'* **true**'."\n" .'* **false**'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'ProjectName' => ['description' => 'The name of the real-time log delivery task.'."\n", 'type' => 'string', 'example' => 'ali-dcdn-log-56', 'title' => ''], 'Description' => ['description' => 'The reason why the name passed or failed the check.'."\n", 'type' => 'string', 'example' => 'project name pass the check', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'RealtimeLogProjectExistError', 'errorMessage' => 'Realtime-log project name already exist.', 'description' => 'Real-time log entry name already exists'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ], 403 => [ ['errorCode' => 'EsaService.NotOpen', 'errorMessage' => 'ESA service has not opend.', 'description' => 'Edge Security Accelerator (ESA) is not turned on'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"34DCBC8A-****-****-****-6DAA11D7DDBD\\",\\n \\"Check\\": true,\\n \\"ProjectName\\": \\"ali-dcdn-log-56\\",\\n \\"Description\\": \\"project name pass the check\\"\\n}","type":"json"}]', 'title' => 'CheckUserProjectName', 'changeSet' => [ ['createdAt' => '2024-10-18T01:07:11.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-27T05:57:03.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CheckUserProjectName'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:CheckUserProjectName', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'CommitRoutineStagingCode' => [ 'summary' => 'Submits the staging (unstable) code of an Edge Routine and generates a production version.'."\n" .'Prerequisite: Before calling this API operation, call GetRoutineStagingCodeUploadInfo to obtain OSS upload credentials. Upload the code file through OSS POST. After the upload callback succeeds, call this API operation to submit the code.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239216', 'abilityTreeNodes' => ['FEATUREdcdn75UYDO'], ], 'parameters' => [ [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The name of the Edge Routine.', 'type' => 'string', 'required' => true, 'example' => 'test-routine1', 'title' => ''], ], [ 'name' => 'CodeDescription', 'in' => 'formData', 'schema' => ['description' => 'The description of the code version.', 'type' => 'string', 'required' => false, 'example' => 'description of this code ver', 'title' => ''], ], [ 'name' => 'DeployEnv', 'in' => 'formData', 'schema' => [ 'description' => 'The deployment environment. The environment variable configuration of the specified environment is used. If you do not specify this parameter, environment variables are not used.', 'enumValueTitles' => ['production' => 'production', 'staging' => 'staging'], 'type' => 'string', 'required' => false, 'example' => 'production', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395'], 'CodeVersion' => ['description' => 'The newly generated code version number.', 'type' => 'string', 'example' => '1710120201067203242', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'RoutineNotExist', 'errorMessage' => 'The routine name does not exist. Check the routine name and try again.', 'description' => 'The routine name does not exist. Check the routine name and try again.'], ['errorCode' => 'InternalOperationError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'CodeVersionNumberExceedQuotaLimit', 'errorMessage' => 'The maximum number of code versions in your plan has been reached. Check your plan quota and upgrade the plan to request a quota increase.', 'description' => 'The maximum number of code versions in your plan has been reached. Check your plan quota and upgrade the plan to request a quota increase.'], ['errorCode' => 'ParameterNotExist', 'errorMessage' => 'The specified parameter does not exist. Check your configurations and try again.', 'description' => 'The specified parameter does not exist. Check your configurations and try again.'], ['errorCode' => 'DependedByOthers', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'RoutineUserServiceStatusHalt', 'errorMessage' => 'Failed to update the configurations because you have overdue payments.', 'description' => 'Failed to update the configurations because you have overdue payments.'], ['errorCode' => 'UserOperationStatusIsLocked', 'errorMessage' => 'You are calling an another routine related api. Please wait for the api finished, and try again later.', 'description' => 'You are calling an another routine related api. Please wait for the api finished, and try again later.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395\\",\\n \\"CodeVersion\\": \\"1710120201067203242\\"\\n}","type":"json"}]', 'title' => 'Submit edge routine staging code', 'changeSet' => [ ['createdAt' => '2024-12-04T05:48:48.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-11-05T06:54:07.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CommitRoutineStagingCode'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CommitRoutineStagingCode', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'CreateCacheRule' => [ 'summary' => 'Create a Site Cache Configuration.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257996', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~ListSites~~) operation to get this ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '340035003106221', 'title' => ''], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The site configuration version. For sites with version management enabled, this parameter specifies the site version to which the configuration applies.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The rule name. This parameter is not required for a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable the rule. This parameter is not required for a global configuration. Valid values:'."\n" ."\n" .'- `on`: Enables the rule.'."\n" ."\n" .'- `off`: Disables the rule.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The content of the rule, which is a conditional expression used to match user requests. This parameter is not required for a global configuration.'."\n" ."\n" .'- To match all requests, set the value to `true`.'."\n" ."\n" .'- To match specific requests, set the value to a custom expression, such as `(http.host eq "video.example.com")`.', 'type' => 'string', 'required' => false, 'example' => '(http.host eq \\"video.example.com\\")'."\n", 'title' => ''], ], [ 'name' => 'BypassCache', 'in' => 'query', 'schema' => ['description' => 'The bypass cache mode. Valid values:'."\n" ."\n" .'- `cache_all`: Caches all requests.'."\n" ."\n" .'- `bypass_all`: Bypasses the cache for all requests.', 'type' => 'string', 'required' => false, 'example' => 'cache_all', 'title' => ''], ], [ 'name' => 'BrowserCacheMode', 'in' => 'query', 'schema' => ['description' => 'The browser cache mode. Valid values:'."\n" ."\n" .'- `no_cache`: Disables browser caching.'."\n" ."\n" .'- `follow_origin`: Follows the origin server cache policy.'."\n" ."\n" .'- `override_origin`: Overrides the origin server cache policy.', 'type' => 'string', 'required' => false, 'example' => 'follow_origin', 'title' => ''], ], [ 'name' => 'BrowserCacheTtl', 'in' => 'query', 'schema' => ['description' => 'The browser cache TTL, in seconds.', 'type' => 'string', 'required' => false, 'example' => '300', 'title' => ''], ], [ 'name' => 'EdgeCacheMode', 'in' => 'query', 'schema' => ['description' => 'The edge cache mode. Valid values:'."\n" ."\n" .'- `follow_origin`: Follows the origin server cache policy if one exists; otherwise, uses the default cache policy.'."\n" ."\n" .'- `no_cache`: Disables caching on the edge node.'."\n" ."\n" .'- `override_origin`: Overrides the origin server cache policy.'."\n" ."\n" .'- `follow_origin_bypass`: Follows the origin server cache policy if one exists; otherwise, the content is not cached.'."\n" ."\n" .'- `follow_origin_override`: Follows the origin server cache policy if one exists; otherwise, uses a custom edge cache TTL.', 'type' => 'string', 'required' => false, 'example' => 'follow_origin', 'title' => ''], ], [ 'name' => 'EdgeCacheTtl', 'in' => 'query', 'schema' => ['description' => 'The edge cache TTL, in seconds.', 'type' => 'string', 'required' => false, 'example' => '300', 'title' => ''], ], [ 'name' => 'EdgeStatusCodeCacheTtl', 'in' => 'query', 'schema' => ['description' => 'The status code cache TTL, in seconds.'."\n" ."\n" .'- You can set the cache TTL for a specific status code. For example, `404=10` caches responses with a 404 status code for 10 seconds.'."\n" ."\n" .'- You can set the cache TTL for a series of status codes, such as 4xx or 5xx. For example, `4xx=10` caches all responses that have a status code in the 4xx series for 10 seconds.'."\n" ."\n" .'- You can specify multiple status code TTLs, separated by commas (,).', 'type' => 'string', 'required' => false, 'example' => '5xx=0,404=10', 'title' => ''], ], [ 'name' => 'SortQueryStringForCache', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to sort query strings. This feature is disabled by default. Valid values:'."\n" ."\n" .'- `on`: Enables sorting.'."\n" ."\n" .'- `off`: Disables sorting.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'QueryStringMode', 'in' => 'query', 'schema' => ['description' => 'The mode for processing query strings when generating a cache key. Valid values:'."\n" ."\n" .'- `ignore_all`: Ignores all query strings.'."\n" ."\n" .'- `exclude_query_string`: Excludes specified query strings.'."\n" ."\n" .'- `reserve_all`: Includes all query strings (the default).'."\n" ."\n" .'- `include_query_string`: Includes only specified query strings.', 'type' => 'string', 'required' => false, 'example' => 'reserve_all', 'title' => ''], ], [ 'name' => 'QueryString', 'in' => 'query', 'schema' => ['description' => 'The query strings to include in or exclude from the cache key. Separate multiple query strings with spaces.', 'type' => 'string', 'required' => false, 'example' => 'example', 'title' => ''], ], [ 'name' => 'IncludeHeader', 'in' => 'query', 'schema' => ['description' => 'The headers to include in the cache key. Both the header names (case-insensitive) and their values are included. Separate multiple header names with spaces. The header names can contain the following characters:'."\n" ."\n" .'- Symbols: ! # $ % & \' \\* + - . ^ \\_ | \\~'."\n" ."\n" .'- Digits: 0-9'."\n" ."\n" .'- Letters: a-z (lowercase)', 'type' => 'string', 'required' => false, 'example' => 'headername1 headername2', 'title' => ''], ], [ 'name' => 'IncludeCookie', 'in' => 'query', 'schema' => ['description' => 'The cookies to include in the cache key. Both the cookie names (case-insensitive) and their values are included. Separate multiple cookie names with spaces. The cookie names can contain the following characters:'."\n" ."\n" .'- Symbols: ! # $ % & \' \\* + - . ^ \\_ | \\~'."\n" ."\n" .'- Digits: 0-9'."\n" ."\n" .'- Letters: a-z (lowercase)', 'type' => 'string', 'required' => false, 'example' => 'cookiename1 cookiename2', 'title' => ''], ], [ 'name' => 'CacheReserveEligibility', 'in' => 'query', 'schema' => ['description' => 'Specifies whether requests bypass cache reservation nodes during an origin fetch. Valid values:'."\n" ."\n" .'- `bypass_cache_reserve`: The request bypasses cache reservation.'."\n" ."\n" .'- `eligible_for_cache_reserve`: The request is eligible for cache reservation.', 'type' => 'string', 'required' => false, 'example' => 'bypass_cache_reserve', 'title' => ''], ], [ 'name' => 'CheckPresenceHeader', 'in' => 'query', 'schema' => ['description' => 'Specifies the headers to check for presence when generating a cache key. If a specified header is present in the request, its name (case-insensitive) is included in the cache key. To specify multiple headers, separate their names with spaces. The header names can contain the following characters:'."\n" ."\n" .'- Symbols: ! # $ % & \' \\* + - . ^ \\_ | \\~'."\n" ."\n" .'- Digits: 0-9'."\n" ."\n" .'- Letters: a-z (lowercase)', 'type' => 'string', 'required' => false, 'example' => 'headername1 headername2', 'title' => ''], ], [ 'name' => 'CheckPresenceCookie', 'in' => 'query', 'schema' => ['description' => 'Specifies the cookies to check for presence when generating a cache key. If a specified cookie is present in the request, its name (case-insensitive) is included in the cache key. To specify multiple cookies, separate their names with spaces. The cookie names can contain the following characters:'."\n" ."\n" .'- Symbols: ! # $ % & \' \\* + - . ^ \\_ | \\~'."\n" ."\n" .'- Digits: 0-9'."\n" ."\n" .'- Letters: a-z (lowercase)', 'type' => 'string', 'required' => false, 'example' => 'cookiename1 cookiename2', 'title' => ''], ], [ 'name' => 'UserDeviceType', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to include the client device type in the cache key. Valid values:'."\n" ."\n" .'- `on`: Includes the client device type.'."\n" ."\n" .'- `off`: Does not include the client device type.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'UserGeo', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to include the client\'s geographic location in the cache key. Valid values:'."\n" ."\n" .'- `on`: Includes the geographic location.'."\n" ."\n" .'- `off`: Does not include the geographic location.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'UserLanguage', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to include the client\'s language in the cache key. Valid values:'."\n" ."\n" .'- `on`: Includes the language.'."\n" ."\n" .'- `off`: Does not include the language.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'ServeStale', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to serve stale content. If enabled, an edge node can serve stale (expired) content when the origin server is unavailable. Valid values:'."\n" ."\n" .'- `on`: Enables serving stale content.'."\n" ."\n" .'- `off`: Disables serving stale content.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'AdditionalCacheablePorts', 'in' => 'query', 'schema' => ['description' => '- Specifies additional ports on which caching is enabled.'."\n" ."\n" .'- Valid values: 8880, 2052, 2082, 2086, 2095, 2053, 2083, 2087, and 2096.'."\n" ."\n" .'- You can specify multiple ports, separated by commas (,).', 'type' => 'string', 'required' => false, 'example' => '8880,2052,2086', 'title' => ''], ], [ 'name' => 'CacheDeceptionArmor', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable cache deception defense. This feature helps defend against web cache deception attacks. When this feature is enabled, only content that passes validation is cached. Valid values:'."\n" ."\n" .'- `on`: Enables the defense.'."\n" ."\n" .'- `off`: Disables the defense.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The execution order of the rule. A smaller number indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PostCache', 'in' => 'query', 'schema' => ['title' => 'Toggle for the Post cache feature.', 'description' => 'Specifies whether to enable POST request caching.', 'type' => 'string', 'example' => 'on', 'required' => false], ], [ 'name' => 'PostBodySizeLimit', 'in' => 'query', 'schema' => ['description' => 'The size limit for the request body when using POST request caching, in KB. Supported values range from 1 to 8. If unspecified, the default is 8 KB.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PostBodyCacheKey', 'in' => 'query', 'schema' => ['title' => 'Processing pattern for the cache key.', 'description' => 'Specifies how to process the request body when generating a cache key for POST requests. The following modes are supported:'."\n" ."\n" .'- `md5`: Calculates the MD5 hash of the request body and adds the hash value to the cache key.'."\n" ."\n" .'- `ignore`: Ignores the request body when the cache key is generated.', 'type' => 'string', 'example' => 'ignore', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Response object.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'."\n"], 'ConfigId' => ['description' => 'The ID of the configuration.', 'type' => 'integer', 'format' => 'int64', 'example' => '352816096987136', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'ConfExceedLimit', 'errorMessage' => 'The number of function configurations exceeds the limit. Please check the interface document to see the number of configurations that can be supported by a single function.', 'description' => 'The number of configuration items for the current function has exceeded the upper limit set by the system.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\\\n\\",\\n \\"ConfigId\\": 352816096987136\\n}","type":"json"}]', 'title' => 'Add Site Cache Configuration', 'changeSet' => [ ['createdAt' => '2025-03-27T02:58:48.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateCacheRule'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateCacheRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'CreateClientCertificate' => [ 'summary' => 'Issues a client certificate by using the ESA certificate authority (CA).', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239158', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'CSR', 'in' => 'formData', 'schema' => ['description' => 'The certificate signing request (CSR) content.', 'type' => 'string', 'required' => false, 'example' => '-----BEGIN CERTIFICATE REQUEST-----', 'title' => ''], ], [ 'name' => 'PkeyType', 'in' => 'formData', 'schema' => [ 'description' => 'The private key algorithm type. This parameter is required if CSR is not provided.', 'enumValueTitles' => ['RSA' => 'RSA', 'ECC' => 'ECC'], 'type' => 'string', 'required' => false, 'example' => 'RSA', 'title' => '', ], ], [ 'name' => 'ValidityDays', 'in' => 'formData', 'schema' => ['description' => 'The validity period of the certificate. Unit: days.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '365', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C370DAF1-C838-4288-A1A0-9A87633D248E', 'title' => ''], 'Id' => ['description' => 'The certificate ID.', 'type' => 'string', 'example' => 'babaded901474b9693acf530e0fb1d95', 'title' => ''], 'Status' => ['description' => 'The certificate status.', 'type' => 'string', 'example' => 'active', 'title' => ''], 'Certificate' => ['description' => 'The certificate content.', 'type' => 'string', 'example' => '-----BEGIN CERTIFICATE-----', 'title' => ''], 'PrivateKey' => ['description' => 'The private key of the certificate.', 'type' => 'string', 'example' => '-----BEGIN PRIVATE KEY-----', 'title' => ''], 'CommonName' => ['description' => 'The common name of the certificate.', 'type' => 'string', 'example' => 'www.example.com ', 'title' => ''], 'NotBefore' => ['description' => 'The start time of the certificate validity period.', 'type' => 'string', 'example' => '2023-12-01T02:12:49Z', 'title' => ''], 'NotAfter' => ['description' => 'The end time of the certificate validity period.', 'type' => 'string', 'example' => '2024-12-01T02:12:49Z', 'title' => ''], 'Issuer' => ['description' => 'The certification authority that issued the certificate.', 'type' => 'string', 'example' => 'ESA CA', 'title' => ''], 'SerialNumber' => ['description' => 'The certificate serial number.', 'type' => 'string', 'example' => 'babaded901474b9693acf530e0fb1daa', 'title' => ''], 'FingerprintSha256' => ['description' => 'The SHA-256 fingerprint of the certificate.', 'type' => 'string', 'example' => '1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456aca66', 'title' => ''], 'SignatureAlgorithm' => ['description' => 'The signature algorithm of the certificate.', 'type' => 'string', 'example' => 'SHA256-RSA', 'title' => ''], 'ValidityDays' => ['description' => 'The validity period of the certificate.', 'type' => 'string', 'example' => '365', 'title' => ''], 'CACertificateId' => ['description' => 'The CA certificate ID.', 'type' => 'string', 'example' => 'babaded901474b9693acf530e0fb1dbb', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.', 'description' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'QuotaCheckFailed.Function', 'errorMessage' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.', 'description' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C370DAF1-C838-4288-A1A0-9A87633D248E\\",\\n \\"Id\\": \\"babaded901474b9693acf530e0fb1d95\\",\\n \\"Status\\": \\"active\\",\\n \\"Certificate\\": \\"-----BEGIN CERTIFICATE-----\\",\\n \\"PrivateKey\\": \\"-----BEGIN PRIVATE KEY-----\\",\\n \\"CommonName\\": \\"www.example.com \\",\\n \\"NotBefore\\": \\"2023-12-01T02:12:49Z\\",\\n \\"NotAfter\\": \\"2024-12-01T02:12:49Z\\",\\n \\"Issuer\\": \\"ESA CA\\",\\n \\"SerialNumber\\": \\"babaded901474b9693acf530e0fb1daa\\",\\n \\"FingerprintSha256\\": \\"1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456aca66\\",\\n \\"SignatureAlgorithm\\": \\"SHA256-RSA\\",\\n \\"ValidityDays\\": \\"365\\",\\n \\"CACertificateId\\": \\"babaded901474b9693acf530e0fb1dbb\\"\\n}","type":"json"}]', 'title' => 'Create a client certificate', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateClientCertificate'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateClientCertificate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'CreateCompressionRule' => [ 'summary' => 'Creates a compression rule configuration for a site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257663', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1231231221***', 'title' => ''], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. For sites with configuration version management enabled, you can use this parameter to specify the site version on which the configuration takes effect. The default value is version 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The rule name. You do not need to set this parameter when adding a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => [ 'description' => 'The rule switch. You do not need to set this parameter when adding a global configuration. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The rule content, which uses a conditional expression to match user requests. You do not need to set this parameter when adding a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: Set the value to true.'."\n" .'- Match specified requests: Set the value to a custom expression, for example, (http.host eq \\"video.example.com\\").', 'type' => 'string', 'required' => false, 'example' => '(http.host eq "video.example.com")', 'title' => ''], ], [ 'name' => 'Gzip', 'in' => 'query', 'schema' => [ 'description' => 'Gzip compression. Valid values:'."\n" ."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'example' => 'on', 'required' => false, 'title' => '', ], ], [ 'name' => 'Brotli', 'in' => 'query', 'schema' => [ 'description' => 'Brotli compression. Valid values:'."\n" ."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'example' => 'on', 'required' => false, 'title' => '', ], ], [ 'name' => 'Zstd', 'in' => 'query', 'schema' => [ 'description' => 'Zstd compression. Valid values:'."\n" ."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'example' => 'on', 'required' => false, 'title' => '', ], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'C370DAF1-C838-4288-A1A0-9A87633D248E'], 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '35281609698****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'ConfExceedLimit', 'errorMessage' => 'The number of function configurations exceeds the limit. Please check the interface document to see the number of configurations that can be supported by a single function.', 'description' => 'The number of configuration items for the current function has exceeded the upper limit set by the system.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C370DAF1-C838-4288-A1A0-9A87633D248E\\",\\n \\"ConfigId\\": 0\\n}","type":"json"}]', 'title' => 'Create a compression rule configuration', 'changeSet' => [ ['createdAt' => '2025-03-27T02:58:48.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-02-12T02:25:41.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateCompressionRule'], ], ], 'ramActions' => [], ], 'CreateCustomHostname' => [ 'summary' => 'Creates a SaaS domain name for a site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239598', 'abilityTreeNodes' => ['FEATUREdcdn4DMKZ4'], ], 'parameters' => [ [ 'name' => 'Hostname', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'The SaaS domain name.', 'type' => 'string', 'required' => true, 'example' => 'custom.site.com'], ], [ 'name' => 'SiteId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123'], ], [ 'name' => 'RecordId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'The ID of the record to bind. You can call the [ListRecords](~~2850265~~) operation to obtain the record ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123'], ], [ 'name' => 'SslFlag', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => [ 'title' => '', 'description' => 'Specifies whether to enable SSL. Valid values:'."\n" .'- **on**: Enable SSL.'."\n" .'- **off**: Disable SSL.', 'enumValueTitles' => ['off' => 'Disable SSL.', 'on' => 'Enable SSL.'], 'type' => 'string', 'required' => true, 'enum' => ['on', 'off'], 'example' => 'on', ], ], [ 'name' => 'CertType', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The certificate type. This parameter is required when SslFlag is set to on. Valid values:'."\n" .'- **free**: free certificate.'."\n" .'- **upload**: uploaded certificate.'."\n" .'- **cas**: SSL Certificates Service certificate.', 'enumValueTitles' => ['cas' => 'SSL Certificates Service certificate.', 'upload' => 'Uploaded certificate.', 'free' => 'Free certificate.'], 'type' => 'string', 'enum' => ['free', 'upload', 'cas'], 'required' => false, 'example' => 'free', ], ], [ 'name' => 'Certificate', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'The certificate content. This parameter is required when CertType is set to upload.', 'type' => 'string', 'required' => false, 'example' => '-----BEGIN CERTIFICATE-----'], ], [ 'name' => 'PrivateKey', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'The certificate private key. This parameter is required when CertType is set to upload.', 'type' => 'string', 'required' => false, 'example' => '-----BEGIN PRIVATE KEY-----'], ], [ 'name' => 'CasId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The SSL Certificates Service certificate ID. This parameter is required when CertType is set to cas.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '30000478'."\n"], ], [ 'name' => 'CasRegion', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'The region of the SSL Certificates Service certificate. This parameter is required when CertType is set to cas.'."\n" .'- For Chinese site accounts, set this parameter to cn-hangzhou.'."\n" .'- For International site accounts, set this parameter to ap-southeast-1.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID, which is a unique identifier generated by Alibaba Cloud for the request.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', 'title' => ''], 'HostnameId' => ['title' => '', 'description' => 'The ID of the SaaS domain name.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123'], 'Hostname' => ['title' => '', 'description' => 'The SaaS domain name.', 'type' => 'string', 'example' => 'custom.site.com'], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'Site.ServiceBusy', 'errorMessage' => 'This website is being configured. Try again later.', 'description' => 'This website is being configured. Try again later.'], ['errorCode' => 'CustomHostname.ConflictWithExistingResource', 'errorMessage' => 'The custom hostname conflicts with existing resources, such as sites, records, load balancers, source address pools, custom hostnames and Layer 4 proxy records.', 'description' => 'The custom hostname conflicts with existing resources, such as sites, records, load balancers, source address pools, custom hostnames and Layer 4 proxy records.'], ['errorCode' => 'CustomHostname.ApplyCertFailed', 'errorMessage' => 'Fail to apply a free cert for custom hostname. Please try again later.', 'description' => 'Fail to apply a free cert for custom hostname. Please try again later.'], ['errorCode' => 'CustomHostname.SetCertFailed', 'errorMessage' => 'Fail to deploy a cert for custom hostname. Please try again later.', 'description' => 'Fail to deploy a cert for custom hostname. Please try again later.'], ['errorCode' => 'CustomHostname.CheckQuotaFailed', 'errorMessage' => 'Fail to check quota for custom hostname. Please try again later.', 'description' => ''], ['errorCode' => 'CustomHostname.OfflineForMultiReason', 'errorMessage' => 'Unable to activate the custom hostname because it is offline due to multiple reasons.', 'description' => ''], ['errorCode' => 'CustomHostname.WildcardDomainRequireEnterprisePlan', 'errorMessage' => 'Wildcard custom hostnames require an Enterprise plan.', 'description' => ''], ['errorCode' => 'CustomHostname.QueryCasCertFailed', 'errorMessage' => 'Fail to query CAS certificate details. Please try again later.', 'description' => ''], ['errorCode' => 'QuotaExceed.CustomHostname', 'errorMessage' => 'The number of custom hostnames exceeds the plan quota. Contact the sales team to increase your quota.', 'description' => 'The number of custom hostnames exceeds the plan quota. Contact the sales team to increase your quota.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Create a saaS domain name', 'description' => '- If the acceleration area is set to the Chinese mainland only or global, the site domain name must have a valid China Internet Content Provider (ICP) filing.'."\n" .'- Each user can invoke this operation up to 100 times per hour.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 3600, 'regionId' => '*', 'api' => 'CreateCustomHostname'], ], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"HostnameId\\": 1234567890123,\\n \\"Hostname\\": \\"custom.site.com\\"\\n}","type":"json"}]', ], 'CreateCustomResponseCodeRule' => [ 'summary' => 'Creates a custom response code rule for a site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257646', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call [ListSites](~~2850189~~) to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '805864735361584', 'title' => ''], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. For sites with version management enabled, you can use this parameter to specify the site version on which the configuration takes effect. Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The rule name. You do not need to set this parameter when adding a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => [ 'description' => 'The rule switch. You do not need to set this parameter when adding a global configuration. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled', 'on' => 'Enabled'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The rule content. Conditional expressions are used to match user requests. You do not need to set this parameter when adding a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: Set the value to true.'."\n" .'- Match specified requests: Set the value to a custom expression, such as (http.host eq "video.example.com").', 'type' => 'string', 'required' => false, 'example' => '(http.host eq "video.example.com")', 'title' => ''], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The execution order of the rule. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'ReturnCode', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The response code.', 'type' => 'string', 'required' => true, 'example' => '400'], ], [ 'name' => 'PageId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The response page.', 'type' => 'string', 'required' => true, 'example' => '0'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'C2B2F8CF-3074-5BBC-891A-AAD292E2624F'], 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '3528160969****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'ConfExceedLimit', 'errorMessage' => 'The number of function configurations exceeds the limit. Please check the interface document to see the number of configurations that can be supported by a single function.', 'description' => 'The number of configuration items for the current function has exceeded the upper limit set by the system.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ['errorCode' => 'VerifyExpressionError', 'errorMessage' => 'Dynamic expression is invalid.', 'description' => 'Dynamic expression is invalid.'], ['errorCode' => 'InvalidValOfDelHeader', 'errorMessage' => 'The delete header operation does not support setting value.', 'description' => 'The delete header operation does not support setting value.'], ['errorCode' => 'SiteFunction.WafPageNotExist', 'errorMessage' => 'The custom page referenced in the custom response code configuration does not exist.', 'description' => 'The custom page referenced in the custom response code configuration does not exist.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'title' => 'Create a custom response code rule', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateCustomResponseCodeRule'], ], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C2B2F8CF-3074-5BBC-891A-AAD292E2624F\\",\\n \\"ConfigId\\": 0\\n}","type":"json"}]', ], 'CreateCustomScenePolicy' => [ 'summary' => 'Creates a user-level custom scene policy. After you associate the policy with one or more sites, the policy applies to those sites.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239252', 'abilityTreeNodes' => ['FEATUREdcdnL8HX1L'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The policy name.', 'type' => 'string', 'required' => true, 'maxLength' => 255, 'example' => 'test', 'title' => ''], ], [ 'name' => 'Template', 'in' => 'query', 'schema' => [ 'description' => 'The template name. Valid value:'."\n" ."\n" .'- **promotion**: a policy for major events.', 'type' => 'string', 'required' => true, 'enum' => ['promotion'], 'example' => 'promotion', 'title' => '', ], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The policy start time.'."\n" ."\n" .'The time must be in UTC and in ISO 8601 format: `yyyy-MM-ddTHH:mm:ssZ`.', 'type' => 'string', 'required' => true, 'example' => '2021-11-07T17:00:00Z', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The policy end time.'."\n" ."\n" .'The time must be in UTC and in ISO 8601 format: `yyyy-MM-ddTHH:mm:ssZ`.', 'type' => 'string', 'required' => true, 'example' => '2021-11-07T18:00:00Z', 'title' => ''], ], [ 'name' => 'Objects', 'in' => 'query', 'schema' => ['description' => 'The IDs of the sites to associate with the policy. Separate multiple site IDs with commas.'."\n" ."\n" .'> This parameter is deprecated. Use `SiteIds` instead. If `SiteIds` is specified, the value of this parameter is ignored. To prevent ambiguity, specify a value for either `SiteIds` or `Objects`.', 'type' => 'string', 'required' => false, 'example' => '7096621098****,7096621099****'."\n", 'title' => ''], ], [ 'name' => 'SiteIds', 'in' => 'query', 'schema' => ['description' => 'The IDs of the sites to associate with the policy. Separate multiple site IDs with commas.', 'type' => 'string', 'required' => false, 'example' => '7096621098****,7096621099****'."\n", 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The data returned.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9'], 'Name' => ['description' => 'The policy name.', 'type' => 'string', 'example' => 'test', 'title' => ''], 'Template' => ['description' => 'The template name.', 'type' => 'string', 'example' => 'promotion', 'title' => ''], 'StartTime' => ['description' => 'The policy start time.'."\n" ."\n" .'The time must be in UTC and in ISO 8601 format: `yyyy-MM-ddTHH:mm:ssZ`.', 'type' => 'string', 'example' => '2021-11-07T17:00:00Z', 'title' => ''], 'EndTime' => ['description' => 'The policy end time.'."\n" ."\n" .'The time must be in UTC and in ISO 8601 format: `yyyy-MM-ddTHH:mm:ssZ`.', 'type' => 'string', 'example' => '2021-11-07T18:00:00Z', 'title' => ''], 'Objects' => [ 'description' => 'A list of associated site IDs.'."\n" ."\n" .'> This field is deprecated. Read the value from the `SiteIds` field instead.', 'type' => 'array', 'items' => ['description' => 'The site ID.', 'type' => 'string', 'example' => '7096621098****', 'title' => ''], 'enumValueTitles' => [], 'title' => '', 'example' => '', ], 'PolicyId' => ['description' => 'The policy ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'SiteIds' => ['description' => 'The associated site IDs, separated by commas.', 'type' => 'string', 'example' => '7096621098****, 7096621099****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'PolicyNameExist', 'errorMessage' => 'The policy name already exists.', 'description' => 'Policy name already exists.'], ['errorCode' => 'CreateTimeError', 'errorMessage' => 'The effective time of the same policy template cannot overlap.', 'description' => 'The effective time of the same policy template cannot overlap.'], ['errorCode' => 'ScenePolicyQuotaExceedLimit', 'errorMessage' => 'The maximum number of scenario policies has been reached. Each account can create up to 10 scenario policies.', 'description' => 'The maximum number of scenario policies has been reached. Each account can create up to 10 scenario policies.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Create Scenario-specific Policy', 'changeSet' => [ ['createdAt' => '2025-06-03T09:31:40.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateCustomScenePolicy'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateCustomScenePolicy', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"Name\\": \\"test\\",\\n \\"Template\\": \\"promotion\\",\\n \\"StartTime\\": \\"2021-11-07T17:00:00Z\\",\\n \\"EndTime\\": \\"2021-11-07T18:00:00Z\\",\\n \\"Objects\\": [\\n \\"7096621098****\\"\\n ],\\n \\"PolicyId\\": 1,\\n \\"SiteIds\\": \\"7096621098****, 7096621099****\\"\\n}","type":"json"}]', ], 'CreateEdgeContainerApp' => [ 'summary' => 'Creates a containerized application. You can deploy and release a version of the application across points of presence (POPs).', 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239242', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The name of the application. The name must start with a lowercase letter and can contain lowercase letters, digits, and hyphens (-). The name must be 6 to 128 characters in length.'."\n", 'type' => 'string', 'required' => true, 'example' => 'app-test', 'maxLength' => 128, 'minLength' => 6, 'title' => ''], ], [ 'name' => 'ServicePort', 'in' => 'formData', 'schema' => ['description' => 'The server port. Valid values: 1 to 65535.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => true, 'maximum' => '443', 'minimum' => '80', 'example' => '80', 'title' => ''], ], [ 'name' => 'TargetPort', 'in' => 'formData', 'schema' => ['description' => 'The backend port, which is also the service port of the application. Valid values: 1 to 65535.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => true, 'maximum' => '65535', 'minimum' => '1', 'example' => '80', 'title' => ''], ], [ 'name' => 'Remarks', 'in' => 'formData', 'schema' => ['description' => 'The remarks. This parameter is empty by default.'."\n", 'type' => 'string', 'required' => false, 'example' => 'test app', 'maxLength' => 1024, 'title' => ''], ], [ 'name' => 'HealthCheckType', 'in' => 'formData', 'schema' => ['description' => 'The health check type. By default, this parameter is left empty.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'* **l4**: Layer 4 health check.'."\n" .'* **l7**: Layer 7 health check.'."\n", 'type' => 'string', 'required' => false, 'example' => 'l7', 'default' => 'l7', 'title' => ''], ], [ 'name' => 'HealthCheckHost', 'in' => 'formData', 'schema' => ['description' => 'The domain name that is used for health checks. This parameter is empty by default.'."\n", 'type' => 'string', 'required' => false, 'example' => 'www.aliyun.com', 'title' => ''], ], [ 'name' => 'HealthCheckHttpCode', 'in' => 'formData', 'schema' => ['description' => 'The HTTP status code returned for a successful health check. Valid values:'."\n" ."\n" .'* **http\\_2xx** (default)'."\n" .'* **http\\_3xx**'."\n", 'type' => 'string', 'required' => false, 'example' => 'http_2xx', 'default' => 'http_2xx', 'title' => ''], ], [ 'name' => 'HealthCheckMethod', 'in' => 'formData', 'schema' => ['description' => 'The HTTP request method for health checks. Valid values:'."\n" ."\n" .'* **HEAD** (default): requests the headers of the resource.'."\n" .'* **GET**: requests the specified resource and returns both the headers and entity body.'."\n", 'type' => 'string', 'required' => false, 'example' => 'HEAD', 'default' => 'HEAD', 'title' => ''], ], [ 'name' => 'HealthCheckURI', 'in' => 'formData', 'schema' => ['description' => 'The URI used for health checks. The URI must be **1** to **80** characters in length. Default value: "/".'."\n", 'type' => 'string', 'required' => false, 'example' => '/health_check', 'title' => ''], ], [ 'name' => 'HealthCheckPort', 'in' => 'formData', 'schema' => ['description' => 'The port used for health checks. Valid values: 1 to 65535. Default value: 80.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '80', 'title' => ''], ], [ 'name' => 'HealthCheckTimeout', 'in' => 'formData', 'schema' => ['description' => 'The timeout period of a health check response. If a backend ECS instance does not respond within the specified timeout period, the ECS instance fails the health check. Unit: seconds.\\'."\n" .'Valid values: **1** to **100**.\\'."\n" .'Default value: **3**.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5', 'title' => ''], ], [ 'name' => 'HealthCheckInterval', 'in' => 'formData', 'schema' => ['description' => 'The interval between two consecutive health checks. Unit: seconds. Valid values: **1** to **50**. Default value: **5**.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5', 'title' => ''], ], [ 'name' => 'HealthCheckSuccTimes', 'in' => 'formData', 'schema' => ['description' => 'The number of consecutive successful health checks required for an application to be considered as healthy. Valid values: 1 to 10. Default value: 2.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''], ], [ 'name' => 'HealthCheckFailTimes', 'in' => 'formData', 'schema' => ['description' => 'The number of consecutive failed health checks required for an application to be considered as unhealthy. Valid values: 1 to 10. Default value: 5.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'AppId' => ['description' => 'The ID of the application that is created.'."\n", 'type' => 'string', 'example' => 'app-880688675783794688', 'title' => ''], 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', 'title' => ''], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.HealthCheckType', 'errorMessage' => 'Specified parameter HealthCheckType is not valid.', 'description' => 'Parameter HealthCheckType format is incorrect.'], ['errorCode' => 'InvalidParameter.HealthCheckHost', 'errorMessage' => 'Specified parameter HealthCheckHost is not valid.', 'description' => 'Parameter HealthCheckHost format is incorrect.'], ['errorCode' => 'InvalidParameter.HealthCheckHttpCode', 'errorMessage' => 'Specified parameter HealthCheckHttpCode is not valid.', 'description' => 'Parameter HealthCheckHttpCode format is incorrect.'], ['errorCode' => 'InvalidParameter.HealthCheckMethod', 'errorMessage' => 'Specified parameter HealthCheckMethod is not valid.', 'description' => 'Parameter HealthCheckMethod format is incorrect.'], ['errorCode' => 'InvalidParameter.HealthCheckURI', 'errorMessage' => 'Specified parameter HealthCheckURI is not valid.', 'description' => 'Parameter HealthCheckURI format is incorrect.'], ['errorCode' => 'InvalidParameter.HealthCheckInterval', 'errorMessage' => 'Specified parameter HealthCheckInterval is not valid.', 'description' => 'Parameter HealthCheckInterval format is incorrect.'], ['errorCode' => 'InvalidParameter.HealthCheckTimeout', 'errorMessage' => 'Specified parameter HealthCheckTimeout is not valid.', 'description' => 'Parameter HealthCheckTimeout format is incorrect.'], ['errorCode' => 'InvalidParameter.HealthCheckSuccTimes', 'errorMessage' => 'Specified parameter HealthCheckSuccTimes is not valid.', 'description' => 'Parameter HealthCheckHost format is incorrect.'], ['errorCode' => 'InvalidParameter.HealthCheckFailTimes', 'errorMessage' => 'Specified parameter HealthCheckFailTimes is not valid.', 'description' => 'Parameter HealthCheckFailTimes format is incorrect.'], ['errorCode' => 'InvalidParameter.HealthCheckPort', 'errorMessage' => 'Specified parameter HealthCheckPort is not valid.', 'description' => 'Parameter HealthCheckPort format is incorrect.'], ['errorCode' => 'InvalidParameter.PageNumber', 'errorMessage' => 'Failed to verify parameter PageNumber.Check whether the parameter exists and is set to a positive integer.', 'description' => 'Failed to verify parameter PageNumber.Check whether the parameter exists and is set to a positive integer.'], ['errorCode' => 'InvalidParameter.appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'NameAlreadyExists', 'errorMessage' => 'The name already exists.', 'description' => 'Name already exists.'], ['errorCode' => 'ParamNameError', 'errorMessage' => 'The Name parameter is invalid.', 'description' => 'The Name parameter is illegal.'."\n"], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AppId\\": \\"app-880688675783794688\\",\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","type":"json"}]', 'title' => 'CreateEdgeContainerApp', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateEdgeContainerApp'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:CreateEdgeContainerApp', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'CreateEdgeContainerAppImageSecret' => [ 'summary' => 'Create an image secret for the edge container application', 'path' => '', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', 'schema' => ['description' => 'Application ID, which can be obtained using the [ListEdgeContainerApps](~~ListEdgeContainerApps~~) interface.', 'type' => 'string', 'required' => true, 'example' => 'app-88068867578379****', 'title' => ''], ], [ 'name' => 'Registry', 'in' => 'query', 'schema' => ['description' => 'Image repository address.', 'type' => 'string', 'required' => true, 'example' => 'cr-cn-shanghai.edas.aliyuncs.com', 'title' => ''], ], [ 'name' => 'Username', 'in' => 'query', 'schema' => ['description' => 'Image repository username.', 'type' => 'string', 'required' => true, 'example' => 'admin', 'title' => ''], ], [ 'name' => 'Password', 'in' => 'query', 'schema' => ['description' => 'Image repository password.', 'type' => 'string', 'required' => true, 'example' => '***', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-280B-72F8FD6DA2FE'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Invalid parameter. Check the parameter configuration.', 'description' => 'Invalid parameter. Check the parameter configuration.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'InvalidParameter.Appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the input application ID is incorrect. You can use the ListEdgeContainerApps API to obtain the application ID.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Create Edge Container Application Image Secret', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-280B-72F8FD6DA2FE\\"\\n}","type":"json"}]', ], 'CreateEdgeContainerAppRecord' => [ 'summary' => 'Associates a domain name with a containerized application. This way, requests destined for the associated domain name are forwarded to the application.', 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239304', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'formData', 'schema' => ['description' => 'The application ID.'."\n", 'type' => 'string', 'required' => true, 'example' => 'app-88068867578379****', 'maxLength' => 64, 'minLength' => 20, 'title' => ''], ], [ 'name' => 'SiteId', 'in' => 'formData', 'schema' => ['description' => 'The website ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '5407498413****', 'title' => ''], ], [ 'name' => 'RecordName', 'in' => 'formData', 'schema' => ['description' => 'The associated domain name.'."\n", 'type' => 'string', 'required' => true, 'example' => 'a.example.com', 'maxLength' => 1024, 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidParameter.appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.'], ['errorCode' => 'ParameterAlreadyExist', 'errorMessage' => 'Parameter uniqueness verification failed. Check for duplicate parameter values.', 'description' => 'Parameter uniqueness verification failed. Check for duplicate parameter values.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\"\\n}","type":"json"}]', 'title' => 'CreateEdgeContainerAppRecord', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateEdgeContainerAppRecord'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:CreateEdgeContainerAppRecord', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'CreateEdgeContainerAppVersion' => [ 'summary' => 'Creates a version for a containerized application. You can iterate the application based on the version.', 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239192', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'formData', 'schema' => ['description' => 'The application ID, which can be obtained by calling the [ListEdgeContainerApps](~~ListEdgeContainerApps~~) operation.', 'type' => 'string', 'required' => true, 'maxLength' => 64, 'minLength' => 20, 'example' => 'app-88068867578379****', 'title' => ''], ], [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The version name, which must be 6 to 128 characters in length.', 'type' => 'string', 'required' => true, 'maxLength' => 128, 'minLength' => 6, 'example' => 'verson1', 'title' => ''], ], [ 'name' => 'Remarks', 'in' => 'formData', 'schema' => ['description' => 'The description of the version.', 'type' => 'string', 'required' => false, 'maxLength' => 1024, 'example' => 'test app', 'title' => ''], ], [ 'name' => 'Containers', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'The container group to be deployed for this version, which contains information about images.
The image data contains the image address, startup command, parameters, environment variables, and probe rules. You can specify one or more images. The parameter value is a JSON string.', 'type' => 'array', 'items' => [ 'description' => 'The details of the container.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the container. The name must be unique in the same container group.', 'type' => 'string', 'required' => true, 'example' => 'lxg-demo-er', 'title' => ''], 'Image' => ['description' => 'The address of the image.', 'type' => 'string', 'required' => true, 'example' => 'registry-vpc.cn-shenzhen.aliyuncs.com/lihe****h/ea****ts_serv****am:3.**', 'title' => ''], 'IsACRImage' => ['description' => 'Specifies whether the image is a Container Registry image.', 'type' => 'boolean', 'required' => true, 'example' => 'false', 'title' => ''], 'ACRImageInfo' => [ 'description' => 'The information about the Container Registry image.', 'type' => 'object', 'properties' => [ 'IsEnterpriseRegistry' => ['description' => 'Specifies whether the image is an enterprise-level Container Registry image.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], 'Domain' => ['description' => 'The domain name of the Container Registry image.', 'type' => 'string', 'required' => false, 'example' => '1500.***.net', 'title' => ''], 'InstanceId' => ['description' => 'The ID of the Container Registry instance.', 'type' => 'string', 'required' => false, 'example' => 'xcdn-9axbo****', 'title' => ''], 'RegionId' => ['description' => 'The regions in which the Container Registry instance resides.', 'type' => 'string', 'required' => false, 'example' => 'cn-shanghai', 'title' => ''], 'RepoId' => ['description' => 'The ID of the image repository.', 'type' => 'string', 'required' => false, 'example' => 'crr-h1ghghu60ct****', 'title' => ''], 'RepoName' => ['description' => 'The name of the image repository.', 'type' => 'string', 'required' => false, 'example' => 'test_71', 'title' => ''], 'RepoNamespace' => ['description' => 'The namespace to which the image repository belongs.', 'type' => 'string', 'required' => false, 'example' => 'safeline', 'title' => ''], 'Tag' => ['description' => 'The tag of the Container Registry image.', 'type' => 'string', 'required' => false, 'example' => '3.40.2', 'title' => ''], 'TagUrl' => ['description' => 'The URL of the Container Registry image tag.', 'type' => 'string', 'required' => false, 'example' => 'registry-vpc.cn-shenzhen.aliyuncs.com/****/eas***m:31', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'Spec' => ['description' => 'The compute specification of the container. Valid values: 1C2G, 2C4G, 2C8G, 4C8G, 4C16G, 8C16G, and 8C32G.', 'type' => 'string', 'required' => true, 'example' => '1C2G', 'title' => ''], 'Command' => ['description' => 'The command that is used to start the container. Separate the arguments with spaces.', 'type' => 'string', 'required' => false, 'example' => 'nginx', 'title' => ''], 'Args' => ['description' => 'The arguments that are passed to the container startup command. Separate the parameters with spaces.', 'type' => 'string', 'required' => false, 'example' => '-a', 'title' => ''], 'Storage' => ['description' => 'The storage capacity. Valid values: 0.5G, 10G, 20G, and 30G.', 'type' => 'string', 'required' => true, 'example' => '0.5G', 'title' => ''], 'EnvVariables' => ['description' => 'The environment variables. Separate the environment variables with commas (,).', 'type' => 'string', 'required' => false, 'example' => 'VITE_APP_TITLE=My App', 'title' => ''], 'PostStart' => ['description' => 'The command that is run before the container is started. Separate the arguments with spaces.', 'type' => 'string', 'required' => false, 'example' => 'sh poststart.sh "echo hello world" ', 'title' => ''], 'PreStop' => ['description' => 'The command that is run before the container is stopped. Separate the arguments with spaces.', 'type' => 'string', 'required' => false, 'example' => 'sh prestop.sh "echo hello world" ', 'title' => ''], 'ProbeType' => ['description' => 'The type of the probe. Valid values:'."\n" ."\n" .'- exec: the command type.'."\n" ."\n" .'- tcpSocket: the TCP probe type.'."\n" ."\n" .'- httpGet: the HTTP access type.', 'type' => 'string', 'required' => true, 'example' => 'exec', 'title' => ''], 'ProbeContent' => [ 'description' => 'The content of the container health probe.', 'type' => 'object', 'properties' => [ 'InitialDelaySeconds' => ['description' => 'The latency for container probe initialization.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], 'TimeoutSeconds' => ['description' => 'The timeout period of the container health check.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], 'PeriodSeconds' => ['description' => 'The interval between container health checks.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], 'SuccessThreshold' => ['description' => 'The number of consecutive successful health checks required for a container to be considered as healthy.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], 'FailureThreshold' => ['description' => 'The number of consecutive failed health checks required for a container to be considered as unhealthy.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3', 'title' => ''], 'Command' => ['description' => 'The command of the exec type probe.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'echo ok'], 'Port' => ['description' => 'The health check port.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '9991', 'title' => ''], 'Host' => ['description' => 'The domain name that is used for health checks.', 'type' => 'string', 'required' => false, 'example' => 'www.rewrite.com', 'title' => ''], 'Path' => ['description' => 'The health check path.', 'type' => 'string', 'required' => false, 'example' => '/', 'title' => ''], 'Scheme' => ['description' => 'The protocol that the container health check request uses.', 'type' => 'string', 'required' => false, 'example' => 'http', 'title' => ''], 'HttpHeaders' => ['description' => 'The request headers that are included in the container health check request.', 'type' => 'string', 'required' => false, 'example' => '[{\\"Content-Type\\":\\"application/json\\"}]', 'title' => ''], ], 'required' => true, 'example' => 'For details, see the definition of readiness probes in Kubernetes.', 'title' => '', ], ], 'required' => true, 'title' => '', 'example' => '', ], 'required' => true, 'example' => '['."\n" .' {'."\n" .' "Name": "container1",'."\n" .' "Image": "image1",'."\n" .' "Spec": "1C2G",'."\n" .' "Command": "/bin/sh",'."\n" .' "Args": "-c hello",'."\n" .' "ProbeType": "tcpSocket",'."\n" .' "ProbeContent": "{\\"Port\\":8080}"'."\n" .' },'."\n" .' {'."\n" .' "Name": "container2",'."\n" .' "Image": "image2",'."\n" .' "Spec": "2C4G",'."\n" .' "ProbeType": "httpGet",'."\n" .' "ProbeContent": "{\\"Path\\":\\"/\\",\\"Port\\":80,\\"InitialDelaySeconds\\":10}"'."\n" .' }'."\n" .']', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'VersionId' => ['description' => 'The ID of the created version.', 'type' => 'string', 'example' => 'ver-87962637161651****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.Name', 'errorMessage' => 'The specified Name is invalid. Please check the Name parameter, which must be between 6 and 128 characters. Kindly make the necessary modifications and call the interface again.', 'description' => 'The Name parameter is not valid. Check the Name parameter, which is between 6 and 128 characters. After modification, call the interface again.'], ['errorCode' => 'InvalidParameter.Percentage', 'errorMessage' => 'The Percentage parameter is invalid. Please check the Percentage parameter, which should be in the range of 1-100. Modify it accordingly and call the interface again.', 'description' => 'The Percentage parameter is invalid. Check the Percentage parameter. The parameter range is 1-100. Modify the parameter and call the interface again.'], ['errorCode' => 'InvalidParameter.Image', 'errorMessage' => 'The specified Image is invalid. Please check the Image parameter and make the necessary modifications and call the interface again.', 'description' => 'Illegal Image parameter. Please check the Image parameter, which cannot be assigned to illegal characters such @.'], ['errorCode' => 'InvalidParameter.HttpHeaders', 'errorMessage' => 'The specified HttpHeaders is invalid. Please check the HttpHeaders parameter. Please make the necessary changes and call the interface again.', 'description' => 'The HttpHeaders parameter is invalid. Please check whether the HttpHeaders parameter is filled in. The parameter cannot contain @.'], ['errorCode' => 'InvalidParameter.appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'ParameterAlreadyExist', 'errorMessage' => 'Parameter uniqueness verification failed. Check for duplicate parameter values.', 'description' => 'Parameter uniqueness verification failed. Check for duplicate parameter values.'], ['errorCode' => 'NameAlreadyExists', 'errorMessage' => 'The name already exists.', 'description' => 'Name already exists.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"VersionId\\": \\"ver-87962637161651****\\",\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","type":"json"}]', 'title' => 'CreateEdgeContainerAppVersion', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateEdgeContainerAppVersion'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateEdgeContainerAppVersion', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'translator' => 'manual', ], 'CreateHttpIncomingRequestHeaderModificationRule' => [ 'summary' => 'Creates a configuration for modifying HTTP inbound request headers for a site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257646', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '478016908379824', 'title' => ''], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. For sites with configuration version management enabled, you can use this parameter to specify the site version on which the configuration takes effect. The default value is 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The rule name. This parameter is not required when you add a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => [ 'description' => 'The rule switch. This parameter is not required when you add a global configuration. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The rule content, which uses a conditional expression to match user requests. This parameter is not required when you add a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: set the value to true.'."\n" .'- Match specified requests: set the value to a custom expression, such as (http.host eq \\"video.example.com\\").', 'type' => 'string', 'required' => false, 'example' => '(http.host eq "video.example.com")', 'title' => ''], ], [ 'name' => 'RequestHeaderModification', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The request header modifications. Three operations are supported: add, delete, and modify.', 'type' => 'array', 'items' => [ 'description' => 'The request header modification details.', 'type' => 'object', 'properties' => [ 'Operation' => [ 'description' => 'The operation type. Valid values:'."\n" ."\n" .'- add: adds a request header.'."\n" .'- del: deletes a request header.'."\n" .'- modify: modifies a request header.', 'enumValueTitles' => ['add' => '添加', 'modify' => '变更', 'del' => '删除'], 'type' => 'string', 'required' => true, 'enum' => ['add', 'modify', 'del'], 'example' => 'add', 'title' => '', ], 'Name' => ['description' => 'The request header name.', 'type' => 'string', 'required' => true, 'example' => 'headername'."\n", 'title' => ''], 'Value' => ['description' => 'The request header value.', 'type' => 'string', 'required' => false, 'example' => 'headvalue', 'title' => ''], 'Type' => [ 'description' => 'The value type. Valid values:'."\n" .'- static: static pattern.'."\n" .'- dynamic: dynamic pattern.', 'enumValueTitles' => ['static' => '静态模式', 'dynamic' => '动态模式'], 'type' => 'string', 'enum' => ['static', 'dynamic'], 'required' => false, 'example' => 'static', 'title' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => true, 'title' => '', 'example' => '', ], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '7C414690-9D7B-5D66-9CD9-AD0B3F25ED49'], 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '35281609698****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'ConfExceedLimit', 'errorMessage' => 'The number of function configurations exceeds the limit. Please check the interface document to see the number of configurations that can be supported by a single function.', 'description' => 'The number of configuration items for the current function has exceeded the upper limit set by the system.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ['errorCode' => 'VerifyExpressionError', 'errorMessage' => 'Dynamic expression is invalid.', 'description' => 'Dynamic expression is invalid.'], ['errorCode' => 'InvalidValOfDelHeader', 'errorMessage' => 'The delete header operation does not support setting value.', 'description' => 'The delete header operation does not support setting value.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7C414690-9D7B-5D66-9CD9-AD0B3F25ED49\\",\\n \\"ConfigId\\": 0\\n}","type":"json"}]', 'title' => 'Create an HTTP inbound request header modification configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateHttpIncomingRequestHeaderModificationRule'], ], ], 'ramActions' => [], ], 'CreateHttpIncomingResponseHeaderModificationRule' => [ 'summary' => 'Creates a configuration for modifying HTTP inbound response headers for a site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257651', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '608665779308176', 'title' => ''], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. For sites with version management enabled, you can use this parameter to specify the site version on which the configuration takes effect. The default value is 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The rule name. You do not need to set this parameter when you add a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => [ 'description' => 'The rule switch. You do not need to set this parameter when you add a global configuration. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'required' => false, 'enum' => ['on', 'off'], 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The rule content, which uses a conditional expression to match user requests. You do not need to set this parameter when you add a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: set the value to true.'."\n" .'- Match specified requests: set the value to a custom expression, such as (http.host eq \\"video.example.com\\").', 'type' => 'string', 'required' => false, 'example' => '(http.host eq "video.example.com")', 'title' => ''], ], [ 'name' => 'ResponseHeaderModification', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The response header modifications. Three operation types are supported: add, delete, and modify.', 'type' => 'array', 'items' => [ 'description' => 'The response header modification details.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The response header name.', 'type' => 'string', 'required' => true, 'example' => 'headerName', 'title' => ''], 'Operation' => [ 'description' => 'The operation type. Valid values:'."\n" ."\n" .'- add: adds a response header.'."\n" .'- del: deletes a response header.'."\n" .'- modify: modifies a response header.', 'enumValueTitles' => ['add' => '添加', 'modify' => '变更', 'del' => '删除'], 'type' => 'string', 'required' => true, 'enum' => ['add', 'modify', 'del'], 'example' => 'add', 'title' => '', ], 'Value' => ['description' => 'The response header value.', 'type' => 'string', 'required' => false, 'example' => 'headerValue', 'title' => ''], 'Type' => [ 'description' => 'The value type. Valid values:'."\n" .'- static: static pattern.'."\n" .'- dynamic: dynamic pattern.', 'enumValueTitles' => ['static' => '静态模式', 'dynamic' => '动态模式'], 'type' => 'string', 'enum' => ['static', 'dynamic'], 'required' => false, 'example' => 'static', 'title' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => true, 'title' => '', 'example' => '', ], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '156A6B-677B1A-4297B7-9187B7-2B44792'], 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '434497172875264', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'ConfExceedLimit', 'errorMessage' => 'The number of function configurations exceeds the limit. Please check the interface document to see the number of configurations that can be supported by a single function.', 'description' => 'The number of configuration items for the current function has exceeded the upper limit set by the system.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ['errorCode' => 'VerifyExpressionError', 'errorMessage' => 'Dynamic expression is invalid.', 'description' => 'Dynamic expression is invalid.'], ['errorCode' => 'InvalidValOfDelHeader', 'errorMessage' => 'The delete header operation does not support setting value.', 'description' => 'The delete header operation does not support setting value.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"156A6B-677B1A-4297B7-9187B7-2B44792\\",\\n \\"ConfigId\\": 434497172875264\\n}","type":"json"}]', 'title' => 'Create an HTTP inbound response header modification configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateHttpIncomingResponseHeaderModificationRule'], ], ], 'ramActions' => [], ], 'CreateHttpRequestHeaderModificationRule' => [ 'summary' => 'Adds a Configuration for modifying a Site\'s HTTP Request Headers.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257646', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The ID of the Site. You can get this ID by calling the [ListSites](~~ListSites~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '5407498413****', 'title' => ''], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The Version of the Site configuration. For a Site with configuration versioning enabled, this parameter specifies the configuration\'s target Version. The default value is 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The name of the Rule. This parameter is not required when you add a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example'."\n", 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable the Rule. This parameter is not required when you add a global configuration. Valid values are:'."\n" ."\n" .'- on: Enables the Rule.'."\n" ."\n" .'- off: Disables the Rule.', 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The content of the Rule, which uses a Conditional Expression to match user requests. This parameter is not required when you add a global configuration. Supports two Use Cases:'."\n" ."\n" .'- To match all incoming requests, set the value to true.'."\n" ."\n" .'- To match specific requests, set the value to a custom expression, for example, (http.host eq "video.example.com").', 'type' => 'string', 'required' => false, 'example' => '(http.host eq "video.example.com")', 'title' => ''], ], [ 'name' => 'RequestHeaderModification', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'An array of objects that define Request Header modifications. Supported operations include add, del, and modify.', 'type' => 'array', 'items' => [ 'description' => 'An object that contains the details of a single Request Header modification.', 'type' => 'object', 'properties' => [ 'Operation' => [ 'description' => 'The operation to perform. Valid values are:'."\n" ."\n" .'- add: Adds a header.'."\n" ."\n" .'- del: Deletes a header.'."\n" ."\n" .'- modify: Modifies a header.', 'type' => 'string', 'required' => true, 'enum' => ['add', 'modify', 'del'], 'example' => 'add', 'title' => '', ], 'Name' => ['description' => 'The Request Header name.', 'type' => 'string', 'required' => true, 'example' => 'headername'."\n", 'title' => ''], 'Value' => ['description' => 'The Request Header value.', 'type' => 'string', 'required' => false, 'example' => 'headervalue'."\n", 'title' => ''], 'Type' => [ 'description' => 'The type of the header value. Valid values are:'."\n" ."\n" .'- static: Static value.'."\n" ."\n" .'- dynamic: Dynamic value.', 'type' => 'string', 'enum' => ['static', 'dynamic'], 'required' => false, 'example' => 'static', 'title' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => true, 'title' => '', 'example' => '', ], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The execution order of the Rule. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response object.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-280B-72F8FD6DA2FE'], 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '35281609698****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'ConfExceedLimit', 'errorMessage' => 'The number of function configurations exceeds the limit. Please check the interface document to see the number of configurations that can be supported by a single function.', 'description' => 'The number of configuration items for the current function has exceeded the upper limit set by the system.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ['errorCode' => 'VerifyExpressionError', 'errorMessage' => 'Dynamic expression is invalid.', 'description' => 'Dynamic expression is invalid.'], ['errorCode' => 'InvalidValOfDelHeader', 'errorMessage' => 'The delete header operation does not support setting value.', 'description' => 'The delete header operation does not support setting value.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'title' => 'Create or Modify HTTP Request Header Configuration', 'changeSet' => [ ['createdAt' => '2025-04-10T07:02:38.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2025-03-27T02:58:49.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateHttpRequestHeaderModificationRule'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateHttpRequestHeaderModificationRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-280B-72F8FD6DA2FE\\",\\n \\"ConfigId\\": 0\\n}","type":"json"}]', ], 'CreateHttpResponseHeaderModificationRule' => [ 'summary' => 'Creates a rule to modify HTTP response headers.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257651', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The Site ID. You can get this ID by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456******', 'title' => ''], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the Site configuration. For sites with Configuration Version Management enabled, this parameter specifies the configuration version that the Rule applies to. If omitted, this parameter defaults to version 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The name of the rule. This parameter is not required when adding a Global Configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable the rule. This parameter is not required when adding a Global Configuration. Valid values:'."\n" ."\n" .'- `on`: Enables the rule.'."\n" ."\n" .'- `off`: Disables the rule.', 'type' => 'string', 'required' => false, 'enum' => ['on', 'off'], 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'Specifies the conditional expression that an incoming request must match for the rule to apply. This parameter is not required when adding a Global Configuration. You can set the value in one of the following ways:'."\n" ."\n" .'- To match all incoming requests, set the value to `true`.'."\n" ."\n" .'- To match specific requests, set the value to a custom expression. For example: `(http.host eq "video.example.com")`', 'type' => 'string', 'required' => false, 'example' => '(http.host eq "video.example.com")', 'title' => ''], ], [ 'name' => 'ResponseHeaderModification', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'An array of objects that specify modifications to the response header. The supported operations are `add`, `del`, and `modify`.', 'type' => 'array', 'items' => [ 'description' => 'An object that defines a single modification to the response header.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the response header.', 'type' => 'string', 'required' => true, 'example' => 'headername', 'title' => ''], 'Operation' => [ 'description' => 'The modification to perform on the header. Valid values:'."\n" ."\n" .'- `add`: Adds a header.'."\n" ."\n" .'- `del`: Deletes a header.'."\n" ."\n" .'- `modify`: Modifies a header.', 'type' => 'string', 'required' => true, 'enum' => ['add', 'modify', 'del'], 'example' => 'add', 'title' => '', ], 'Value' => ['description' => 'The value to assign to the header. This parameter is not required when the `Operation` is `del`.', 'type' => 'string', 'required' => false, 'example' => 'headervalue', 'title' => ''], 'Type' => [ 'description' => 'The value type. Valid values:'."\n" ."\n" .'- `static`: Static value.'."\n" ."\n" .'- `dynamic`: Dynamic value.', 'type' => 'string', 'enum' => ['static', 'dynamic'], 'required' => false, 'example' => 'static', 'title' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => true, 'title' => '', 'example' => '', ], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The rule\'s execution order. A lower value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Contains the response data.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'A unique identifier for the request.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74'], 'ConfigId' => ['description' => 'A unique identifier for the configuration.', 'type' => 'integer', 'format' => 'int64', 'example' => '35281609698****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'ConfExceedLimit', 'errorMessage' => 'The number of function configurations exceeds the limit. Please check the interface document to see the number of configurations that can be supported by a single function.', 'description' => 'The number of configuration items for the current function has exceeded the upper limit set by the system.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ['errorCode' => 'VerifyExpressionError', 'errorMessage' => 'Dynamic expression is invalid.', 'description' => 'Dynamic expression is invalid.'], ['errorCode' => 'InvalidValOfDelHeader', 'errorMessage' => 'The delete header operation does not support setting value.', 'description' => 'The delete header operation does not support setting value.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'title' => 'Create or Modify HTTP Response Header Configuration', 'changeSet' => [ ['createdAt' => '2025-04-10T07:02:39.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2025-03-27T02:58:48.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateHttpResponseHeaderModificationRule'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateHttpResponseHeaderModificationRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\",\\n \\"ConfigId\\": 0\\n}","type":"json"}]', ], 'CreateHttpsApplicationConfiguration' => [ 'summary' => 'Adds an HTTPS application configuration to a site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257997', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The ID of the Site. You can get this ID by calling the [ListSites](~~ListSites~~) API.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The Site\'s configuration Version. For Sites with version management enabled, this parameter specifies the Version to which the configuration applies. The default is 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The name of the Rule. This parameter is optional when adding a Global Configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable the rule. This parameter is optional when adding a Global Configuration. Valid values:'."\n" ."\n" .'- `on`: The rule is enabled.'."\n" ."\n" .'- `off`: The rule is disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The content of the Rule, which is a Conditional Expression that matches user Requests. This parameter is optional when adding a Global Configuration. Supported use cases include:'."\n" ."\n" .'- To match all incoming requests, set the value to `true`.'."\n" ."\n" .'- To match specific requests, use a custom expression. For example: `(http.host eq "video.example.com")`.', 'type' => 'string', 'required' => false, 'example' => '(http.host eq \\"video.example.com\\")', 'title' => ''], ], [ 'name' => 'HttpsForce', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable Force HTTPS. Disabled by default. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'HttpsForceCode', 'in' => 'query', 'schema' => ['description' => 'The Redirection Status Code to use when Force HTTPS is enabled. Valid values:'."\n" ."\n" .'- `301`'."\n" ."\n" .'- `302`'."\n" ."\n" .'- `307`'."\n" ."\n" .'- `308`', 'type' => 'string', 'required' => false, 'example' => '301', 'title' => ''], ], [ 'name' => 'AltSvc', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable the Alt-Svc header. Disabled by default. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'AltSvcClear', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to include the `clear` parameter in the Alt-Svc header. Disabled by default. Valid values:'."\n" ."\n" .'- `on`: The parameter is included.'."\n" ."\n" .'- `off`: The parameter is not included.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'AltSvcPersist', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to include the `persist` parameter in the Alt-Svc header. Disabled by default. Valid values:'."\n" ."\n" .'- `on`: The parameter is included.'."\n" ."\n" .'- `off`: The parameter is not included.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'AltSvcMa', 'in' => 'query', 'schema' => ['description' => 'The Max Age for the Alt-Svc header, in seconds. The default is 86400.', 'type' => 'string', 'required' => false, 'example' => '86400', 'title' => ''], ], [ 'name' => 'Hsts', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable HTTP Strict Transport Security (HSTS). Disabled by default. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'HstsMaxAge', 'in' => 'query', 'schema' => ['description' => 'The value of the `max-age` directive for the HSTS header, in seconds.', 'type' => 'string', 'required' => false, 'example' => '3600', 'title' => ''], ], [ 'name' => 'HstsIncludeSubdomains', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to include the `includeSubDomains` directive in the HSTS header. Disabled by default. Valid values:'."\n" ."\n" .'- `on`: The directive is included.'."\n" ."\n" .'- `off`: The directive is not included.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'HstsPreload', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable HSTS Preload by including the `preload` directive in the HSTS header. Disabled by default. Valid values:'."\n" ."\n" .'- `on`: The directive is included.'."\n" ."\n" .'- `off`: The directive is not included.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The execution order of the rule. A lower value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'HttpsSniVerify', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable Server Name Indication (SNI) verification. Disabled by default. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'HttpsNoSniDeny', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to reject TLS Handshake Requests that do not include an SNI. Disabled by default. Valid values:'."\n" ."\n" .'- `on`: Rejects requests without an SNI.'."\n" ."\n" .'- `off`: Allows requests without an SNI.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'HttpsSniWhitelist', 'in' => 'query', 'schema' => ['description' => 'Specifies the allowlist of SNI values. Separate multiple values with a space.', 'type' => 'string', 'required' => false, 'example' => 'abc edf', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response data.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'], 'ConfigId' => ['description' => 'The ID of the configuration.', 'type' => 'integer', 'format' => 'int64', 'example' => '352816096987136', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'ConfExceedLimit', 'errorMessage' => 'The number of function configurations exceeds the limit. Please check the interface document to see the number of configurations that can be supported by a single function.', 'description' => 'The number of configuration items for the current function has exceeded the upper limit set by the system.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'title' => 'Add Site HTTPS Application Configuration', 'changeSet' => [ ['createdAt' => '2025-06-03T07:09:13.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-03-27T02:58:48.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateHttpsApplicationConfiguration'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateHttpsApplicationConfiguration', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\",\\n \\"ConfigId\\": 352816096987136\\n}","type":"json"}]', ], 'CreateHttpsBasicConfiguration' => [ 'summary' => 'Create HTTPS basic configuration for a site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257999', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID, which can be obtained by calling the [ListSites](~~ListSites~~) API.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '5407498413****', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'Rule name. This parameter does not need to be set when adding a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => ['description' => 'Rule switch. This parameter does not need to be set when adding a global configuration. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'Rule content, using conditional expressions to match user requests. This parameter does not need to be set when adding a global configuration. There are two usage scenarios:'."\n" .'- Match all incoming requests: set the value to true'."\n" .'- Match specified requests: set the value to a custom expression, for example: (http.host eq "video.example.com")', 'type' => 'string', 'required' => false, 'example' => '(http.host eq \\"video.example.com\\")'."\n", 'title' => ''], ], [ 'name' => 'Https', 'in' => 'query', 'schema' => ['description' => 'Whether to enable HTTPS. Enabled by default. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Tls10', 'in' => 'query', 'schema' => ['description' => 'Whether to enable TLS 1.0. Disabled by default. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Tls11', 'in' => 'query', 'schema' => ['description' => 'Whether to enable TLS 1.1. Enabled by default. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Tls12', 'in' => 'query', 'schema' => ['description' => 'Whether to enable TLS 1.2. Enabled by default. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Tls13', 'in' => 'query', 'schema' => ['description' => 'Whether to enable TLS 1.3. Enabled by default. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'CiphersuiteGroup', 'in' => 'query', 'schema' => ['description' => 'Cipher suite group. All cipher suites are used by default. Valid values:'."\n" .'- all: all cipher suites.'."\n" .'- strict: strong cipher suites.'."\n" .'- custom: custom cipher suites.', 'type' => 'string', 'required' => false, 'example' => 'all', 'title' => ''], ], [ 'name' => 'Ciphersuite', 'in' => 'query', 'schema' => ['description' => 'Custom cipher suite, specifying the specific encryption algorithms selected when CiphersuiteGroup is set to custom.', 'type' => 'string', 'required' => false, 'example' => 'TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256', 'title' => ''], ], [ 'name' => 'OcspStapling', 'in' => 'query', 'schema' => ['description' => 'Whether to enable OCSP stapling. Disabled by default. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Http2', 'in' => 'query', 'schema' => ['description' => 'Whether to enable HTTP/2. Enabled by default. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Http3', 'in' => 'query', 'schema' => ['description' => 'Whether to enable HTTP/3. Enabled by default. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'Rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'], 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '352816096987136', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'ConfExceedLimit', 'errorMessage' => 'The number of function configurations exceeds the limit. Please check the interface document to see the number of configurations that can be supported by a single function.', 'description' => 'The number of configuration items for the current function has exceeded the upper limit set by the system.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\",\\n \\"ConfigId\\": 352816096987136\\n}","type":"json"}]', 'title' => 'Create HTTPS basic configuration for a site', 'description' => 'A site supports only one global configuration (without Rule-related parameters). To exceed this limit, you must provide the RuleName, Rule, and RuleEnable parameters to create a rule-based configuration.', 'changeSet' => [ ['createdAt' => '2025-03-27T02:58:48.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateHttpsBasicConfiguration'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateHttpsBasicConfiguration', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'CreateImageTransform' => [ 'summary' => 'Creates an image transformation configuration for a site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257352', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. For sites with configuration version management enabled, you can use this parameter to specify the site version on which the configuration takes effect. The default value is 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'Enable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable image transformation. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The rule name. This parameter is not required when you add a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable the rule. This parameter is not required when you add a global configuration. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The rule content, which uses a conditional expression to match user requests. This parameter is not required when you add a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: Set the value to true.'."\n" .'- Match specified requests: Set the value to a custom expression, such as (http.host eq \\"video.example.com\\").', 'type' => 'string', 'required' => false, 'example' => '(http.request.uri.path.file_name eq \\"jpg\\")', 'title' => ''], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The execution order of the rule. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'AutoWebp', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'Specifies whether to enable adaptive WebP. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'required' => false], ], [ 'name' => 'AutoAvif', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'Specifies whether to enable adaptive AVIF. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9'], 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '352816096987136', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'ConfExceedLimit', 'errorMessage' => 'The number of function configurations exceeds the limit. Please check the interface document to see the number of configurations that can be supported by a single function.', 'description' => 'The number of configuration items for the current function has exceeded the upper limit set by the system.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"ConfigId\\": 352816096987136\\n}","type":"json"}]', 'title' => 'Create site image transformation configuration', 'changeSet' => [ ['createdAt' => '2025-03-27T02:58:48.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateImageTransform'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateImageTransform', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'CreateKvNamespace' => [ 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238788', 'abilityTreeNodes' => ['FEATUREdcdnGMYWU5'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'Namespace', 'in' => 'formData', 'schema' => ['description' => 'The name of the KV namespace.', 'type' => 'string', 'required' => true, 'example' => 'test_namespace', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'formData', 'schema' => ['description' => 'An optional description for the KV namespace.', 'type' => 'string', 'required' => false, 'example' => 'this is a test namespace.', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status of the KV namespace. Valid values:'."\n" ."\n" .'- **online**: The namespace is available.'."\n" ."\n" .'- **delete**: The namespace is pending deletion.'."\n" ."\n" .'- **deleting**: The namespace is being deleted.'."\n" ."\n" .'- **deleted**: The namespace is deleted.', 'type' => 'string', 'example' => 'online', 'title' => ''], 'Namespace' => ['description' => 'The name of the KV namespace.', 'type' => 'string', 'maxLength' => 64, 'pattern' => '^[0-9a-zA-Z_-]+$', 'example' => 'test_namespace', 'title' => ''], 'NamespaceId' => ['description' => 'The ID of the KV namespace.', 'type' => 'string', 'example' => '657717877171818496', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F', 'title' => ''], 'Description' => ['description' => 'The description of the KV namespace.', 'type' => 'string', 'example' => 'this is a test namespace.', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidAccount.Malformed', 'errorMessage' => 'The specified account is invalid.', 'description' => 'The account number is not entered correctly, for example, the input is empty.'], ['errorCode' => 'InvalidNameSpace.Malformed', 'errorMessage' => 'The specified namespace is invalid.', 'description' => 'The bucket name is entered incorrectly, such as an empty string.'], ['errorCode' => 'InvalidKey.Malformed', 'errorMessage' => 'The specified key is invalid.', 'description' => 'Key name input error, such as entering an empty string.'], ['errorCode' => 'InvalidKey.ExceedsMaximum', 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', 'description' => 'The length of the requested key is too large.'], ['errorCode' => 'InvalidValue.ExceedsMaximum', 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', 'description' => 'The value deposited is too large.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidParameters', 'errorMessage' => 'The specified authentication parameters are invalid.', 'description' => 'Authentication parameter input error.'], ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ['errorCode' => 'Unauthorized.InvalidResource', 'errorMessage' => 'Resource authentication failed.', 'description' => ''], ['errorCode' => 'InvalidKey.ExceedsCapacity', 'errorMessage' => 'The maximum storage capacity of the Edge KV namespace has been reached. Delete unwanted key-value pairs to save the storage.', 'description' => 'The maximum storage capacity of the Edge KV namespace has been reached. Delete unwanted key-value pairs to save the storage.'], ], [ ['errorCode' => 'InvalidAccount.NotFound', 'errorMessage' => 'The specified account does not exist.', 'description' => 'The specified account does not exist.'], ['errorCode' => 'InvalidNameSpace.NotFound', 'errorMessage' => 'The specified namespace does not exist.', 'description' => ''], ['errorCode' => 'InvalidKey.NotFound', 'errorMessage' => 'The specified key does not exist.', 'description' => 'The specified key-value pair does not exist.'], ], 406 => [ ['errorCode' => 'InvalidNameSpace.Duplicate', 'errorMessage' => 'The specified namespace already exists.', 'description' => 'Specified storage space'], ['errorCode' => 'InvalidNameSpace.QuotaFull', 'errorMessage' => 'The maximum number of namespaces is exceeded.', 'description' => 'The number of storage spaces exceeds the capacity limit.'], ['errorCode' => 'InvalidKey.QuotaFull', 'errorMessage' => 'The total number of IP exceeds the quota.', 'description' => 'The total number of ip addresses exceeds the quota.'], ], 429 => [ ['errorCode' => 'TooQuickRequests', 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', 'description' => 'The modification or deletion of key-value pairs is too frequent.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'CreateKvNamespace', 'summary' => 'Creates a KV namespace in the current account.', 'changeSet' => [ ['createdAt' => '2025-04-03T01:43:48.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateKvNamespace'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:CreateKvNamespace', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Status\\": \\"online\\",\\n \\"Namespace\\": \\"test_namespace\\",\\n \\"NamespaceId\\": \\"657717877171818496\\",\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\",\\n \\"Description\\": \\"this is a test namespace.\\"\\n}","type":"json"}]', ], 'CreateList' => [ 'summary' => 'Creates a custom list. Custom lists are typically referenced by the rule matching engine for values used in various security policies to implement complex logic and control.', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239651', 'abilityTreeNodes' => ['FEATUREdcdnL8HX1L'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The name of the custom list.'."\n" ."\n" .'**Naming rules**: Only letters, digits, and underscores are supported (`^\\w{1,64}$`). The name must be 1 to 64 characters in length.', 'type' => 'string', 'required' => true, 'example' => 'example'], ], [ 'name' => 'Kind', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The kind of the custom list. This parameter specifies the type of the custom list.', 'type' => 'string', 'example' => 'ip', 'required' => false], ], [ 'name' => 'Description', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The description of the custom list. This parameter provides detailed information about the custom list.', 'type' => 'string', 'example' => 'a custom list', 'required' => false], ], [ 'name' => 'Items', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The list items. This parameter provides the specific item data for the list.', 'type' => 'array', 'items' => ['title' => '', 'description' => 'The list items. This parameter provides the specific item data for the list.', 'type' => 'string', 'example' => '10.1.1.1', 'required' => false], 'required' => false, 'example' => 'a custom list', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'Id' => ['title' => '', 'description' => 'The ID of the custom list. You can obtain this value by calling the [ListLists](~~2850217~~) operation.', 'type' => 'integer', 'format' => 'int64', 'example' => '40000001'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], 403 => [ ['errorCode' => '%s.NotSupport', 'errorMessage' => 'The specified resource type %s is not supported.', 'description' => 'The specified resource type is not supported. To use this type of resource, please contact us.'], ['errorCode' => '%s.OverQuota', 'errorMessage' => 'The quantity of %s exceeds the quota.', 'description' => 'The amount of this resource exceeds the quota. If you need to apply for more quota, please contact us.'], ['errorCode' => '%s.WrongValueMatched', 'errorMessage' => 'The value of specified parameter %s can not pass the matching check.', 'description' => 'The value of the specified parameter can not pass the matching check. If you determine that you need to use this parameter value, please contact us.'], ['errorCode' => 'List.Name.AlreadyExist', 'errorMessage' => 'The specified list name already exists.', 'description' => 'The specified list name is already used by another list.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"Id\\": 40000001\\n}","type":"json"}]', 'title' => 'Create a custom list', 'changeSet' => [ ['createdAt' => '2024-09-25T07:02:49.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T09:53:47.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateList'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateList', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'CreateLoadBalancer' => [ 'summary' => 'Creates a load balancer instance that supports custom routing policies, session persistence, monitoring configurations, and other advanced features.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238480', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The name of the load balancer. The name must be in a valid domain name format and must be a subdomain of the site.', 'type' => 'string', 'required' => true, 'example' => 'lb.example.com', 'title' => ''], ], [ 'name' => 'Enabled', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether the load balancer is enabled. Valid values:'."\n" ."\n" .'- true: Enabled.'."\n" .'- false: Not enabled.', 'enumValueTitles' => ['true' => 'Enabled.', 'false' => 'Not enabled.'], 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => '', ], ], [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~ListSites~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'AdaptiveRouting', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The cross-origin address pool back-to-origin configuration.', 'type' => 'object', 'properties' => [ 'FailoverAcrossPools' => ['description' => 'Specifies whether to enable cross-origin address pool failover. Valid values:'."\n" ."\n" .'- true: Enabled.'."\n" .'- false: Not enabled.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], 'OriginLevelRetry' => ['description' => 'Specifies whether to retry the next IP address when back-to-origin fails and the origin server is a domain name that resolves to multiple IP addresses.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], 'required' => false, 'example' => 'true', 'title' => '', ], ], [ 'name' => 'DefaultPools', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The list of default address pool IDs.', 'type' => 'array', 'items' => ['description' => 'The default address pool ID. The value is an integer.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '95223818027****', 'title' => ''], 'required' => true, 'example' => '123', 'title' => '', ], ], [ 'name' => 'FallbackPool', 'in' => 'query', 'schema' => ['description' => 'The fallback address pool ID. Traffic is directed to this pool when all other pools are unavailable.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123', 'title' => ''], ], [ 'name' => 'RandomSteering', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The weighted round-robin configuration that controls the traffic distribution weight across different address pools.', 'type' => 'object', 'properties' => [ 'DefaultWeight' => ['description' => 'The default round-robin weight applied to all address pools that do not have an individually specified weight. Valid values: integers from 0 to 100.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '50', 'title' => ''], 'PoolWeights' => [ 'description' => 'The weight configuration for each backend server pool. The key is the pool ID and the value is the weight coefficient. The weight coefficient represents the relative proportion of traffic distribution.', 'type' => 'object', 'required' => false, 'additionalProperties' => ['description' => 'The weight of a single origin address pool. Valid values: 0 to 100. A value of 0 indicates that no traffic is routed to this origin address pool.', 'type' => 'integer', 'format' => 'int32', 'example' => '50', 'title' => ''], 'title' => '', 'example' => '', ], ], 'required' => false, 'example' => '123', 'title' => '', ], ], [ 'name' => 'Rules', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The rule information.', 'type' => 'array', 'items' => [ 'description' => 'The rule struct.', 'type' => 'object', 'properties' => [ 'RuleName' => ['description' => 'The rule name. This parameter is not required when you add a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_1', 'title' => ''], 'Rule' => ['description' => 'The rule content that uses conditional expressions to match user requests. This parameter is not required when you add a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: Set the value to true.'."\n" .'- Match specified requests: Set the value to a custom expression, such as (http.host eq \\"video.example.com\\").', 'type' => 'string', 'required' => false, 'example' => '(http.request.method eq "GET" and http.request.version eq "HTTP/1.0") or (ip.geoip.country eq "CN") or (http.host eq "www.example.com")', 'title' => ''], 'RuleEnable' => ['description' => 'The rule switch. This parameter is not required when you add a global configuration. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], 'FixedResponse' => [ 'description' => 'The fixed response content returned after a rule is matched.', 'type' => 'object', 'properties' => [ 'ContentType' => ['description' => 'The Content-Type field in the HTTP header.', 'type' => 'string', 'required' => false, 'example' => 'application/octet-stream', 'title' => ''], 'Location' => ['description' => 'The location field in the HTTP response.', 'type' => 'string', 'required' => false, 'example' => 'http://www.example.com/index.html', 'title' => ''], 'MessageBody' => ['description' => 'The response body value.', 'type' => 'string', 'required' => false, 'example' => 'Hello World!', 'title' => ''], 'StatusCode' => ['description' => 'The response status code.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '200', 'title' => ''], ], 'required' => false, 'example' => '{"content_type": "application/json", "location": "www.example.com", "message_body": "Testing Hello", "status_code": 0}', 'title' => '', ], 'Overrides' => ['description' => 'The load balancing configuration that overwrites the corresponding fields in the load balancer configuration when a rule is matched. The specified fields overwrite the corresponding fields in the load balancer configuration.', 'type' => 'any', 'required' => false, 'example' => '{'."\n" .' "adaptive_routing": {'."\n" .' "failover_across_pools": true'."\n" .' },'."\n" .' "sub_region_pools": {'."\n" .' "AL,AT": ['."\n" .' 92298024898****,'."\n" .' 92304347804****'."\n" .' ],'."\n" .' "BG,BY": ['."\n" .' 92298024898****'."\n" .' ]'."\n" .' },'."\n" .' "default_pools": ['."\n" .' 92298024898****,'."\n" .' 92304347804****'."\n" .' ],'."\n" .' "fallback_pool": 92298024898****,'."\n" .' "location_strategy": {'."\n" .' "mode": "resolver_ip",'."\n" .' "prefer_ecs": "always"'."\n" .' },'."\n" .' "random_steering": {'."\n" .' "default_weight": 0.3,'."\n" .' "pool_weights": {'."\n" .' "92298024898****": 0.7,'."\n" .' "92304347804****": 0.8'."\n" .' }'."\n" .' },'."\n" .' "region_pools": {'."\n" .' "CN,SEAS": ['."\n" .' 92298024898****,'."\n" .' 92304347804****'."\n" .' ],'."\n" .' "SAF,SAS": ['."\n" .' 92304347804****'."\n" .' ]'."\n" .' },'."\n" .' "session_affinity": "ip",'."\n" .' "steering_policy": "geo",'."\n" .' "ttl": 30'."\n" .' }', 'title' => ''], 'Sequence' => ['description' => 'The rule execution order. This parameter is optional. If not specified, rules are executed in list order. If specified, the value must be a positive integer. A larger value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], 'Terminates' => ['description' => 'Specifies whether to stop executing subsequent rules. Valid values:'."\n" ."\n" .'- true: Stop executing subsequent rules.'."\n" .'- false: Continue executing subsequent rules. This is the default value.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'example' => '{'."\n" .' "ENAM": ['."\n" .' 12345678****'."\n" .' ],'."\n" .' "WNAM": ['."\n" .' 23456789****,'."\n" .' 23456789****'."\n" .' ]'."\n" .'}', 'title' => '', ], ], [ 'name' => 'SessionAffinity', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => [ 'description' => 'The session persistence mode. Valid values:'."\n" .'- off: disabled.'."\n" .'- ip: IP-based session persistence.'."\n" .'- cookie: cookie-based session persistence.'."\n" .'- http_header: HTTP header-based session persistence.', 'type' => 'string', 'enum' => [], 'required' => false, 'example' => 'ip', 'title' => '', ], ], [ 'name' => 'SteeringPolicy', 'in' => 'query', 'schema' => ['description' => 'The load balancing policy. Valid values:'."\n" ."\n" .'- geo: geo-based routing.'."\n" .'- random: weighted round-robin.'."\n" .'- order: primary/secondary mode.', 'type' => 'string', 'required' => true, 'example' => 'order', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the load balancer for management and identification purposes.', 'type' => 'string', 'required' => false, 'example' => 'Load Balancer Description', 'title' => ''], ], [ 'name' => 'Ttl', 'in' => 'query', 'schema' => ['description' => 'The TTL value, which specifies the time-to-live of the DNS record. Default value: 30 seconds. Valid values: 10 to 600.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '300', 'title' => ''], ], [ 'name' => 'Monitor', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The monitor configuration for health checks.', 'type' => 'object', 'properties' => [ 'Type' => ['description' => 'The monitor protocol type used for health checks. A value of off indicates that health checks are disabled. Valid values:'."\n" ."\n" .'- TCP'."\n" .'- UDP'."\n" .'- SMTP'."\n" .'- HTTPS'."\n" .'- HTTP'."\n" .'- ICMP Ping'."\n" .'- off', 'type' => 'string', 'required' => false, 'example' => 'HTTP', 'title' => ''], 'Method' => ['description' => 'The monitor request method, such as `GET`. This is the HTTP method used for health checks.', 'type' => 'string', 'required' => false, 'example' => 'GET', 'title' => ''], 'Port' => ['description' => 'The origin server port.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1921', 'title' => ''], 'Path' => ['description' => 'The monitor check path, such as `/healthcheck`. This is the URI of the request.', 'type' => 'string', 'required' => false, 'example' => '/health', 'title' => ''], 'Interval' => ['description' => 'The monitoring interval in seconds, such as `60`. This specifies the check frequency.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '60', 'title' => ''], 'Timeout' => ['description' => 'The health check timeout period. Unit: seconds. Valid values: 1 to 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5', 'title' => ''], 'ExpectedCodes' => ['description' => 'The expected status codes, such as `200,202`. These are the HTTP response codes that indicate success.', 'type' => 'string', 'required' => false, 'example' => '200', 'title' => ''], 'FollowRedirects' => ['description' => 'Specifies whether to follow redirects. Valid values:'."\n" ."\n" .'- true: Follow redirects.'."\n" .'- false: Do not follow redirects.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], 'ConsecutiveUp' => ['description' => 'The number of consecutive successful probes required to consider the check successful, such as `3`.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3', 'title' => ''], 'ConsecutiveDown' => ['description' => 'The number of consecutive failed probes required to consider the check failed, such as `5`.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5', 'title' => ''], 'Header' => ['description' => 'The header information included in the probe request. This is the HTTP header.', 'type' => 'any', 'required' => false, 'example' => ' {'."\n" .' "host": ['."\n" .' "example1.com",'."\n" .' "example2.com"'."\n" .' ]'."\n" .' }', 'title' => ''], 'MonitoringRegion' => [ 'description' => 'The region where the probe nodes are located. Default value: Global. Valid values:'."\n" ."\n" .'- Global: worldwide.'."\n" .'- ChineseMainland: the Chinese mainland.'."\n" .'- OutsideChineseMainland: worldwide (excluding the Chinese mainland).', 'enumValueTitles' => ['OutsideChineseMainland' => 'Worldwide (excluding the Chinese mainland)', 'ChineseMainland' => 'The Chinese mainland.', 'Global' => 'Worldwide.'], 'type' => 'string', 'required' => false, 'example' => 'Global', 'title' => '', ], ], 'required' => true, 'example' => 'order', 'title' => '', ], ], [ 'name' => 'SubRegionPools', 'in' => 'query', 'schema' => ['description' => 'The address pools mapped to secondary regions. If multiple secondary regions share the same set of address pools, you can concatenate the secondary region names with commas as the key.', 'type' => 'any', 'required' => false, 'example' => '{"AL,MO": [92298024898****],"CN-SH,CN-SX,CN-SC":[92304347804****,92843536908****]}', 'title' => ''], ], [ 'name' => 'RegionPools', 'in' => 'query', 'schema' => ['description' => 'The address pools mapped to primary regions.', 'type' => 'any', 'required' => false, 'example' => '{'."\n" .' "ENAM": ['."\n" .' 12345678****'."\n" .' ],'."\n" .' "WNAM": ['."\n" .' 23456789****,'."\n" .' 23456789****'."\n" .' ]'."\n" .'}', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F'."\n"], 'Id' => ['description' => 'The load balancer ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '99867648760****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'LoadBalancerQuotaCheckFailed', 'errorMessage' => 'Load balancer enable quota check failed.', 'description' => 'Your current plan cannot use the load balancer related functions. If you need to use it, upgrade the plan.'], ['errorCode' => 'LoadBalancerNumberExceedQuotaLimit', 'errorMessage' => 'The number of load balancers you have added has reached the limit of the plan quota. Please delete the unused load balancers or upgrade the plan and try again.', 'description' => 'The number of load balancers you have added has reached the limit of the plan quota. Please delete the unused load balancers or upgrade the plan and try again.'], ['errorCode' => 'LoadBalancerRuleQuotaCheckFailed', 'errorMessage' => 'Your current plan does not support configuring load balancer custom rules, or the load balancer rules you have added exceed the plan quota limit. Please upgrade the plan or delete the rules that are no longer in use and try again.', 'description' => 'Your current plan does not support configuring load balancer custom rules, or the load balancer rules you have added exceed the plan quota limit. Please upgrade the plan or delete the rules that are no longer in use and try again.'], ['errorCode' => 'LoadBalancerPolicyCheckFailed', 'errorMessage' => 'Your current plan does not support the load balancer scheduling policy. Upgrade the plan and try again.', 'description' => 'Your current plan does not support the load balancer scheduling policy. Upgrade the plan and try again.'], ['errorCode' => 'LoadBalancerHealthDetectionQuotaCheckFailed', 'errorMessage' => 'Your current plan does not allow you to configure the load balancer\'s health detection. Upgrade the plan and try again.', 'description' => 'Your current plan does not allow you to configure the load balancer\'s health detection. Upgrade the plan and try again.'], ['errorCode' => 'LoadBalancerHealthDetectionIntervalCheckFailed', 'errorMessage' => 'The configured load balancer health detection interval exceeds the quota range allowed by the plan. Please revise the interval within the range or upgrade the plan and try again.', 'description' => 'The configured load balancer health detection interval exceeds the quota range allowed by the plan. Please revise the interval within the range or upgrade the plan and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'MonitorExpectedBodyInvalid', 'errorMessage' => 'Invalid response body. Specify a response body that does not exceed 102,400 characters in length in your custom rule.', 'description' => 'Invalid response body. Specify a response body that does not exceed 102,400 characters in length in your custom rule.'], ['errorCode' => 'MonitorExpectedCodesInvalid', 'errorMessage' => 'Invalid expected status code for the probe.Make sure that you specify no more than 10 status codes in the probe settings, and each status code must be 3 to 4 characters in length.Examples: 200, 301, 3xx, 8000, and 88xx.', 'description' => 'Invalid expected status code for the probe.Make sure that you specify no more than 10 status codes in the probe settings, and each status code must be 3 to 4 characters in length.Examples: 200, 301, 3xx, 8000, and 88xx.'], ['errorCode' => 'MonitorHeaderInvalid', 'errorMessage' => 'Invalid request header for the probe. You can add up to 10 request headers, each with 1 to 9 values. The combined length of all headers and values cannot exceed 6,000 characters. You cannot configure the User-Agent header.', 'description' => 'The incoming monitor is carrying an illegal request header. Make sure that the number of request headers does not exceed 10, that each request header has a value length between 1 and 10, and that you must not use the User-Agent request header (which is reserved for internal specific scenarios). In addition, the total length of all request headers and their values must not exceed 6000 characters. Please check and correct the request header configuration and try again.'], ['errorCode' => 'MonitorMethodNotSupport', 'errorMessage' => 'Invalid HTTP method for the probe request. Valid values are GET and HEAD.', 'description' => 'Invalid HTTP method for the probe request. Valid values are GET and HEAD.'], ['errorCode' => 'MonitorPathNotSupport', 'errorMessage' => 'Invalid probe URL path.If you set the probe protocol to HTTP or HTTPS, make sure you specify a probe URL path that does not exceed 1,024 characters in length.', 'description' => 'Invalid probe URL path.If you set the probe protocol to HTTP or HTTPS, make sure you specify a probe URL path that does not exceed 1,024 characters in length.'], ['errorCode' => 'MonitorPortNotSupport', 'errorMessage' => 'Invalid probe port. Specify a valid port from 1 to 65535 for the probe request. Then, try again.', 'description' => 'The incoming monitor listening port is not supported. The port value range is [1-65535]. Please ensure that the port is within the value range and try again.'], ['errorCode' => 'MonitorRetriesInvalid', 'errorMessage' => 'Invalid number of probe retries. Specify an integer from 0 to 5. Then, try again.', 'description' => 'Invalid number of probe retries. Specify an integer from 0 to 5. Then try again.'], ['errorCode' => 'MonitorTimeoutInvalid', 'errorMessage' => 'Invalid timeout for the probe. Valid values are 1 to 10.', 'description' => 'Invalid timeout for the probe. Valid values are 1 to 10.'], ['errorCode' => 'MonitorTypeNotSupport', 'errorMessage' => 'Invalid protocol. Valid values are off, HTTP, HTTPS, TCP, UDP, ICMP Ping, and SMTP.', 'description' => 'Invalid protocol. Valid values are off, HTTP, HTTPS, TCP, UDP, ICMP Ping, and SMTP.'], ['errorCode' => 'OriginPoolNotExist', 'errorMessage' => 'The specified origin pool does not exist or does not belong to your account or website. Check and try again.', 'description' => 'The specified origin pool does not exist or does not belong to your account or website. Check and try again.'], ['errorCode' => 'LoadBalancerNameConflict', 'errorMessage' => 'The load balancer name or the hostname for the origin pool already exists. Try again with a unique name.', 'description' => 'The load balancer name or the hostname for the origin pool already exists. Try again with a unique name.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'SourceCircleExist', 'errorMessage' => 'The host record of the resource to be operated on is already the source station of another resource, or the source station of the current resource has been added as a host record. To avoid loopback, modify the host record or source station and retry.', 'description' => 'The host record of the resource to be operated on is already the source station of another resource, or the source station of the current resource has been added as a host record. To avoid loopback, modify the host record or source station and retry.'], ['errorCode' => 'LoadBalancer.NameInvalid', 'errorMessage' => 'The name of the Server Load Balancer instance is a valid domain name or belongs to the site. Check that it is correct and try again.', 'description' => 'The name of the Server Load Balancer instance is a valid domain name or belongs to the site. Check that it is correct and try again.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ], 403 => [ ['errorCode' => 'QuotaExceeded', 'errorMessage' => 'The quota is exceeded.', 'description' => 'The quota is exceeded.'], ], [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\\\n\\",\\n \\"Id\\": 0\\n}","type":"json"}]', 'title' => 'Create a load balancer', 'description' => 'Creates a load balancing service based on your business requirements. You can configure settings such as adaptive routing, weighted polling, rule matching, and health checks to effectively manage and optimize traffic.'."\n" ."\n" .'Only Enterprise plans support the load balancing service. To use this feature, contact Alibaba Cloud sales to apply for an Enterprise plan.', 'changeSet' => [ ['createdAt' => '2025-06-16T02:25:11.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-02-13T01:34:54.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-02-10T01:25:59.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateLoadBalancer'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateLoadBalancer', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'CreateNetworkOptimization' => [ 'summary' => 'Adds a network optimization configuration for a site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '258000', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~ListSites~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '340035003106221', 'title' => ''], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. For sites with configuration version management enabled, you can use this parameter to specify the site version on which the configuration takes effect. The default value is 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The rule name. This parameter is not required when you add a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => ['description' => 'The rule switch. This parameter is not required when you add a global configuration. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The rule content, which uses a conditional expression to match user requests. This parameter is not required when you add a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: set the value to true.'."\n" .'- Match specified requests: set the value to a custom expression, such as (http.host eq \\"video.example.com\\").', 'type' => 'string', 'required' => false, 'example' => '(http.host eq \\"video.example.com\\")'."\n", 'title' => ''], ], [ 'name' => 'SmartRouting', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable smart routing. This feature is disabled by default. Valid values:'."\n" .'- on: enabled'."\n" .'- off: disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Http2Origin', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable HTTP/2 back-to-origin. This feature is disabled by default. Valid values:'."\n" .'- on: enabled'."\n" .'- off: disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Websocket', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable WebSocket. This feature is enabled by default. Valid values:'."\n" .'- on: enabled'."\n" .'- off: disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Grpc', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable gRPC. This feature is disabled by default. Valid values:'."\n" .'- on: enabled'."\n" .'- off: disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'UploadMaxFilesize', 'in' => 'query', 'schema' => ['description' => 'The maximum upload file size, in MB. Valid values: 100 to 500.', 'type' => 'string', 'required' => false, 'example' => '100', 'title' => ''], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'], 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '352816096987136', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'ConfExceedLimit', 'errorMessage' => 'The number of function configurations exceeds the limit. Please check the interface document to see the number of configurations that can be supported by a single function.', 'description' => 'The number of configuration items for the current function has exceeded the upper limit set by the system.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\",\\n \\"ConfigId\\": 352816096987136\\n}","type":"json"}]', 'title' => 'Add site network optimization configuration', 'description' => 'The site plan must be Standard Edition or higher to use the WebSocket feature. When calling this API, you must provide at least one feature configuration parameter. Providing only SiteId returns an error.', 'changeSet' => [ ['createdAt' => '2025-03-27T02:58:48.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateNetworkOptimization'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateNetworkOptimization', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'CreateOriginPool' => [ 'summary' => 'Creates an origin pool for a site. You can then use the origin pool with a Server Load Balancer or for direct back-to-origin requests.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238443', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The name of the origin pool. The name must be unique within a site.', 'type' => 'string', 'required' => true, 'example' => 'pool1', 'title' => ''], ], [ 'name' => 'Enabled', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the origin pool is enabled.'."\n" ."\n" .'- `true`: enabled'."\n" ."\n" .'- `false`: disabled', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'Origins', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The list of origins to add to the origin pool. Use an array to specify multiple origins.', 'type' => 'array', 'items' => [ 'description' => 'The configuration for a single origin.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the origin. The name must be unique within the origin pool.', 'type' => 'string', 'required' => false, 'example' => 'origin1', 'title' => ''], 'Address' => ['description' => 'The address of the origin. For example, www\\.example.com.', 'type' => 'string', 'required' => false, 'example' => 'www.example.com', 'title' => ''], 'Enabled' => ['description' => 'Specifies whether the origin is enabled.'."\n" ."\n" .'- `true`: enabled'."\n" ."\n" .'- `false`: disabled', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], 'Header' => ['description' => 'The request header to include in back-to-origin requests. Only the `Host` header is supported.', 'type' => 'any', 'required' => false, 'example' => '{'."\n" .' "Host": ['."\n" .' "example.com"'."\n" .' ]'."\n" .' }', 'title' => ''], 'Weight' => ['description' => 'The weight of the origin. The value must be an integer from 0 to 100.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '50', 'title' => ''], 'Type' => ['description' => 'The type of the origin. Valid values:'."\n" ."\n" .'- `ip_domain`: An IP address or a domain name.'."\n" ."\n" .'- `OSS`: An Alibaba Cloud OSS bucket.'."\n" ."\n" .'- `S3`: An AWS S3 bucket.', 'type' => 'string', 'required' => false, 'example' => 'ip_domain', 'title' => ''], 'AuthConf' => [ 'description' => 'The authentication configuration for the origin. Required if the origin is an OSS or AWS S3 bucket that requires authentication.', 'type' => 'object', 'properties' => [ 'AuthType' => ['description' => 'The authentication type. Valid values:'."\n" ."\n" .'- `public`: Public read/write. Use this for public OSS or AWS S3 buckets.'."\n" ."\n" .'- `private_same_account`: Private authentication for an OSS bucket in the same Alibaba Cloud account.'."\n" ."\n" .'- `private_cross_account`: Private authentication for an OSS bucket in a different Alibaba Cloud account.'."\n" ."\n" .'- `private`: Private authentication for an AWS S3 bucket.', 'type' => 'string', 'required' => false, 'example' => 'public', 'title' => ''], 'AccessKey' => ['description' => 'The access key required for private authentication.', 'type' => 'string', 'required' => false, 'example' => 'yourAccessKeyID', 'title' => ''], 'SecretKey' => ['description' => 'The secret key required for private authentication.', 'type' => 'string', 'required' => false, 'example' => 'yourAccessKeySecret', 'title' => ''], 'Version' => ['description' => 'The signature version. Required for AWS S3 origins.', 'type' => 'string', 'required' => false, 'example' => 'v2', 'title' => ''], 'Region' => ['description' => 'The region of the origin. Required for AWS S3 origins.', 'type' => 'string', 'required' => false, 'example' => 'us-east-1', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'IpVersionPolicy' => ['description' => 'The IP protocol version for back-to-origin requests. Valid values:'."\n" ."\n" .'- `round_robin`: Default. Randomly selects an IPv4 or IPv6 origin.'."\n" ."\n" .'- `ipv4_first`: Prioritizes IPv4 origins.'."\n" ."\n" .'- `ipv6_first`: Prioritizes IPv6 origins.'."\n" ."\n" .'- `follow`: Uses the same IP protocol version as the client\'s request.', 'type' => 'string', 'required' => false, 'example' => 'round_robin', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. To obtain this ID, call the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '21655860979****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Response schema', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-A198-72F8FD6DA2FE'."\n"], 'Id' => ['description' => 'The origin pool ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '103852052519****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'SourceNumberExceedLimit', 'errorMessage' => 'The number of sources in the origin pool exceeds the quota limit.', 'description' => 'The number of sources that can be created in the origin pool has reached the upper limit of the package. Please check your package quota and upgrade the package to obtain more quota.'], ['errorCode' => 'PoolNumberExceedQuotaLimit', 'errorMessage' => 'The number of origin pool you have added has reached the upper limit of the plan quota. Please delete the origin pool that is no longer in use or upgrade the plan and try again.', 'description' => 'The number of origin pool you have added has reached the upper limit of the plan quota. Please delete the origin pool that is no longer in use or upgrade the plan and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.AddressConflict', 'errorMessage' => 'Duplicate origin addresses. Make sure that each origin address for the same pool is unique.', 'description' => 'Duplicate origin addresses. Make sure that each origin address for the same pool is unique.'], ['errorCode' => 'OriginPoolNameConflict', 'errorMessage' => 'The specified origin pool name already exists or its hostname conflicts with a load balancer name. Try again with a unique name.', 'description' => 'The specified origin pool name already exists or its hostname conflicts with a load balancer name. Try again with a unique name.'], ['errorCode' => 'SourceAddressInvalid', 'errorMessage' => 'Invalid origin address. Check whether the IP address or domain name is in the valid format.', 'description' => 'Invalid origin address. Check whether the IP address or domain name is in the valid format.'], ['errorCode' => 'SourceCircleExist', 'errorMessage' => 'The host record of the resource to be operated on is already the source station of another resource, or the source station of the current resource has been added as a host record. To avoid loopback, modify the host record or source station and retry.', 'description' => 'The host record of the resource to be operated on is already the source station of another resource, or the source station of the current resource has been added as a host record. To avoid loopback, modify the host record or source station and retry.'], ['errorCode' => 'SourceInBlackList', 'errorMessage' => 'The source is in the black list.', 'description' => 'The source is in the black list.'], ['errorCode' => 'InvalidParameter.PrivateIpAsSourceUnsupported', 'errorMessage' => 'The provided origin is an invalid private IP address. Please verify and resubmit.', 'description' => 'The provided origin is an invalid private IP address. Please verify and resubmit.'], ['errorCode' => 'InvalidParameter.SourceIpInBlacklist', 'errorMessage' => 'The provided origin is an invalid private IP address. Please verify and resubmit.', 'description' => 'The provided origin is an invalid private IP address. Please verify and resubmit.'], ['errorCode' => 'OriginPool.TypeNotSupport', 'errorMessage' => 'The origin address pool type is not supported.', 'description' => 'The origin address pool type is not supported.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-A198-72F8FD6DA2FE\\\\n\\",\\n \\"Id\\": 0\\n}","type":"json"}]', 'title' => 'Create Origin Address Pool', 'description' => 'You can add multiple origins to an origin pool, such as a domain name, IP, OSS, or S3. Back-to-origin authentication is available for OSS and S3 origins.', 'changeSet' => [ ['createdAt' => '2025-05-20T11:43:19.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateOriginPool'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateOriginPool', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'CreateOriginProtection' => [ 'summary' => 'Enables origin protection.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '250009', 'abilityTreeNodes' => ['FEATUREdcdn4VDL9A'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~2850189~~) operation. The plan associated with the site must support the origin protection feature.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'AutoConfirmIPList', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'Specifies whether to automatically enable the latest back-to-origin IP addresses list. Valid values:'."\n" .'- off: Do not automatically enable.'."\n" .'- on: Automatically enable.', 'enumValueTitles' => ['off' => 'not automatically enabled.', 'on' => 'automatically enabled.'], 'type' => 'string', 'example' => 'off', 'default' => 'off', 'enum' => ['on', 'off'], 'required' => false, ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-A198-72F8FD6DA2FE'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-A198-72F8FD6DA2FE\\"\\n}","type":"json"}]', 'title' => 'Enable origin protection', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateOriginProtection'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateOriginProtection', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'CreateOriginRule' => [ 'summary' => 'Create a Back-to-Origin Rule for a Site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '258002', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The ID of the site. You can obtain this ID by calling the [ListSites](~~ListSites~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '340035003106221', 'title' => ''], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'For sites with version management enabled, this specifies the version to which the configuration applies. The default value is 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The rule name. Not required when creating a Global Configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable the rule. Not required when creating a Global Configuration. Valid values:'."\n" ."\n" .'- `on`: Enables the rule.'."\n" ."\n" .'- `off`: Disables the rule.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The content of the rule, a Conditional Expression that matches user requests. Not required when creating a Global Configuration. There are two scenarios:'."\n" ."\n" .'- To match all incoming requests, set the value to `true`.'."\n" ."\n" .'- To match specific requests, set the value to a custom expression. Example: `(http.host eq "video.example.com")`.', 'type' => 'string', 'required' => false, 'example' => '(http.host eq \\"video.example.com\\")'."\n", 'title' => ''], ], [ 'name' => 'OriginHost', 'in' => 'query', 'schema' => ['description' => 'The `Host` header to use in Origin requests.', 'type' => 'string', 'required' => false, 'example' => 'origin.example.com'."\n", 'title' => ''], ], [ 'name' => 'OriginScheme', 'in' => 'query', 'schema' => ['description' => 'The protocol for Origin requests. Valid values:'."\n" ."\n" .'- `http`: Uses the HTTP protocol.'."\n" ."\n" .'- `https`: Uses the HTTPS protocol.'."\n" ."\n" .'- `follow`: Uses the same protocol as the client request.', 'type' => 'string', 'required' => false, 'example' => 'http', 'title' => ''], ], [ 'name' => 'OriginSni', 'in' => 'query', 'schema' => ['description' => 'The Server Name Indication (SNI) to use in Origin requests.', 'type' => 'string', 'required' => false, 'example' => 'origin.example.com', 'title' => ''], ], [ 'name' => 'DnsRecord', 'in' => 'query', 'schema' => ['description' => 'Overrides the DNS Record for Origin requests.', 'type' => 'string', 'required' => false, 'example' => 'test.example.com'."\n", 'title' => ''], ], [ 'name' => 'OriginHttpPort', 'in' => 'query', 'schema' => ['description' => 'The Origin Port to use for HTTP Origin requests.', 'type' => 'string', 'required' => false, 'example' => '8080', 'title' => ''], ], [ 'name' => 'OriginHttpsPort', 'in' => 'query', 'schema' => ['description' => 'The Origin Port to use for HTTPS Origin requests.', 'type' => 'string', 'required' => false, 'example' => '4433', 'title' => ''], ], [ 'name' => 'Range', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to use range requests to download files from the Origin. Valid values:'."\n" ."\n" .'- `on`: Enables range requests.'."\n" ."\n" .'- `off`: Disables range requests.'."\n" ."\n" .'- `force`: Forces range requests.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'OriginMtls', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable mutual Transport Layer Security (mTLS) for Origin connections. Valid values:'."\n" ."\n" .'- `on`: Enables mTLS.'."\n" ."\n" .'- `off`: Disables mTLS.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'OriginVerify', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable Origin Certificate Verification. Valid values:'."\n" ."\n" .'- `on`: Enables verification.'."\n" ."\n" .'- `off`: Disables verification.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'RangeChunkSize', 'in' => 'query', 'schema' => ['description' => 'The size of each chunk for range requests. Valid values:'."\n" ."\n" .'- `512KB`'."\n" ."\n" .'- `1MB`'."\n" ."\n" .'- `2MB`'."\n" ."\n" .'- `4MB`', 'type' => 'string', 'required' => false, 'example' => '1MB', 'title' => ''], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The priority of the rule. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'OriginReadTimeout', 'in' => 'query', 'schema' => ['description' => 'The Origin read timeout in seconds.', 'type' => 'string', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'Follow302Enable', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to follow 302 redirects from the Origin. Valid values:'."\n" ."\n" .'- `on`: Enables following redirects.'."\n" ."\n" .'- `off`: Disables following redirects.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Follow302MaxTries', 'in' => 'query', 'schema' => ['description' => 'The maximum number of 302 redirects to follow. Valid range: 1 to 5.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'Follow302RetainArgs', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to retain the original request parameters when following a 302 redirect. Valid values:'."\n" ."\n" .'- `on`: Retains the request parameters.'."\n" ."\n" .'- `off`: Does not retain the request parameters.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Follow302RetainHeader', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to retain the original request header when following a 302 redirect. Valid values:'."\n" ."\n" .'- `on`: Retains the request header.'."\n" ."\n" .'- `off`: Does not retain the request header.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Follow302TargetHost', 'in' => 'query', 'schema' => ['description' => 'The Origin `Host` header to use after a 302 redirect.', 'type' => 'string', 'required' => false, 'example' => 'test.com', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response object.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'], 'ConfigId' => ['description' => 'The ID of the configuration.', 'type' => 'integer', 'format' => 'int64', 'example' => '352816096987136', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'ConfExceedLimit', 'errorMessage' => 'The number of function configurations exceeds the limit. Please check the interface document to see the number of configurations that can be supported by a single function.', 'description' => 'The number of configuration items for the current function has exceeded the upper limit set by the system.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'title' => 'Add Origin Rule Configuration for Site', 'changeSet' => [ ['createdAt' => '2025-04-17T08:47:33.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-04-01T01:57:04.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-03-27T02:58:48.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-03-20T05:57:46.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-02-27T09:16:40.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateOriginRule'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateOriginRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\",\\n \\"ConfigId\\": 352816096987136\\n}","type":"json"}]', ], 'CreatePage' => [ 'summary' => 'Creates a custom error response page. When a user request is blocked by Web Application Firewall (WAF), these custom error pages can be displayed. You can configure the page HTML content, page type, description, and other information, and submit the page content in BASE64 encoding.', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239648', 'abilityTreeNodes' => ['FEATUREdcdnL8HX1L'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The name of the custom page.'."\n" ."\n" .'**Naming suggestions**: Use a short name that consists of letters, digits, and underscores, such as `blocked_page_v1`, for easy reference in rules. The specific character set, maximum length, uniqueness, and other constraints are **subject to the server-side custom page naming specifications**.', 'type' => 'string', 'required' => true, 'example' => 'example'], ], [ 'name' => 'Description', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The description of the page, used to identify the purpose of the page in the console list.'."\n" ."\n" .'**Suggested content**: Use the scenarios and identity information of the page, such as "CC protection block page - Chinese version". This is an optional field. If not specified, the value is empty by default.'."\n" ."\n" .'> The maximum field length is subject to the server-side specifications.', 'type' => 'string', 'example' => 'a custom deny page', 'required' => false], ], [ 'name' => 'ContentType', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The MIME type of the page content. This value is returned to the client as the HTTP `Content-Type` response header after a match.'."\n" ."\n" .'**Common values**:'."\n" .'- `text/html`: HTML page. The `Content` parameter must be set to the BASE64-encoded value of UTF-8 HTML text.'."\n" .'- `application/json`: JSON response. The `Content` parameter must be set to the BASE64-encoded value of a valid JSON string.'."\n" .'- `text/plain`: plain text. The `Content` parameter must be set to the BASE64-encoded value of plain text content.'."\n" ."\n" .'> Note: The complete list of supported ContentType values is subject to the server-side specifications. If the specified `ContentType` does not match the actual format of `Content`, the client may fail to render the page properly.', 'type' => 'string', 'required' => true, 'example' => 'text/html'], ], [ 'name' => 'Content', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The BASE64-encoded page content. The actual content format must match the value of `ContentType`.'."\n" ."\n" .'**Encoding method**:'."\n" .'1. Encode the original page content into a byte string by using UTF-8 encoding.'."\n" .'2. Apply standard BASE64 encoding to the byte string.'."\n" ."\n" .'**Example**:'."\n" .'- Original content: `hello page`'."\n" .'- BASE64: `PGh0bWw+aGVsbG8gcGFnZTwvaHRtbD4=`'."\n" ."\n" .'> The maximum size, supported character sets, and security filtering rules are subject to the server-side custom page specifications.', 'type' => 'string', 'required' => false, 'example' => 'PGh0bWw+aGVsbG8gcGFnZTwvaHRtbD4='], ], [ 'name' => 'SiteIds', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The list of website IDs to associate with this custom page.'."\n" ."\n" .'- You can obtain website IDs by calling the `ListSites` operation.'."\n" .'- If you pass an empty list (no websites are associated), the page is still created but does not take effect. You can call the `UpdatePage` operation later to associate websites.'."\n" .'- If the list contains a website ID that does not belong to the current account, an `InvalidParameter` error is returned.', 'type' => 'array', 'items' => ['title' => '', 'description' => 'The associated website ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'required' => false], 'required' => false, 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'Id' => ['title' => '', 'description' => 'The ID of the custom response page. You can obtain the ID by calling the [ListPages](~~2850223~~) operation.', 'type' => 'integer', 'format' => 'int64', 'example' => '50000001'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], 403 => [ ['errorCode' => '%s.NotSupport', 'errorMessage' => 'The specified resource type %s is not supported.', 'description' => 'The specified resource type is not supported. To use this type of resource, please contact us.'], ['errorCode' => '%s.OverQuota', 'errorMessage' => 'The quantity of %s exceeds the quota.', 'description' => 'The amount of this resource exceeds the quota. If you need to apply for more quota, please contact us.'], ['errorCode' => '%s.WrongValueMatched', 'errorMessage' => 'The value of specified parameter %s can not pass the matching check.', 'description' => 'The value of the specified parameter can not pass the matching check. If you determine that you need to use this parameter value, please contact us.'], ['errorCode' => 'Page.SiteAlreadyBound', 'errorMessage' => 'The specified site has already been associated with another custom error page of the same type. Dissociate the site from the existing page and try again.', 'description' => 'The specified site is already bound to another custom response page of the same type. Please first unbind the site from the existing page and then try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"Id\\": 50000001\\n}","type":"json"}]', 'title' => 'Create a custom response page', 'changeSet' => [ ['createdAt' => '2024-09-25T07:02:49.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T09:53:47.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreatePage'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreatePage', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'CreateRecord' => [ 'summary' => 'Create a DNS record under a site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239598', 'abilityTreeNodes' => ['FEATUREdcdnVFT29S'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~2850189~~) API.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'RecordName', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'The record name.', 'type' => 'string', 'required' => true, 'example' => 'www.example.com'], ], [ 'name' => 'Proxied', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'Specifies whether to enable proxy acceleration for the record. Only CNAME records or A/AAAA records (i.e., when the type parameter is set to A/AAAA or CNAME) can enable proxy acceleration. Valid values:'."\n" .'- **true**: Enable proxy acceleration.'."\n" .'- **false**: Disable proxy acceleration.', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ 'name' => 'Type', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'The DNS type of the record, such as **A/AAAA**, **CNAME**, **TXT**, etc.', 'type' => 'string', 'required' => true, 'example' => 'A/AAAA'], ], [ 'name' => 'SourceType', 'in' => 'query', 'schema' => ['description' => 'The origin type of the CNAME record. This parameter is required when adding a CNAME record (i.e., when the type parameter is set to CNAME). Valid values:'."\n" ."\n" .'- **OSS**: OSS origin.'."\n" .'- **S3**: S3 origin.'."\n" .'- **LB**: Load balancer origin.'."\n" .'- **OP**: Origin pool origin.'."\n" .'- **Domain**: Standard domain origin.'."\n" ."\n" .'If this parameter is not specified or is left empty, it defaults to Domain, which is the standard domain origin type.', 'type' => 'string', 'required' => false, 'example' => 'OSS', 'title' => ''], ], [ 'name' => 'BizName', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'Used to tag the business scenario of the DNS record. This parameter is required when proxy acceleration is enabled for the DNS record (i.e., when the proxied parameter is set to true), and is not required when proxy acceleration is disabled (i.e., when the proxied parameter is set to false). Valid values:'."\n" .'- **image_video**: Image and video.'."\n" .'- **api**: API.'."\n" .'- **web**: Web page.', 'type' => 'string', 'required' => false, 'example' => 'web'], ], [ 'name' => 'Ttl', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The time-to-live (TTL) of the record, in seconds. When set to 1, the TTL is automatic.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '30', 'title' => ''], ], [ 'name' => 'Data', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The DNS information of the record. Different types of records require different content for this field. For more information, see'."\n" .'[Documentation](~~2708761~~)[Documentation](https://www.alibabacloud.com/help/doc-detail/2708761.html)'."\n" .'.', 'type' => 'object', 'properties' => [ 'Value' => ['description' => 'The record value or partial content. This parameter is required when the record type is A/AAAA, CNAME, NS, MX, TXT, CAA, SRV, or URI. It represents different meanings for different record types:'."\n" ."\n" .'- **A/AAAA**: The IP address to point to. Multiple IPs are separated by commas (,). At least one IPv4 address is required.'."\n" .'- **CNAME**: The target domain name to point to.'."\n" .'- **NS**: The name server for the specified domain.'."\n" .'- **MX**: A valid target mail server domain name.'."\n" .'- **TXT**: A valid text string.'."\n" .'- **CAA**: A valid certificate authority domain name.'."\n" .'- **SRV**: A valid target host domain name.'."\n" .'- **URI**: A valid URI string.', 'type' => 'string', 'required' => false, 'example' => 'example.com', 'title' => ''], 'Priority' => ['description' => 'The priority of the record, ranging from **0 to 65535**. A smaller value indicates a higher priority. This parameter is required when adding MX, SRV, or URI records.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], 'Flag' => ['description' => 'The flag of the record. The Flag of a CAA record indicates its priority and processing method, with a value range of **0 to 255**. This parameter is required when adding a CAA record.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '128', 'title' => ''], 'Tag' => ['description' => 'The tag of the record. The Tag of a CAA record indicates its specific type and purpose. This parameter is required when adding a CAA record. Valid values for Tag:'."\n" .'- **issue**: Authorizes a specific CA to issue certificates for the domain. It is usually followed by the CA\'s domain name.'."\n" .'- **issuewild**: Authorizes a specific CA to issue wildcard certificates for the domain (e.g., *.example.com).'."\n" .'- **iodef**: Specifies a URI for receiving reports about violations of CAA records.', 'type' => 'string', 'required' => false, 'example' => 'issue', 'title' => ''], 'Weight' => ['description' => 'The weight of the record, ranging from **0 to 65535**. This parameter is required when adding SRV or URI records.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], 'Port' => ['description' => 'The port of the record, ranging from **0 to 65535**. This parameter is required when adding an SRV record.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], 'Type' => ['description' => 'The certificate type of the record (for CERT records) or the public key type (for SSHFP records). This parameter is required when adding CERT or SSHFP records.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], 'KeyTag' => ['description' => 'The public key identifier of the record, ranging from **0 to 65535**. This parameter is required when adding a CERT record.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], 'Algorithm' => ['description' => 'The encryption algorithm used by the record, ranging from **0 to 255**. This field is required when adding CERT or SSHFP records.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], 'Certificate' => ['description' => 'The public key certificate information of the record. This parameter is required when adding CERT, SMIMEA, or TLSA records.', 'type' => 'string', 'required' => false, 'example' => 'dGVzdGFkYWxrcw==', 'title' => ''], 'Usage' => ['description' => 'The usage identifier of the record, ranging from **0 to 255**. This parameter is required when adding SMIMEA or TLSA records.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], 'Selector' => ['description' => 'The type of certificate or public key used by the record, ranging from **0 to 255**. This parameter is required when adding SMIMEA or TLSA records.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], 'MatchingType' => ['description' => 'The algorithm policy used by the record to match or verify certificates, ranging from **0 to 255**. This parameter is required when adding SMIMEA or TLSA records.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], 'Fingerprint' => ['description' => 'The public key fingerprint value of the record. This parameter is required when adding an SSHFP record.', 'type' => 'string', 'required' => false, 'example' => 'abcdef1234567890', 'title' => ''], ], 'required' => true, 'example' => '{'."\n" .' "value":"2.2.2.2"'."\n" .'}', 'title' => '', ], ], [ 'name' => 'Comment', 'in' => 'query', 'schema' => ['description' => 'The comment for the record, with a maximum length of 100 characters.', 'type' => 'string', 'required' => false, 'example' => 'This is a remark.', 'title' => ''], ], [ 'name' => 'AuthConf', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The origin authentication information for the CNAME record.', 'type' => 'object', 'properties' => [ 'AuthType' => ['description' => 'The origin authentication type. Different origin types support different authentication types. The origin type refers to the SourceType parameter in this API. When the origin type is OSS or S3, you need to specify the origin authentication type. Valid values:'."\n" .'- **public**: Public read. Select this value when the origin type is OSS or S3 and the origin has public read access.'."\n" .'- **private**: Private read. Select this value when the origin type is S3 and the origin has private read access.'."\n" .'- **private_same_account**: Private same-account read. Select this value when the origin type is OSS, the origin is under the same Alibaba Cloud account, and the origin has private read access.'."\n" .'- **private_cross_account**: Private cross-account read. Select this value when the origin type is OSS, the origin is not under the same Alibaba Cloud account, and the origin has private read access.', 'type' => 'string', 'required' => false, 'example' => 'private', 'title' => ''], 'AccessKey' => ['description' => 'The AccessKey of the account that owns the origin. This value is required when the origin type is OSS and the authentication type is private cross-account read, or when the origin type is S3 and the authentication type is private read.', 'type' => 'string', 'required' => false, 'example' => 'u0Nkg5gBK*******QF5wvKMM504JUHt', 'title' => ''], 'SecretKey' => ['description' => 'The SecretKey of the account that owns the origin. This value is required when the origin type is OSS and the authentication type is private cross-account read, or when the origin type is S3 and the authentication type is private read.', 'type' => 'string', 'required' => false, 'example' => 'VIxuvJSA2S03f******kp208dy5w7', 'title' => ''], 'Version' => ['description' => 'The signature algorithm version. This is required when the origin type is S3 and the authentication type is private read. The following two versions are supported:'."\n" .'- **v2**'."\n" .'- **v4**'."\n" ."\n" .'If not specified, the default value is v4.', 'type' => 'string', 'required' => false, 'example' => 'v4', 'title' => ''], 'Region' => ['description' => 'The region where the origin is located. This value is required when the origin type is S3. The region information can be obtained from the official S3 website.', 'type' => 'string', 'required' => false, 'example' => 'us-east-1', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'HostPolicy', 'in' => 'query', 'schema' => [ 'description' => 'The origin host policy. This takes effect when the record type is CNAME. It specifies the host policy for back-to-origin requests. Two modes are available:'."\n" ."\n" .'- **follow_hostname**: Follow the request host.'."\n" .'- **follow_origin_domain**: Follow the origin domain.', 'type' => 'string', 'enum' => [], 'required' => false, 'example' => 'follow_origin_domain', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'F61CDR30-E83C-4FDA-BF73-9A94CDD44229', 'title' => ''], 'RecordId' => ['description' => 'The ID of the created record.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.InvalidRecordName', 'errorMessage' => 'The record name you entered does not meet the specifications. Change the record name according to the product documentation.', 'description' => 'The record name you entered does not meet the specifications. Please adjust the record name according to the product documentation.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.RecordData', 'errorMessage' => 'Invalid record content. Adjust your configurations based on the API documentation.', 'description' => 'Invalid record content. Adjust your configurations based on the API documentation.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'QuotaExceed.RecordCount', 'errorMessage' => 'The maximum number of records has been reached. Delete some and try again or upgrade your plan.', 'description' => 'The maximum number of records has been reached. Delete some and try again or upgrade your plan.'], ['errorCode' => 'Record.Conflict', 'errorMessage' => 'The specified record content conflicts with existing records. Adjust your configurations based on the related product documentation.', 'description' => 'The specified record content conflicts with existing records. Adjust your configurations based on the related product documentation.'], ['errorCode' => 'Site.ServiceBusy', 'errorMessage' => 'This website is being configured. Try again later.', 'description' => 'This website is being configured. Try again later.'], ['errorCode' => 'SourceCircleExist', 'errorMessage' => 'The host record of the resource to be operated on is already the source station of another resource, or the source station of the current resource has been added as a host record. To avoid loopback, modify the host record or source station and retry.', 'description' => 'The host record of the resource to be operated on is already the source station of another resource, or the source station of the current resource has been added as a host record. To avoid loopback, modify the host record or source station and retry.'], ['errorCode' => 'QuotaExceed.WildCardRecord', 'errorMessage' => 'The maximum number of wildcard records has been reached. Delete some and try again.', 'description' => 'The maximum number of wildcard records has been reached. Delete some and try again.'], ['errorCode' => 'Record.NoResource', 'errorMessage' => 'Failed to allocate resources for the record. Please submit a ticket for processing.', 'description' => 'Failed to allocate resources for the record. Please submit a work order for processing.'], ['errorCode' => 'InvalidParameter.InvalidBiz', 'errorMessage' => 'The incoming parameter value of the business type is empty or incorrect.', 'description' => 'The incoming parameter value of the business type is empty or incorrect.'], ['errorCode' => 'Record.RecordValueContainSourceInBlacklist', 'errorMessage' => 'The record value contains the blacklist address, and the details can be submitted for work order consultation.', 'description' => 'The record value contains the blacklist address, and the details can be submitted for work order consultation.'], ['errorCode' => 'InvalidParameter.InvalidRecordNameSuffix', 'errorMessage' => 'If you add other records, the suffix of the host record must be the same as the site name.', 'description' => 'If you add another record, the suffix of the host record must be the same as the site name. Please adjust and try again.'], ['errorCode' => 'InvalidParameter.RecordNameExceedLimit', 'errorMessage' => 'The length of the record name exceeds the maximum limit.', 'description' => 'The record name cannot exceed 200 characters.'], ['errorCode' => 'InvalidParameter.InvalidHostPolicy', 'errorMessage' => 'The host parameter in the origin fetch request is invalid.', 'description' => 'The host parameter in the origin fetch request is invalid.'], ['errorCode' => 'InvalidParameter.CnameSiteRecordUnsupport', 'errorMessage' => 'The current record type is not supported for a website connected by CNAME setup.', 'description' => 'You can only add A/AAAA and CNAME records to a website connected by CNAME setup.'], ['errorCode' => 'InvalidParameter.RecordCommentExceedLimit', 'errorMessage' => 'The number of incoming record comment exceeds the maximum limit.', 'description' => 'The record comment information is greater than 50 characters.'], ['errorCode' => 'Record.AorAAAARecordValueContainInvalidIP', 'errorMessage' => 'The A/AAAA record value contains the invalid IP.', 'description' => 'When creating or editing an A/AAAA record, the record value contains an invalid IP.'], ['errorCode' => 'Record.AorAAAARecordValueIPExceedLimit', 'errorMessage' => 'The number of IP addresses exceeds the limit for the A/AAAA record.', 'description' => 'When creating or editing A/AAAA records, the number of IP addresses exceeds the limit. A host record only supports 8 IPv4 and 4 IPv6 IP addresses. Please adjust and try again.'], ['errorCode' => 'Record.CAARecordFlagExceedLimit', 'errorMessage' => 'The value of the flag parameter for a CAA record is out of range.', 'description' => 'The value of the flag parameter for a CAA record is out of range while creating or editing DNS record information.'], ['errorCode' => 'Record.CAARecordTagExceedLimit', 'errorMessage' => 'The CAA record tag has illegal characters other than issue, issuewild, and iodef.', 'description' => 'When creating or editing CAA records, illegal characters other than issue, issuewild, and iodef are passed in the tag value.'], ['errorCode' => 'Record.CERTRecordAlgorithmExceedLimit', 'errorMessage' => 'The value of the algorithm parameter for the CERT record is out of range.', 'description' => 'The value of the algorithm parameter for the CERT record is out of range while creating or editing DNS record information.'], ['errorCode' => 'Record.CERTRecordKeyTagExceedLimit', 'errorMessage' => 'The value of the keyTag parameter for a CERT record is out of range.', 'description' => 'The value of the keyTag parameter for a CERT record is out of range when creating or editing DNS record information.'], ['errorCode' => 'Record.CERTRecordTypeExceedLimit', 'errorMessage' => 'The CERT record type is out of range.', 'description' => 'The CERT record type parameter was out of range when creating or editing DNS record information.'], ['errorCode' => 'Record.CNameRecordValueCannotEqualExistedIPASource', 'errorMessage' => 'The CNAME record cannot be the origin of the added Layer 4 application. Check the values of other Layer 4 proxy records and try again.', 'description' => 'The CNAME record cannot be the origin of the added Layer 4 application. Check the values of other Layer 4 proxy records and try again.'], ['errorCode' => 'Record.CNameRecordValueCannotEqualExistedPoolSource', 'errorMessage' => 'The CNAME record cannot be the origin of the added source address pool. Check and try again.', 'description' => 'The CNAME record cannot be the origin of the added source address pool. Check and try again.'], ['errorCode' => 'Record.CNameRecordValueCannotEqualExistedRecordSource', 'errorMessage' => 'The CNAME record cannot be the origin of an added record. Check the record values of other records and try again.', 'description' => 'The CNAME record cannot be the origin of an added record. Check the record values of other records and try again.'], ['errorCode' => 'Record.CNameRecordValueCannotEqualOtherExistedIPARecord', 'errorMessage' => 'The record value of a CNAME record cannot be exactly the same as the name of another existing Layer 4 proxy record.', 'description' => 'The record value of a CNAME record cannot be exactly the same as the name of another existing Layer 4 proxy record.'], ['errorCode' => 'Record.CNameRecordValueCannotEqualOtherExistedRecord', 'errorMessage' => 'The record value of a CNAME record cannot be the same as the name of another existing CNAME record.', 'description' => 'The record value of a CNAME record cannot be the same as the name of another existing CNAME record.'], ['errorCode' => 'Record.CNameRecordValueCannotEqualHostRecord', 'errorMessage' => 'The record value of the CNAME record cannot be exactly the same as the host record.', 'description' => 'The record value of the CNAME record cannot be exactly the same as the host record. Please adjust and try again.'], ['errorCode' => 'Record.CNameRecordValueExceedLimit', 'errorMessage' => 'The CNAME record value cannot exceed 253 characters, please delete and try again.', 'description' => 'The record value cannot exceed 253 characters, please delete and try again.'], ['errorCode' => 'Record.CNameRecordValueInvalidDomainUnderline', 'errorMessage' => 'Record values (DNS-only records) generally start with an underscore, a lowercase letter a-z, and the numbers 0-9. The middle part of the record can be lowercase letters, numbers, or hyphens, and the length is between 0 and 61 characters.', 'description' => 'Record values (DNS-only records) generally start with an underscore, a lowercase letter a-z, and the numbers 0-9. The middle part of the record can be lowercase letters, numbers, or hyphens, and the length is between 0 and 61 characters.'], ['errorCode' => 'Record.CNameRecordValueInvalidRecordDomain', 'errorMessage' => 'Record values (records with agent acceleration enabled) must start with a lowercase letter a-z and numbers 0-9. The middle part of the record can be lowercase letters, numbers, or hyphens, and the length is between 0 and 61 characters.', 'description' => 'Record values (records with agent acceleration enabled) must start with a lowercase letter a-z and numbers 0-9. The middle part of the record can be lowercase letters, numbers, or hyphens, and the length is between 0 and 61 characters.'], ['errorCode' => 'Record.EmptyRecordValue', 'errorMessage' => 'The record value is empty, please fill it in correctly and try again.', 'description' => 'The record value is empty, please fill it in correctly and try again.'], ['errorCode' => 'Record.InvalidCertEncodeWithCERTRecord', 'errorMessage' => 'The certificate value of the CERT record is not base64-encoded.', 'description' => 'When you create or edit CERT record information, the certificate value of the CERT record is not base64-encoded.'], ['errorCode' => 'Record.InvalidFingerprintWithSSHFPRecord', 'errorMessage' => 'The SSHFP record fingerprint value is not hexadecimal encoded.', 'description' => 'When creating or editing SSHFP record information, the fingerprint value is not hexadecimal encoded.'], ['errorCode' => 'Record.InvalidIssueDataWithCAARecordTag', 'errorMessage' => 'The tag of a CAA record can only be a semicolon or a valid domain name separated by semicolons.', 'description' => 'When creating or editing CAA record information, the tag tag of a CAA record can only be a semicolon or a valid domain name separated by semicolons.'], ['errorCode' => 'Record.InvalidMailAddressWithCAARecordTag', 'errorMessage' => 'The CAA record tag is prefixed with mailto:, it must be followed by a legal email address.', 'description' => 'When creating or editing CAA record information, when Tag is iodef and Value is prefixed with mailto:, it must be followed by a legal email address.'], ['errorCode' => 'Record.InvalidSmimeaEncodeWithSMIMEARecord', 'errorMessage' => 'The certificate value of the SMIMEA record is not base64-encoded.', 'description' => 'When creating or editing SMIMEA record information, the certificate value of the SMIMEA record is not base64-encoded.'], ['errorCode' => 'Record.InvalidTslaEncodeWithTSLARecord', 'errorMessage' => 'The certificate value passed in is not hexadecimal encoded with TSLA record.', 'description' => 'When creating or editing TLSA record information, the certificate value passed in is not hexadecimal encoded.'], ['errorCode' => 'Record.InvalidURLWithURIRecord', 'errorMessage' => 'The URI record value must be a valid URL address.', 'description' => 'When creating or editing URI record information, the record value must be a valid URL address.'], ['errorCode' => 'Record.NoRecordNameConflictWithNSRecord', 'errorMessage' => 'No record name can conflict with an NS record name.', 'description' => 'No record name can conflict with an NS record name.'], ['errorCode' => 'Record.NSRecordCannotEqualSiteName', 'errorMessage' => 'An NS record with the exact same name as the site name is not allowed.', 'description' => 'Adding an NS record with the exact same name as the site name is not allowed.'], ['errorCode' => 'Record.OSSSourceInvalidAuthType', 'errorMessage' => 'The recorded OSS origin station authentication type is not supported.', 'description' => 'The recorded OSS origin station authentication type is not supported.'], ['errorCode' => 'Record.ParseJSONRecordValueFailed', 'errorMessage' => 'The JSON data format of the record data is incorrect. Please adjust and try again.', 'description' => 'The JSON data format of the record data is incorrect. Please adjust and try again.'], ['errorCode' => 'Record.PoolSourceNotExistPool', 'errorMessage' => 'If the source station type of the record is source address pool, the input source address pool does not exist.', 'description' => 'If the source station type of the record is source address pool, the input source address pool does not exist.'], ['errorCode' => 'Record.RecordNameConflictForSpecifiedRecordType', 'errorMessage' => 'The A/AAAA and CNAME records cannot have the same name.', 'description' => 'The A/AAAA and CNAME records cannot have the same name.'], ['errorCode' => 'Record.RecordNameConflictWithIPAName', 'errorMessage' => 'The record name cannot have the same name as the Layer 4 proxy record.', 'description' => 'When you create or edit DNS record information, the record name cannot have the same name as the Layer 4 proxy record.'], ['errorCode' => 'Record.RecordNameConflictWithLBName', 'errorMessage' => 'The record name cannot be the same as the Server Load Balancer record name.', 'description' => 'When creating or editing DNS record information, the record name cannot be the same as the Server Load Balancer record name.'], ['errorCode' => 'Record.RecordNameConflictWithNSRecord', 'errorMessage' => 'The NS record name cannot be the same as any other type of record name.', 'description' => 'When creating or editing DNS record information, the NS record name cannot be the same as any other type of record name.'], ['errorCode' => 'Record.RecordNameConflictWithPoolName', 'errorMessage' => 'The record name cannot be the same as the source address pool record name.', 'description' => 'When creating or editing DNS record information, the record name cannot be the same as the source address pool record name.'], ['errorCode' => 'Record.RecordNameInBlacklist', 'errorMessage' => 'The record name is in blacklist.', 'description' => 'The record name is in the blacklist and cannot be added.'], ['errorCode' => 'Record.S3SourceInvalidAuthRegion', 'errorMessage' => 'The recorded S3 origin belongs to a region that is not in the supported range.', 'description' => 'The recorded S3 origin belongs to a region that is not in the supported range.'], ['errorCode' => 'Record.S3SourceInvalidAuthType', 'errorMessage' => 'The recorded S3 origin authentication type is not supported.', 'description' => 'The recorded S3 origin authentication type is not supported.'], ['errorCode' => 'Record.S3SourceInvalidAuthVersion', 'errorMessage' => 'The version of the authentication signature algorithm of the S3 origin is not supported.', 'description' => 'The version of the authentication signature algorithm of the S3 origin is not supported.'], ['errorCode' => 'Record.SourceAccessKeyExceedLimit', 'errorMessage' => 'The character length of the AccessKey parameter value for the record source station is out of range.', 'description' => 'The character length of the AccessKey parameter value for the record source station is out of range.'], ['errorCode' => 'Record.SourceEmptyAK', 'errorMessage' => 'The AccessKey of the account to which the origin site belongs is empty.', 'description' => 'The AccessKey of the account to which the origin site belongs is empty.'], ['errorCode' => 'Record.SourceEmptyAuthConf', 'errorMessage' => 'The authentication information of the origin station is empty.', 'description' => 'The recorded authentication information of the origin station is empty.'], ['errorCode' => 'Record.SourceEmptySecretKey', 'errorMessage' => 'The SecretKey of the account to which the recorded origin site belongs is empty.', 'description' => 'The SecretKey of the account to which the recorded origin site belongs is empty.'], ['errorCode' => 'Record.SourceSecretKeyExceedLimit', 'errorMessage' => 'The character length of the SecretKey parameter value for the record source station is out of range.', 'description' => 'The character length of the SecretKey parameter value for the record source station is out of range.'], ['errorCode' => 'Record.SRVRecordInvalidRecordName', 'errorMessage' => 'SRV host record name is not valid. The SRV host record name must begin with an underscore (-) followed by a lowercase letter (a-z), a number (0-9), and a hyphen (-), followed by 1 arbitrary character, followed by an underscore (-) and a lowercase letter, number, or hyphen.', 'description' => 'SRV host record name is not valid. The SRV host record name must begin with an underscore (-), followed by a lowercase letter (a-z), number (0-9), hyphen (-), followed by any character, followed by an underscore (-) and a lowercase letter, number, or hyphen.'], ['errorCode' => 'Record.SRVRecordPortExceedLimit', 'errorMessage' => 'The SRV record port is out of range.', 'description' => 'When creating or editing DNS record information, the SRV record port filled in is out of range.'], ['errorCode' => 'Record.SSHFPRecordAlgorithmExceedLimit', 'errorMessage' => 'The algorithm parameter value for the SSHFP record is out of range.', 'description' => 'The algorithm parameter value for the SSHFP record is out of range while creating or editing DNS record information.'], ['errorCode' => 'Record.TTLExceedLimit', 'errorMessage' => 'The TTL parameter value for a record is out of range.', 'description' => 'The TTL parameter value for a record is out of range while creating or editing DNS record information.'], ['errorCode' => 'Record.TXTRecordValueExceedLimit', 'errorMessage' => 'The TXT record value cannot exceed 450 characters.', 'description' => 'When you create or edit DNS record information, the TXT record value cannot exceed 450 characters.'], ['errorCode' => 'Record.TypeExceedLimitWithSSHFPRecord', 'errorMessage' => 'The SSHFP record Type parameter value is out of range.', 'description' => 'The SSHFP record Type parameter value is out of range while creating or editing DNS record information.'], ['errorCode' => 'Record.UnmatchedRecordNameContainDoubleConsecutiveDot', 'errorMessage' => 'Illegal host record name. The host record cannot contain consecutive dot.', 'description' => 'Illegal host record name. The host record cannot contain consecutive dot.'], ['errorCode' => 'Record.UnmatchedRecordNameForbidStarSev', 'errorMessage' => 'Illegal host record name, SRV record name disallowed asterisk.', 'description' => 'Illegal host record name, SRV record name disallowed asterisk.'], ['errorCode' => 'Record.UnmatchedRecordNameInvalidATChar', 'errorMessage' => 'Illegal host record name. The at symbol can only appear at the top of the host record and can only be followed. Symbol, other strings are not allowed.', 'description' => 'Illegal host record name. The \'@\' symbol can only appear at the top of the host record and can only be followed. Symbol, other strings are not allowed.'], ['errorCode' => 'Record.UnmatchedRecordNameInvalidNamePrefixSuffix', 'errorMessage' => 'Illegal host record name. Host record values cannot start or end with a dot, a hyphens.', 'description' => 'Illegal host record name. Host record values cannot start or end with a dot, a hyphens.'], ['errorCode' => 'Record.UnmatchedRecordNameInvalidStartSymbol', 'errorMessage' => 'Illegal host record name. The asterisk is only allowed in the first place of the host record, and only the following dot is allowed after the asterisk.', 'description' => 'Illegal host record name. The asterisk is only allowed in the first place of the host record, and only the following dot is allowed after the asterisk.'], ['errorCode' => 'Record.UnmatchedRecordNameSeperateStringTooLarge', 'errorMessage' => 'Illegal host record name. The number of characters in each segment separated by dot cannot exceed 63.', 'description' => 'Illegal host record name. The number of characters in each segment separated by \'.\' cannot exceed 63.'], ['errorCode' => 'Record.UnsupportedSourceType', 'errorMessage' => 'The recorded source station type is not in the supported range.', 'description' => 'The recorded source station type is not in the supported range.'], ['errorCode' => 'Record.UnsupportedType', 'errorMessage' => 'The record type parameter is unsupported.', 'description' => 'The record type parameter is incorrect. Please check the record type parameter.'], ['errorCode' => 'Record.ValidProxiedForSpecifedRecordType', 'errorMessage' => 'Only A/AAAA and CNAME types support proxy acceleration.', 'description' => 'When creating or editing a record, proxy acceleration is enabled in the proxy state. Only A/AAAA and CNAME types support proxy acceleration.'], ['errorCode' => 'Record.RecordUsageExceedLimit', 'errorMessage' => 'The usage parameter value filled in is out of range.', 'description' => 'When creating or editing DNS record information, the usage parameter value filled in is out of range.'], ['errorCode' => 'Record.RecordSelectorExceedLimit', 'errorMessage' => 'The selector parameter value filled in is out of range.', 'description' => 'While creating or editing DNS record information, the selector parameter value filled in is out of range.'], ['errorCode' => 'Record.RecordMatchingTypeExceedLimit', 'errorMessage' => 'The matchingType parameter value filled in is out of range.', 'description' => 'While creating or editing DNS record information, the matchingType parameter value filled in is out of range.'], ['errorCode' => 'Record.RecordPriorityExceedLimit', 'errorMessage' => 'The record priority parameter value filled in is out of range.', 'description' => 'When creating or editing DNS record information, the record priority parameter value filled in is out of range.'], ['errorCode' => 'Record.RecordWeightExceedLimit', 'errorMessage' => 'The record weight parameter value filled in is out of range.', 'description' => 'When creating or editing DNS record information, the record weight parameter value filled in is out of range.'], ['errorCode' => 'Record.RecordNameConflictWithSameRecordType', 'errorMessage' => 'Record conflicts with an existing host record that has the same name and value.', 'description' => 'Record conflicts with an existing host record that has the same name and value.'], ['errorCode' => 'Record.UnmatchedRecordNameInvalidUnderLine', 'errorMessage' => 'The host record name contains an illegal underscore. The underscore is only supported at the beginning of the TXT, CNAME, MX, SRV, and NS records. Proxy acceleration cannot be enabled, and records can only be added in the DNS mode.', 'description' => 'The host record name contains an illegal underscore. The underscore is only supported at the beginning of the TXT, CNAME, MX, SRV, and NS records. Proxy acceleration cannot be enabled, and records can only be added in the DNS mode.'], ['errorCode' => 'InvalidParameter.InvalidDSRecordName', 'errorMessage' => 'Please add/import an NS record with the same name before adding this DS record.', 'description' => 'Please add/import an NS record with the same name before adding this DS record'], ['errorCode' => 'InvalidParameter.CnameSiteRecordNoProxied', 'errorMessage' => 'A non-proxied record was added for a website using a CNAME setup.', 'description' => 'A non-proxied record was added for a website using a CNAME setup.'], ['errorCode' => 'Record.InvalidIodefDataWithCAARecordTag', 'errorMessage' => 'The CAA record Tag value cannot start with mailto: or http:// or https.', 'description' => 'When creating or editing CAA record information, the Tag value cannot start with mailto: http:// or mailto: https.'], ['errorCode' => 'Record.WildcardConflictForSpecifiedRecordType', 'errorMessage' => 'The A/AAAA,CNAME records cannot add all and asterisk prefixed records at the same time.', 'description' => 'A/AAAA,CNAME records cannot add all and asterisk prefixed records at the same time.'], ['errorCode' => 'Record.UnmatchedRecordNameOnlyContainSymbol', 'errorMessage' => 'The host record value cannot exist separately in various symbols, and can be added with any lowercase letters or numbers.', 'description' => 'The host record value cannot exist separately in various symbols, and can be added with any lowercase letters or numbers.'."\n"], ['errorCode' => 'SameNameRecordExceedLimit', 'errorMessage' => 'The number of records with the same name exceeds the upper limit.', 'description' => 'The number of records with the same name exceeds the upper limit.'], ['errorCode' => 'InvalidParameter.PrivateIpAsSourceUnsupported', 'errorMessage' => 'The provided source is an invalid private IP address. Please verify and resubmit.', 'description' => 'The provided source is an invalid private IP address. Please verify and resubmit.'], ['errorCode' => 'InvalidParameter.SourceIpInBlacklist', 'errorMessage' => 'The provided source is an invalid private IP address. Please verify and resubmit.', 'description' => 'The provided source is an invalid private IP address. Please verify and resubmit.'], ['errorCode' => 'Record.InvalidHTTPURLValueWithCAARecordTag', 'errorMessage' => 'The CAA record is prefixed with http:// or https://, it must be followed by a valid URL.', 'description' => 'When you create or edit a CAA record, if the Tag is `iodef` and the Value starts with `http://` or `https://`, it must be followed by a valid URL.'], ['errorCode' => 'Record.UnmatchedRecordNameOnlyRangeChars', 'errorMessage' => 'Illegal host record character. Only lowercase a-z, uppercase A- Z, digits 0-9, some special characters are supported as valid characters in host records.', 'description' => 'Illegal host record character. Only lowercase a-z, uppercase A- Z, digits 0-9, \'-\', \'_\', \'.\', \'*\', and \'@\' are supported as valid characters in host records \',\' @ \'.'."\n"], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F61CDR30-E83C-4FDA-BF73-9A94CDD44229\\",\\n \\"RecordId\\": 1234567890123\\n}","type":"json"}]', 'title' => 'Create DNS Record', 'requestParamsDescription' => 'The Data section of the record, including the DNS information of the record. Different types of records require different content for this field. For more information, see'."\n" .'[Documentation](https://help.aliyun.com/document_detail/2708761.html)[Documentation](https://www.alibabacloud.com/help/doc-detail/2708761.html)'."\n" .'.', 'changeSet' => [ ['createdAt' => '2025-03-28T01:22:08.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-02-18T05:59:13.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-11-05T03:27:37.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-10-10T12:01:10.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2024-09-24T08:28:18.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-23T02:21:51.000Z', 'description' => 'Error codes changed, Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateRecord'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateRecord', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'CreateRedirectRule' => [ 'summary' => 'Creates a redirect configuration for a site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257657', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. For sites with configuration version management enabled, you can use this parameter to specify the site version on which the configuration takes effect. The default value is version 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The rule name. You do not need to set this parameter when adding a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => [ 'description' => 'The rule switch. You do not need to set this parameter when adding a global configuration. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The rule content, which uses a conditional expression to match user requests. You do not need to set this parameter when adding a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: Set the value to true.'."\n" .'- Match specified requests: Set the value to a custom expression, such as (http.host eq \\"video.example.com\\").', 'type' => 'string', 'required' => false, 'example' => '(http.host eq "video.example.com")', 'title' => ''], ], [ 'name' => 'Type', 'in' => 'query', 'schema' => [ 'description' => 'The redirect type. Valid values:'."\n" ."\n" .'- static: Static pattern.'."\n" .'- dynamic: Dynamic pattern.', 'enumValueTitles' => ['static' => 'Static mode.', 'dynamic' => 'Dynamic pattern.'], 'type' => 'string', 'required' => true, 'enum' => ['static', 'dynamic'], 'example' => 'static', 'title' => '', ], ], [ 'name' => 'TargetUrl', 'in' => 'query', 'schema' => ['description' => 'The target URL after redirection.', 'type' => 'string', 'required' => true, 'example' => 'http://www.exapmle.com/index.html'."\n", 'title' => ''], ], [ 'name' => 'StatusCode', 'in' => 'query', 'schema' => [ 'description' => 'The response status code used by the node when responding to the client with the redirect address. Valid values:'."\n" ."\n" .'- 301'."\n" .'- 302'."\n" .'- 303'."\n" .'- 307'."\n" .'- 308.', 'enumValueTitles' => [], 'type' => 'string', 'required' => true, 'enum' => ['301', '302', '303', '307', '308'], 'example' => '301', 'title' => '', ], ], [ 'name' => 'ReserveQueryString', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to preserve the query string. Valid values:'."\n" ."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'required' => true, 'enum' => ['on', 'off'], 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '1FCB0DA6-9B6D-509D-B91C-B9B9F0780D0E'], 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '35281609698****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'ConfExceedLimit', 'errorMessage' => 'The number of function configurations exceeds the limit. Please check the interface document to see the number of configurations that can be supported by a single function.', 'description' => 'The number of configuration items for the current function has exceeded the upper limit set by the system.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ['errorCode' => 'VerifyExpressionError', 'errorMessage' => 'Dynamic expression is invalid.', 'description' => 'Dynamic expression is invalid.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1FCB0DA6-9B6D-509D-B91C-B9B9F0780D0E\\",\\n \\"ConfigId\\": 0\\n}","type":"json"}]', 'title' => 'Create redirect configuration', 'changeSet' => [ ['createdAt' => '2025-04-10T07:02:38.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2025-03-27T02:58:48.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateRedirectRule'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateRedirectRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'CreateRewriteUrlRule' => [ 'summary' => 'Create a rewrite URL rule configuration for a site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257641', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~ListSites~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. For sites with configuration version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The rule content, which uses conditional expressions to match user requests. This parameter does not need to be set when adding global configurations. There are two usage scenarios:'."\n" .'- Match all incoming requests: Set the value to true.'."\n" .'- Match specified requests: Set the value to a custom expression, for example: (http.host eq \\"video.example.com\\").', 'type' => 'string', 'required' => false, 'example' => '(http.host eq "video.example.com")'."\n", 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The rule name. This parameter does not need to be set when adding global configurations.', 'type' => 'string', 'required' => false, 'example' => 'rule_example'."\n", 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => [ 'description' => 'The rule switch. This parameter does not need to be set when adding global configurations. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'enumValueTitles' => ['off' => 'Disabled', 'on' => 'Enabled'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'RewriteUriType', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => [ 'description' => 'The URI rewrite type. Valid values:'."\n" ."\n" .'- static: static mode.'."\n" .'- dynamic: dynamic mode.', 'enumValueTitles' => ['static' => 'Static mode', 'dynamic' => 'Dynamic mode'], 'type' => 'string', 'enum' => [], 'required' => false, 'example' => 'static', 'title' => '', ], ], [ 'name' => 'Uri', 'in' => 'query', 'schema' => ['description' => 'The destination URI after rewriting.', 'type' => 'string', 'required' => false, 'example' => '/image/example.jpg'."\n", 'title' => ''], ], [ 'name' => 'RewriteQueryStringType', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => [ 'description' => 'The query string rewrite type. Valid values:'."\n" ."\n" .'- static: static mode.'."\n" .'- dynamic: dynamic mode.', 'enumValueTitles' => ['static' => 'Static mode', 'dynamic' => 'Dynamic mode'], 'type' => 'string', 'enum' => [], 'required' => false, 'example' => 'static'."\n", 'title' => '', ], ], [ 'name' => 'QueryString', 'in' => 'query', 'schema' => ['description' => 'The query string after rewriting.', 'type' => 'string', 'required' => false, 'example' => 'example=123'."\n", 'title' => ''], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-280B-72F8FD6DA2FE'], 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '39237781679****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'ConfExceedLimit', 'errorMessage' => 'The number of function configurations exceeds the limit. Please check the interface document to see the number of configurations that can be supported by a single function.', 'description' => 'The number of configuration items for the current function has exceeded the upper limit set by the system.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ['errorCode' => 'VerifyExpressionError', 'errorMessage' => 'Dynamic expression is invalid.', 'description' => 'Dynamic expression is invalid.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-280B-72F8FD6DA2FE\\",\\n \\"ConfigId\\": 0\\n}","type":"json"}]', 'title' => 'CreateRewriteUrlRule', 'changeSet' => [ ['createdAt' => '2025-04-10T07:02:38.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-03-27T02:58:48.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateRewriteUrlRule'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateRewriteUrlRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'CreateRoutine' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'high', 'chargeType' => 'free', 'abilityTreeCode' => '238770', 'abilityTreeNodes' => ['FEATUREdcdn75UYDO'], ], 'parameters' => [ [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The name of the Edge Routine. The name must be unique within the same account.', 'type' => 'string', 'required' => true, 'example' => 'test-routine1', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'formData', 'schema' => ['description' => 'The description of the Edge Routine.', 'type' => 'string', 'required' => false, 'example' => 'the description of this routine', 'title' => ''], ], [ 'name' => 'HasAssets', 'in' => 'formData', 'schema' => ['description' => 'Specifies whether the Edge Routine contains asset files.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395'], 'Status' => ['description' => 'The result of the operation. Indicates whether the operation was successful.', 'type' => 'string', 'example' => 'OK', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'RoutineAlreadyExist', 'errorMessage' => 'The routine name already exists.', 'description' => 'The routine name already exists.'], ['errorCode' => 'InternalOperationError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'ParameterNotExist', 'errorMessage' => 'The specified parameter does not exist. Check your configurations and try again.', 'description' => 'The specified parameter does not exist. Check your configurations and try again.'], ['errorCode' => 'ServiceNotOpen', 'errorMessage' => 'You have not activated Edge Routine. Activate the service and try again.', 'description' => 'You have not activated Edge Routine. Activate the service and try again.'], ['errorCode' => 'RoutineNumberExceedQuotaLimit', 'errorMessage' => 'The maximum number of configuration items for the feature has been reached. Adjust your configurations and try again.', 'description' => 'The maximum number of configuration items for the feature has been reached. Adjust your configurations and try again.'], ['errorCode' => 'DependedByOthers', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'RoutineUserServiceStatusHalt', 'errorMessage' => 'Failed to update the configurations because you have overdue payments.', 'description' => 'Failed to update the configurations because you have overdue payments.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'UserOperationStatusIsLocked', 'errorMessage' => 'You are calling an another routine related api. Please wait for the api finished, and try again later.', 'description' => 'You are calling an another routine related api. Please wait for the api finished, and try again later.'], ], ], 'title' => 'Create an edge routine', 'summary' => 'Creates an Edge Routine.', 'changeSet' => [ ['createdAt' => '2024-12-04T05:48:49.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-11-05T06:54:07.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateRoutine'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateRoutine', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395\\",\\n \\"Status\\": \\"OK\\"\\n}","type":"json"}]', ], 'CreateRoutineCodeDeployment' => [ 'summary' => 'Creates a percentage-based canary deployment for a Routine code version in a specified environment.', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'high', 'chargeType' => 'free', 'abilityTreeCode' => '238829', 'abilityTreeNodes' => ['FEATUREdcdn75UYDO'], ], 'parameters' => [ [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The name of the Edge Function Routine.', 'type' => 'string', 'required' => true, 'example' => 'test', 'title' => ''], ], [ 'name' => 'Env', 'in' => 'formData', 'schema' => [ 'description' => 'The environment name. '."\n" .'Valid values:'."\n" .'- `staging`: staging environment '."\n" .'- `production`: production environment', 'type' => 'string', 'required' => true, 'example' => 'staging', 'enum' => ['production', 'staging'], 'title' => '', ], ], [ 'name' => 'Strategy', 'in' => 'formData', 'schema' => [ 'description' => 'The deployment strategy. '."\n" .'Valid values:'."\n" .'- `percentage`: percentage mode', 'type' => 'string', 'required' => true, 'example' => 'percentage', 'enum' => ['percentage'], 'title' => '', ], ], [ 'name' => 'CodeVersions', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'The list of percentage-based canary release version configurations. A maximum of two versions are supported, and the total percentage must equal 100.', 'type' => 'array', 'items' => [ 'description' => 'A single percentage-based canary release version configuration.', 'type' => 'object', 'properties' => [ 'Percentage' => ['description' => 'The canary release percentage for the code version. Valid values: 1 to 100.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '100', 'title' => ''], 'CodeVersion' => ['description' => 'The code version number.', 'type' => 'string', 'required' => true, 'example' => '1723599747213377175', 'title' => ''], ], 'required' => true, 'title' => '', 'example' => '', ], 'required' => true, 'maxItems' => 2, 'minItems' => 1, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395'], 'Strategy' => ['description' => 'The canary release strategy. Fixed value: percentage.'."\n", 'type' => 'string', 'example' => 'percentage', 'title' => ''], 'DeploymentId' => ['description' => 'The deployment record ID.'."\n", 'type' => 'string', 'example' => '234', 'title' => ''], 'CodeVersions' => [ 'description' => 'The list of percentage-based canary release code version configurations.', 'type' => 'array', 'items' => [ 'description' => 'A single percentage-based canary release code version configuration.', 'type' => 'object', 'properties' => [ 'Percentage' => ['description' => 'The canary release percentage for the code version.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''], 'CodeVersion' => ['description' => 'The code version number.', 'type' => 'string', 'example' => '1723599747213377175', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'RoutineNotExist', 'errorMessage' => 'The routine name does not exist. Check the routine name and try again.', 'description' => 'The routine name does not exist. Check the routine name and try again.'], ['errorCode' => 'ParameterNotExist', 'errorMessage' => 'The specified parameter does not exist. Check your configurations and try again.', 'description' => 'The specified parameter does not exist. Check your configurations and try again.'], ['errorCode' => 'InternalOperationError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'DependedByOthers', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'RoutineUserServiceStatusHalt', 'errorMessage' => 'Failed to update the configurations because you have overdue payments.', 'description' => 'Failed to update the configurations because you have overdue payments.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Parameter verification failed. Check your configurations and try again.', 'description' => 'Parameter verification failed. Check your configurations and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'CreateRoutineCodeDeployment', 'description' => '## Usage notes'."\n" .'- When creating a Routine code version deployment, the `Env` parameter only supports `staging` for the staging environment or `production` for the production environment.'."\n" .'- The `CodeVersions` parameter supports a maximum of two versions for canary release, and the total percentage of these versions must equal 100%.'."\n", 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateRoutineCodeDeployment'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:CreateRoutineCodeDeployment', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395\\",\\n \\"Strategy\\": \\"percentage\\",\\n \\"DeploymentId\\": \\"234\\",\\n \\"CodeVersions\\": [\\n {\\n \\"Percentage\\": 100,\\n \\"CodeVersion\\": \\"1723599747213377175\\"\\n }\\n ]\\n}","type":"json"}]', ], 'CreateRoutineRelatedRecord' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239007', 'abilityTreeNodes' => ['FEATUREdcdn75UYDO'], ], 'parameters' => [ [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The name of the Edge Routine function.', 'type' => 'string', 'required' => true, 'example' => 'test-routine1', 'title' => ''], ], [ 'name' => 'SiteId', 'in' => 'formData', 'schema' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '54362329990032', 'title' => ''], ], [ 'name' => 'RecordName', 'in' => 'formData', 'schema' => ['description' => 'The record name.', 'type' => 'string', 'required' => true, 'example' => 'test-record-1.example.com', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395'], 'Status' => ['description' => 'The operation status, which indicates success or failure.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'RecordId' => ['description' => 'The record ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '3227405728754048', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'RoutineNotExist', 'errorMessage' => 'The routine name does not exist. Check the routine name and try again.', 'description' => 'The routine name does not exist. Check the routine name and try again.'], ['errorCode' => 'DependedByOthers', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'SiteParameterNotMatch', 'errorMessage' => 'Failed to verify website parameters.Check the parameters and try again.', 'description' => 'Failed to verify website parameters.Check the parameters and try again.'], ['errorCode' => 'InternalOperationError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'ParameterAlreadyExist', 'errorMessage' => 'Parameter uniqueness verification failed. Check for duplicate parameter values.', 'description' => 'Parameter uniqueness verification failed. Check for duplicate parameter values.'], ['errorCode' => 'RelatedRecordNumberExceedQuotaLimit', 'errorMessage' => 'The maximum number of records associated with the routine has been reached. Check your plan quota and upgrade the plan to request a quota increase.', 'description' => 'The maximum number of records associated with the routine has been reached. Check your plan quota and upgrade the plan to request a quota increase.'], ['errorCode' => 'RoutineUserServiceStatusHalt', 'errorMessage' => 'Failed to update the configurations because you have overdue payments.', 'description' => 'Failed to update the configurations because you have overdue payments.'], ['errorCode' => 'UserOperationStatusIsLocked', 'errorMessage' => 'You are calling an another routine related api. Please wait for the api finished, and try again later.', 'description' => 'You are calling an another routine related api. Please wait for the api finished, and try again later.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Create an edge routine associated record', 'summary' => 'Adds an associated site record for an Edge Routine function. This creates a new record under the site to trigger the execution of the Edge Routine function code.', 'changeSet' => [ ['createdAt' => '2024-12-04T05:48:48.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-11-05T06:54:07.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateRoutineRelatedRecord'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:CreateRoutineRelatedRecord', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395\\",\\n \\"Status\\": \\"OK\\",\\n \\"RecordId\\": 3227405728754048\\n}","type":"json"}]', ], 'CreateRoutineRoute' => [ 'summary' => 'Creates an Edge Routine route configuration.', 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '266190', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'RouteName', 'in' => 'query', 'schema' => ['description' => 'The route name.', 'type' => 'string', 'required' => true, 'example' => 'test_route', 'title' => ''], ], [ 'name' => 'RouteEnable', 'in' => 'query', 'schema' => ['description' => 'The route switch. Valid values:'."\n" .'- on: enabled'."\n" .'- off: disabled', 'type' => 'string', 'required' => true, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The rule content.', 'type' => 'string', 'required' => true, 'example' => '(http.host eq \\"video.example.com\\")', 'title' => ''], ], [ 'name' => 'RoutineName', 'in' => 'query', 'schema' => ['description' => 'The Edge Routine name.', 'type' => 'string', 'required' => true, 'example' => 'test-routine1', 'title' => ''], ], [ 'name' => 'Bypass', 'in' => 'query', 'schema' => [ 'description' => 'The bypass mode. Valid values:'."\n" .'- on: enabled'."\n" .'- off: disabled', 'enumValueTitles' => ['off' => 'disabled.', 'on' => 'enabled.'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The rule execution order.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'Fallback', 'in' => 'query', 'schema' => [ 'description' => 'The back-to-origin on exception switch. When enabled, if the function encounters an exception such as CPU usage exceeding the limit, the request falls back to the origin server. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'disabled.', 'on' => 'enabled.'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Timeout', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The Edge Routine timeout period. Valid values: 5 to 60. Unit: seconds.', 'type' => 'string', 'example' => '5', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'."\n"], 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '35281609698****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'ConfExceedLimit', 'errorMessage' => 'The number of function configurations exceeds the limit. Please check the interface document to see the number of configurations that can be supported by a single function.', 'description' => 'The number of configuration items for the current function has exceeded the upper limit set by the system.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'InvalidRoutine', 'errorMessage' => 'The name of routine is invalid.', 'description' => 'Edge function name is illegal.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\\\n\\",\\n \\"ConfigId\\": 0\\n}","type":"json"}]', 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Create an edge routine route configuration', 'changeSet' => [ ['createdAt' => '2025-06-25T05:35:35.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateRoutineRoute'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateRoutineRoute', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'CreateScheduledPreloadExecutions' => [ 'summary' => 'Creates execution plans for batch scheduled prefetch tasks.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239296', 'abilityTreeNodes' => ['FEATUREdcdn4TTNAL'], ], 'parameters' => [ [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The prefetch task ID, which is generated by calling the [CreateScheduledPreloadJob](~~2850459~~) operation.', 'type' => 'string', 'required' => false, 'example' => '665d3af3621bccf3fe29e1a4', 'title' => ''], ], [ 'name' => 'Executions', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'The list of execution plans to be added for scheduled prefetch tasks.', 'type' => 'array', 'items' => [ 'description' => 'The execution plan information.', 'type' => 'object', 'properties' => [ 'StartTime' => ['description' => 'The start time of the scheduled prefetch plan, in ISO 8601 format (such as 2024-01-01T00:00:00+Z).', 'type' => 'string', 'required' => false, 'example' => '2024-06-03T16:00:00Z', 'title' => ''], 'EndTime' => ['description' => 'The end time of the scheduled prefetch plan, in ISO 8601 format (such as 2024-01-01T00:00:00+Z).', 'type' => 'string', 'required' => false, 'example' => '2024-06-04T02:02:09Z', 'title' => ''], 'Interval' => ['description' => 'The interval between each batch execution of the scheduled prefetch plan. Unit: seconds.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'minimum' => '1', 'example' => '30', 'title' => ''], 'SliceLen' => ['description' => 'The number of URLs to prefetch per batch.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'maximum' => '100', 'minimum' => '1', 'example' => '10', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => true, 'maxItems' => 10, 'minItems' => 1, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'F61CDR30-E83C-4FDA-BF73-9A94CDD44229'], 'FailedExecutions' => [ 'description' => 'The information about prefetch plans that failed to be added.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'The prefetch plan ID.', 'type' => 'string', 'example' => '66599bd7397885b43804901c', 'title' => ''], 'StartTime' => ['description' => 'The start time of the scheduled prefetch plan, in ISO 8601 format (such as 2024-01-01T00:00:00+Z).', 'type' => 'string', 'example' => '2024-06-02T02:43:35Z', 'title' => ''], 'EndTime' => ['description' => 'The end time of the scheduled prefetch plan, in ISO 8601 format (such as 2024-01-01T00:00:00+Z).', 'type' => 'string', 'example' => '2024-06-03T02:43:35Z', 'title' => ''], 'Interval' => ['description' => 'The interval between each batch execution of the scheduled prefetch plan. Unit: seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '60', 'title' => ''], 'SliceLen' => ['description' => 'The number of URLs to prefetch per batch.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'Status' => ['description' => 'The status of the scheduled prefetch plan. Valid values:'."\n" .'- **waiting**: Waiting to be executed.'."\n" .'- **running**: Being executed.'."\n" .'- **finished**: Execution completed.'."\n" .'- **failed**: Execution failed.'."\n" .'- **stopped**: Execution paused.', 'type' => 'string', 'example' => 'running', 'title' => ''], 'JobId' => ['description' => 'The prefetch task ID.', 'type' => 'string', 'example' => '665d3af3621bccf3fe29e1a4', 'title' => ''], 'AliUid' => ['description' => 'The Alibaba Cloud account ID.', 'type' => 'string', 'example' => '15685865xxx14622', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'FailedMessages' => [ 'description' => 'The list of failure messages for plans that failed to be added.', 'type' => 'array', 'items' => ['description' => 'The failure message.', 'type' => 'string', 'example' => 'execution id: 66599bd7397885b43804921c, error: end time is before start time.', 'title' => ''], 'title' => '', 'example' => '', ], 'SuccessCount' => ['description' => 'The number of prefetch plans that were successfully added.', 'type' => 'integer', 'format' => 'int32', 'example' => '12', 'title' => ''], 'SuccessExecutions' => [ 'description' => 'The information about prefetch plans that were successfully added.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'The prefetch plan ID.', 'type' => 'string', 'example' => '66599bd7397885b43804901c', 'title' => ''], 'StartTime' => ['description' => 'The start time of the scheduled prefetch plan, in ISO 8601 format (such as 2024-01-01T00:00:00+Z).', 'type' => 'string', 'example' => '2024-06-02T02:43:35Z', 'title' => ''], 'EndTime' => ['description' => 'The end time of the scheduled prefetch plan, in ISO 8601 format (such as 2024-01-01T00:00:00+Z).', 'type' => 'string', 'example' => '2024-06-03T02:43:35Z', 'title' => ''], 'Interval' => ['description' => 'The interval between each batch execution of the scheduled prefetch plan. Unit: seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '60', 'title' => ''], 'SliceLen' => ['description' => 'The number of URLs to prefetch per batch.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'Status' => ['description' => 'The status of the scheduled prefetch plan. Valid values:'."\n" .'- **waiting**: Waiting to be executed.'."\n" .'- **running**: Being executed.'."\n" .'- **finished**: Execution completed.'."\n" .'- **failed**: Execution failed.'."\n" .'- **stopped**: Execution paused.', 'type' => 'string', 'example' => 'failed', 'title' => ''], 'JobId' => ['description' => 'The prefetch task ID.', 'type' => 'string', 'example' => '665d3af3621bccf3fe29e1a4', 'title' => ''], 'AliUid' => ['description' => 'The Alibaba Cloud account ID.', 'type' => 'string', 'example' => '15685865xxx14622', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'TotalCount' => ['description' => 'The total number of plans requested to be added.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'InvalidJob.JobCountOfSiteFull', 'errorMessage' => 'The maximum number of prefetch tasks for the website has been reached. Delete some unwanted ones and try again.', 'description' => 'The maximum number of prefetch tasks for the website has been reached. Delete some unwanted ones and try again.'], ['errorCode' => 'InvalidParameter.ObjectId', 'errorMessage' => 'Invalid task ID or execution plan ID.', 'description' => 'Invalid task ID or execution plan ID.'], ['errorCode' => 'MissingOssUrl', 'errorMessage' => 'OssUrl missing. Specify a valid URL of the OSS object that stores URLs to prefetch.', 'description' => 'OssUrl missing. Specify a valid URL of the OSS object that stores URLs to prefetch.'], ['errorCode' => 'MissingUrlList', 'errorMessage' => 'Enter the URLs you want to prefetch.', 'description' => 'Enter the URLs you want to prefetch.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ], 403 => [ ['errorCode' => 'InvalidUid.PermissionDenied', 'errorMessage' => 'You do not have the permissions to perform this operation on this resource. Check whether the specified UID is correct and has the required permissions.', 'description' => 'You do not have the permissions to perform this operation on this resource. Check whether the specified UID is correct and has the required permissions.'], ], [ ['errorCode' => 'InvalidJob.NotFound', 'errorMessage' => 'The task does not exist. Check whether the task ID is correct or whether the task has been deleted.', 'description' => 'The task does not exist. Check whether the task ID is correct or whether the task has been deleted.'], ['errorCode' => 'LogNotFound', 'errorMessage' => 'Failed to query the log. Check whether the task ID and execution ID are valid.', 'description' => 'Failed to query the log. Check whether the task ID and execution ID are valid.'], ['errorCode' => 'InvalidExecution.NotFound', 'errorMessage' => 'The execution plan does not exist. Check whether the parameters such as the execution ID, start time, and end time are correct.', 'description' => 'The execution plan does not exist. Check whether the parameters such as the execution ID, start time, and end time are correct.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F61CDR30-E83C-4FDA-BF73-9A94CDD44229\\",\\n \\"FailedExecutions\\": [\\n {\\n \\"Id\\": \\"66599bd7397885b43804901c\\",\\n \\"StartTime\\": \\"2024-06-02T02:43:35Z\\",\\n \\"EndTime\\": \\"2024-06-03T02:43:35Z\\",\\n \\"Interval\\": 60,\\n \\"SliceLen\\": 10,\\n \\"Status\\": \\"running\\",\\n \\"JobId\\": \\"665d3af3621bccf3fe29e1a4\\",\\n \\"AliUid\\": \\"15685865xxx14622\\"\\n }\\n ],\\n \\"FailedMessages\\": [\\n \\"execution id: 66599bd7397885b43804921c, error: end time is before start time.\\"\\n ],\\n \\"SuccessCount\\": 12,\\n \\"SuccessExecutions\\": [\\n {\\n \\"Id\\": \\"66599bd7397885b43804901c\\",\\n \\"StartTime\\": \\"2024-06-02T02:43:35Z\\",\\n \\"EndTime\\": \\"2024-06-03T02:43:35Z\\",\\n \\"Interval\\": 60,\\n \\"SliceLen\\": 10,\\n \\"Status\\": \\"failed\\",\\n \\"JobId\\": \\"665d3af3621bccf3fe29e1a4\\",\\n \\"AliUid\\": \\"15685865xxx14622\\"\\n }\\n ],\\n \\"TotalCount\\": 2\\n}","type":"json"}]', 'title' => 'Create execution plans for batch scheduled prefetch tasks', 'changeSet' => [ ['createdAt' => '2024-11-12T03:12:20.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateScheduledPreloadExecutions'], ], ], 'ramActions' => [], ], 'CreateScheduledPreloadJob' => [ 'summary' => 'Add a scheduled prefetch task.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239344', 'abilityTreeNodes' => ['FEATUREdcdn4TTNAL'], ], 'parameters' => [ [ 'name' => 'InsertWay', 'in' => 'formData', 'schema' => [ 'description' => 'The method of uploading prefetch files. Text box and OSS upload methods are supported.', 'enumValueTitles' => ['textBox' => 'Enter URLs one by one via the text box', 'oss' => 'Import URLs in bulk via an OSS file'], 'type' => 'string', 'required' => true, 'enum' => ['textBox', 'oss'], 'example' => 'oss', 'title' => '', ], ], [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The name of the scheduled prefetch task.', 'type' => 'string', 'required' => true, 'maxLength' => 128, 'minLength' => 1, 'pattern' => '^([^\\x00-\\xff]|[\\w.,;/@\\n-])+$', 'example' => 'example', 'title' => ''], ], [ 'name' => 'OssUrl', 'in' => 'formData', 'schema' => ['description' => 'The OSS file for the scheduled prefetch task. Enter the address of the OSS file.'."\n" .'Note: The OSS file contains the URLs that you want to prefetch.', 'type' => 'string', 'required' => false, 'example' => 'https://xxxobject.oss-cn-reginon.aliyuncs.com/9d91_xxxxxxxxxxx_158bb6e0f97c477791209bb46bd599f7', 'title' => ''], ], [ 'name' => 'SiteId', 'in' => 'formData', 'schema' => ['description' => 'The site ID. You can obtain it by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '190007158391808', 'title' => ''], ], [ 'name' => 'UrlList', 'in' => 'formData', 'schema' => ['description' => 'The list of URLs to prefetch. This parameter is used when you upload prefetch files via the text box.', 'type' => 'string', 'required' => false, 'example' => 'http://testurl.com/a.txt'."\n" .'http://testurl.com/b.txt', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247B78'], 'AliUid' => ['title' => '', 'description' => 'The Alibaba Cloud account ID.', 'type' => 'string', 'example' => '15685865xxx14622'], 'CreatedAt' => ['title' => '', 'description' => 'The time when the task was created, in ISO 8601 format (for example, 2024-01-01T00:00:00+08:00).', 'type' => 'string', 'example' => '2023-06-05T10:04:20+0800'], 'Domains' => ['title' => '', 'description' => 'The list of prefetch domains.', 'type' => 'string', 'example' => 'testurl.com'], 'ErrorInfo' => ['title' => '', 'description' => 'The error information. Multiple errors are separated by commas:'."\n" .'- **InvalidUrl**: The URL format is invalid.'."\n" .'- **InvalidDomain**: The domain ownership verification failed.'."\n" .'- **QuotaExcess**: The quota limit has been exceeded.'."\n" .'- **OtherErrors**: Other errors.', 'type' => 'string', 'example' => 'InvalidDomain'], 'FailedFileOss' => ['title' => '', 'description' => 'The OSS address of the failed file.', 'type' => 'string', 'example' => 'https://xxxobject.oss-cn-reginon.aliyuncs.com/9d91_xxxxxxxxxxx_158bb6e0f97c477791209bb46bd599f7'], 'FileId' => ['title' => '', 'description' => 'The URL list file ID, used for downloading.', 'type' => 'string', 'example' => '665d3b48621bccf3fe29e1a7'], 'Id' => ['title' => '', 'description' => 'The task ID.', 'type' => 'string', 'example' => '665d3af3621bccf3fe29e1a4'], 'InsertWay' => [ 'title' => '', 'description' => 'The URL insertion method.', 'enumValueTitles' => ['oss' => 'Import URLs in bulk via an OSS file', 'testBox' => 'Enter URLs one by one via the text box'], 'type' => 'string', 'enum' => ['file', 'url'], 'example' => 'oss', ], 'Name' => ['title' => '', 'description' => 'The task name.', 'type' => 'string', 'example' => 'example'], 'SiteId' => ['title' => '', 'description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '190007158391808'], 'TaskSubmitted' => ['title' => '', 'description' => 'The number of URLs that have been submitted to the system for prefetch tasks.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'TaskType' => [ 'title' => '', 'description' => 'The task type (refresh/prefetch).', 'enumValueTitles' => ['path' => 'Directory refresh', 'refresh' => 'URL refresh', 'preload' => 'URL prefetch'], 'type' => 'string', 'enum' => ['preload', 'refresh', 'path'], 'example' => 'preload', ], 'UrlCount' => ['title' => '', 'description' => 'The total number of URLs.', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], 'UrlSubmitted' => ['title' => '', 'description' => 'The number of submitted URLs.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'InvalidJob.JobCountOfSiteFull', 'errorMessage' => 'The maximum number of prefetch tasks for the website has been reached. Delete some unwanted ones and try again.', 'description' => 'The maximum number of prefetch tasks for the website has been reached. Delete some unwanted ones and try again.'], ['errorCode' => 'InvalidParameter.ObjectId', 'errorMessage' => 'Invalid task ID or execution plan ID.', 'description' => 'Invalid task ID or execution plan ID.'], ['errorCode' => 'MissingOssUrl', 'errorMessage' => 'OssUrl missing. Specify a valid URL of the OSS object that stores URLs to prefetch.', 'description' => 'OssUrl missing. Specify a valid URL of the OSS object that stores URLs to prefetch.'], ['errorCode' => 'MissingUrlList', 'errorMessage' => 'Enter the URLs you want to prefetch.', 'description' => 'Enter the URLs you want to prefetch.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ], 403 => [ ['errorCode' => 'InvalidUid.PermissionDenied', 'errorMessage' => 'You do not have the permissions to perform this operation on this resource. Check whether the specified UID is correct and has the required permissions.', 'description' => 'You do not have the permissions to perform this operation on this resource. Check whether the specified UID is correct and has the required permissions.'], ], [ ['errorCode' => 'InvalidJob.NotFound', 'errorMessage' => 'The task does not exist. Check whether the task ID is correct or whether the task has been deleted.', 'description' => 'The task does not exist. Check whether the task ID is correct or whether the task has been deleted.'], ['errorCode' => 'LogNotFound', 'errorMessage' => 'Failed to query the log. Check whether the task ID and execution ID are valid.', 'description' => 'Failed to query the log. Check whether the task ID and execution ID are valid.'], ['errorCode' => 'InvalidExecution.NotFound', 'errorMessage' => 'The execution plan does not exist. Check whether the parameters such as the execution ID, start time, and end time are correct.', 'description' => 'The execution plan does not exist. Check whether the parameters such as the execution ID, start time, and end time are correct.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247B78\\",\\n \\"AliUid\\": \\"15685865xxx14622\\",\\n \\"CreatedAt\\": \\"2023-06-05T10:04:20+0800\\",\\n \\"Domains\\": \\"testurl.com\\",\\n \\"ErrorInfo\\": \\"InvalidDomain\\",\\n \\"FailedFileOss\\": \\"https://xxxobject.oss-cn-reginon.aliyuncs.com/9d91_xxxxxxxxxxx_158bb6e0f97c477791209bb46bd599f7\\",\\n \\"FileId\\": \\"665d3b48621bccf3fe29e1a7\\",\\n \\"Id\\": \\"665d3af3621bccf3fe29e1a4\\",\\n \\"InsertWay\\": \\"oss\\",\\n \\"Name\\": \\"example\\",\\n \\"SiteId\\": 190007158391808,\\n \\"TaskSubmitted\\": 1,\\n \\"TaskType\\": \\"preload\\",\\n \\"UrlCount\\": 2,\\n \\"UrlSubmitted\\": 1\\n}","type":"json"}]', 'title' => 'Create a Scheduled Prefetch Task', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateScheduledPreloadJob'], ], ], 'ramActions' => [], ], 'CreateSite' => [ 'summary' => 'Creates a site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239619', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'SiteName', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'The site name.', 'type' => 'string', 'required' => true, 'example' => 'example.com'], ], [ 'name' => 'Coverage', 'in' => 'query', 'schema' => [ 'description' => 'The acceleration region. Valid values:'."\n" .'- **domestic**: the Chinese mainland only.'."\n" .'- **global**: global.'."\n" .'- **overseas**: global (excluding the Chinese mainland).', 'enumValueTitles' => [], 'type' => 'string', 'required' => true, 'enum' => ['global', 'domestic', 'overseas'], 'example' => 'domestic', 'title' => '', ], ], [ 'name' => 'AccessType', 'in' => 'query', 'schema' => [ 'description' => 'The access type of the site. Valid values:'."\n" ."\n" .'- **NS**: access by using managed NS.'."\n" .'- **CNAME**: access by configuring a CNAME record.', 'enumValueTitles' => [], 'type' => 'string', 'required' => true, 'enum' => ['NS', 'CNAME'], 'example' => 'NS', 'title' => '', ], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID. You can obtain the instance ID by calling the [ListUserRatePlanInstances](~~2852398~~) operation. You must specify at least one of the instance ID and site ID. If both are specified, the instance ID takes precedence.', 'type' => 'string', 'required' => true, 'example' => 'dbaudit-cn-nwy349jdb03'."\n", 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The resource group ID. If you do not specify this parameter, the system automatically uses the default resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmw4znnok****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-3C82-72F8FD6DA2FE', 'title' => ''], 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123', 'title' => ''], 'NameServerList' => ['description' => 'The list of name servers assigned to the site, separated by commas (,). This field has a value when the access type of the site is NS. You need to change the DNS servers of the site to these name servers. Then you can verify the site ownership and activate the site.', 'type' => 'string', 'example' => 'ns1.example.com,ns2.example.com', 'title' => ''], 'VerifyCode' => ['description' => 'The verification code of the site. When the access type of the site is CNAME, you need to add a TXT record with the record name **_esaauth.[site name]** and the record value set to the **verification code** on the DNS server of the site. Then you can verify the site ownership and activate the site.', 'type' => 'string', 'example' => 'verify_aah9dioasmov****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'InvalidParameter.SiteName', 'errorMessage' => 'Invalid website name. Specify a valid name that contains letters and digits and does not contain special characters.', 'description' => 'Invalid website name. Specify a valid name that contains letters and digits and does not contain special characters.'], ['errorCode' => 'QuotaExceed.SiteCount', 'errorMessage' => 'The maximum number of websites associated with your plan has been reached.', 'description' => 'The maximum number of websites associated with your plan has been reached.'], ['errorCode' => 'Site.Conflict', 'errorMessage' => 'Duplicate website names exist across multiple accounts. Rename or delete one and try again.', 'description' => 'Duplicate website names exist across multiple accounts. Rename or delete one and try again.'], ['errorCode' => 'Site.AlreadyExist', 'errorMessage' => 'The website name you specified already exists. Try with another name.', 'description' => 'The website name you specified already exists. Try with another name.'], ['errorCode' => 'SubSiteUnavailable', 'errorMessage' => 'Subdomains are allowed only in Enterprise plans. Upgrade your plan to add a subdomain to ESA.', 'description' => 'Subdomains are allowed only in Enterprise plans. Upgrade your plan to add a subdomain to ESA.'], ['errorCode' => 'Site.InvalidCoverage', 'errorMessage' => 'The selected location is unavailable in your plan. Change the location to one that is covered by the plan and try again.', 'description' => 'The selected location is unavailable in your plan. Change the location to one that is covered by the plan and try again.'], ['errorCode' => 'InvalidSiteICP', 'errorMessage' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.', 'description' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.'], ['errorCode' => 'InvalidSiteName', 'errorMessage' => 'Invalid website name. Check and try again.', 'description' => 'Invalid website name. Check and try again.'], ['errorCode' => 'Site.InBlacklist', 'errorMessage' => 'The site name is in the blacklist.', 'description' => 'The site name is in the blacklist.'], ['errorCode' => 'NoPermission', 'errorMessage' => 'You do not have permissions to access or operate on the resource.Contact your account administrator to attach the AliyunESAFullAccess policy to the current user.', 'description' => 'You do not have permissions to access or operate on the resource.Contact your account administrator to attach the AliyunESAFullAccess policy to the current user.'], ['errorCode' => 'NotInternationalRealIdentity', 'errorMessage' => 'Real-name registration is required for services offered in Mainland China.', 'description' => 'You have not passed real-name verification. According to the regulations issued by MIIT, you must pass real-name verification if you want to purchase information services in the Chinese mainland.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-3C82-72F8FD6DA2FE\\",\\n \\"SiteId\\": 1234567890123,\\n \\"NameServerList\\": \\"ns1.example.com,ns2.example.com\\",\\n \\"VerifyCode\\": \\"verify_aah9dioasmov****\\"\\n}","type":"json"}]', 'title' => 'Create a site', 'description' => '- Before creating a site, you must have an active plan instance.'."\n" .'- If the acceleration area is set to the Chinese mainland only or global, the site domain name must have a completed Internet Content Provider (ICP) filing.'."\n" .'- Each user can invoke this operation up to 100 times per hour.', 'changeSet' => [ ['createdAt' => '2024-10-10T02:01:25.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-10-08T03:26:26.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 3600, 'regionId' => '*', 'api' => 'CreateSite'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateSite', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'CreateSiteCustomLog' => [ 'summary' => 'Adds the configuration of custom request header, response header, and cookie fields that are used to capture logs of a website.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238449', 'abilityTreeNodes' => ['FEATUREdcdn9K10I1'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'formData', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '11223', 'title' => ''], ], [ 'name' => 'RequestHeaders', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'The request header fields.'."\n", 'type' => 'array', 'items' => ['description' => 'The request header field.'."\n", 'type' => 'string', 'required' => false, 'example' => 'x-acs-request-id', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResponseHeaders', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'The response header fields.'."\n", 'type' => 'array', 'items' => ['description' => 'The response header field.'."\n", 'type' => 'string', 'required' => false, 'example' => 'X_Swift_Error', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'Cookies', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'The cookie fields.'."\n", 'type' => 'array', 'items' => ['description' => 'The cookie field.'."\n", 'type' => 'string', 'required' => false, 'example' => 'sessionId', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '073bd613-6e72-4461-b6bc-19326dfc6a9c'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ], 403 => [ ['errorCode' => 'RealTimeLog.RegexpCheckFail', 'errorMessage' => 'Invalid characters exist in your parameter configurations. Check your configurations and try again.', 'description' => 'Invalid characters exist in your parameter configurations. Check your configurations and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"073bd613-6e72-4461-b6bc-19326dfc6a9c\\"\\n}","type":"json"}]', 'title' => 'CreateSiteCustomLog', 'description' => '* **Custom field limits**: The key name of a custom field can contain only letters, digits, underscores (\\_), and spaces. The key name cannot contain other characters. Otherwise, errors may occur.'."\n" .'* **Parameter passing**: Submit `SiteId`, `RequestHeaders`, `ResponseHeaders`, and `Cookies` by using `formData`. Each array element matches a custom field name.'."\n" .'* **(Required) SiteId**: Although `SiteId` is not marked as required in the Required column, you must specify a website ID by using this parameter when you can call this API operation.'."\n", 'changeSet' => [ ['createdAt' => '2024-09-27T05:57:03.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateSiteCustomLog'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:CreateSiteCustomLog', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'read', 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'CreateSiteDeliveryTask' => [ 'summary' => 'Create a real-time log shipping task.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239178', 'abilityTreeNodes' => ['FEATUREdcdn9K10I1'], ], 'parameters' => [ [ 'name' => 'BusinessType', 'in' => 'formData', 'allowEmptyValue' => false, 'schema' => ['description' => 'The business type. Valid values:'."\n" ."\n" .'- **dcdn\\_log\\_access\\_l1** (default): access log.'."\n" ."\n" .'- **dcdn\\_log\\_er**: edge function log.'."\n" ."\n" .'- **dcdn\\_log\\_waf**: WAF protection log.'."\n" ."\n" .'- **dcdn\\_log\\_ipa**: Layer-4 acceleration log.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => 'dcdn_log_access_l1'], ], [ 'name' => 'SiteId', 'in' => 'formData', 'schema' => ['description' => 'The ID of the site. You can call the [ListSites](~~2850189~~) operation to obtain the ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '12312312112***', 'title' => ''], ], [ 'name' => 'DataCenter', 'in' => 'formData', 'schema' => ['description' => 'The data center. Valid values:'."\n" ."\n" .'- **cn**: Chinese mainland.'."\n" ."\n" .'- **oversea**: regions outside the Chinese mainland.', 'type' => 'string', 'required' => false, 'example' => 'cn', 'title' => ''], ], [ 'name' => 'TaskName', 'in' => 'formData', 'schema' => ['description' => 'The task name.', 'type' => 'string', 'required' => true, 'example' => 'dcdn-test-task', 'title' => ''], ], [ 'name' => 'FieldName', 'in' => 'formData', 'schema' => ['description' => 'The log fields for delivery. Separate multiple fields with a comma (,).', 'type' => 'string', 'required' => true, 'example' => 'user_agent,ip_adress,ip_port', 'title' => ''], ], [ 'name' => 'DeliveryType', 'in' => 'formData', 'schema' => ['description' => 'The type of the delivery destination. Valid values:'."\n" ."\n" .'- **sls**: Log Service.'."\n" ."\n" .'- **http**: an HTTP service.'."\n" ."\n" .'- **aws3**: Amazon S3.'."\n" ."\n" .'- **oss**: Object Storage Service.'."\n" ."\n" .'- **kafka**: a Kafka service.'."\n" ."\n" .'- **aws3cmpt**: an Amazon S3-compatible service.', 'type' => 'string', 'required' => true, 'example' => 'sls', 'title' => ''], ], [ 'name' => 'DiscardRate', 'in' => 'formData', 'schema' => ['description' => 'The discard rate. If you do not specify this parameter, the default value 0 is used.', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '0.0', 'title' => ''], ], [ 'name' => 'S3Delivery', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'The parameters for delivering logs to an Amazon S3 bucket or an S3-compatible service.', 'type' => 'object', 'properties' => [ 'Region' => ['description' => 'The region where the service is located.', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing', 'title' => ''], 'BucketPath' => ['description' => 'The bucket path.', 'type' => 'string', 'required' => false, 'example' => 'logriver-test/log', 'title' => ''], 'AccessKey' => ['description' => 'The AccessKey ID of the Alibaba Cloud account or RAM user.', 'type' => 'string', 'required' => false, 'example' => 'yourAccessKeyID', 'title' => ''], 'SecretKey' => ['description' => 'The AccessKey secret of the S3 account.', 'type' => 'string', 'required' => false, 'example' => 'LDSIKh***', 'title' => ''], 'Endpoint' => ['description' => 'The endpoint of the server. This parameter is required when S3Cmpt is set to true.'."\n" ."\n" .'> For S3-compatible services, you must configure DNS resolution for a domain name that is spliced by the bucket and endpoint. For example, if Endpoint is set to example.com and Bucket is set to demo, the actual delivery address is demo.example.com.', 'type' => 'string', 'required' => false, 'example' => 'https://s3.oss-cn-hangzhou.aliyuncs.com', 'title' => ''], 'PrefixPath' => ['description' => 'The storage path prefix.', 'type' => 'string', 'required' => false, 'example' => 'logriver-test/log', 'title' => ''], 'S3Cmpt' => ['description' => 'Specifies whether the service is S3-compatible.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], 'ServerSideEncryption' => ['type' => 'boolean', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], 'VertifyType' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'OssDelivery', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'The parameters for delivering logs to Object Storage Service (OSS).', 'type' => 'object', 'properties' => [ 'Region' => ['description' => 'The region of the OSS bucket.', 'type' => 'string', 'required' => false, 'example' => 'cn-shanghai', 'title' => ''], 'Aliuid' => ['description' => 'The Alibaba Cloud account ID.', 'type' => 'string', 'required' => false, 'example' => '1234***', 'title' => ''], 'BucketName' => ['description' => 'The bucket name.', 'type' => 'string', 'required' => false, 'example' => 'test_rlog', 'title' => ''], 'PrefixPath' => ['description' => 'The prefix of the object key when logs are stored in the OSS bucket.', 'type' => 'string', 'required' => false, 'example' => 'test/', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'HttpDelivery', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'The parameters for delivering logs to an HTTP server.', 'type' => 'object', 'properties' => [ 'DestUrl' => ['description' => 'The URL of the destination HTTP server.', 'type' => 'string', 'required' => false, 'example' => 'http://xxx.aliyun.com/v1/log/upload', 'title' => ''], 'StandardAuthOn' => ['description' => 'Specifies whether to use standard authentication.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], 'StandardAuthParam' => [ 'description' => 'The standard authentication parameters.', 'type' => 'object', 'properties' => [ 'PrivateKey' => ['description' => 'The private key.', 'type' => 'string', 'required' => false, 'example' => '***', 'title' => ''], 'ExpiredTime' => ['description' => 'The encryption timeout period.'."\n" ."\n" .'> The value must be greater than 0. We recommend that you set the value to 300 or greater.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '300', 'title' => ''], 'UrlPath' => ['description' => 'The URI path for standard authentication.', 'type' => 'string', 'required' => false, 'example' => 'v1/log/upload', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'MaxBatchSize' => ['description' => 'The maximum number of log entries per delivery.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1000', 'title' => ''], 'MaxBatchMB' => ['description' => 'The maximum size of a delivery, in MB.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '5', 'title' => ''], 'MaxRetry' => ['description' => 'The maximum number of retries.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '3', 'title' => ''], 'TransformTimeout' => ['description' => 'The timeout period, in seconds.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10', 'title' => ''], 'LogBodyPrefix' => ['description' => 'The prefix of the delivered log package.', 'type' => 'string', 'required' => false, 'example' => 'cdnVersion:1.0', 'title' => ''], 'LogBodySuffix' => ['description' => 'The suffix of the delivered log package.', 'type' => 'string', 'required' => false, 'example' => 'cdnVersion:1.0', 'title' => ''], 'Compress' => ['description' => 'The compression method. By default, logs are delivered uncompressed.', 'type' => 'string', 'required' => false, 'example' => 'gzip', 'title' => ''], 'HeaderParam' => [ 'description' => 'The custom HTTP request headers.', 'type' => 'object', 'required' => false, 'additionalProperties' => [ 'type' => 'object', 'properties' => [ 'StaticValue' => ['description' => 'The static variable.'."\n", 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], 'description' => 'The header field.'."\n", 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'QueryParam' => [ 'description' => 'The custom query parameters.', 'type' => 'object', 'required' => false, 'additionalProperties' => [ 'type' => 'object', 'properties' => [ 'StaticValue' => ['description' => 'The static variable.'."\n", 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], 'description' => 'The name of the custom request parameter.'."\n", 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'LogSplit' => ['type' => 'boolean', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], 'LastLogSplit' => ['type' => 'boolean', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], 'LogSplitWords' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'KafkaDelivery', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'The parameters for delivering logs to a Kafka cluster.', 'type' => 'object', 'properties' => [ 'Topic' => ['description' => 'The Kafka topic.', 'type' => 'string', 'required' => false, 'example' => 'dqc_test2', 'title' => ''], 'UserAuth' => ['description' => 'Specifies whether to enable user authentication.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], 'MachanismType' => ['description' => 'The encryption method.', 'type' => 'string', 'required' => false, 'example' => 'plain', 'title' => ''], 'UserName' => ['description' => 'The username.', 'type' => 'string', 'required' => false, 'example' => 'xxx', 'title' => ''], 'Password' => ['description' => 'The password for encryption.', 'type' => 'string', 'required' => false, 'example' => '***', 'title' => ''], 'Brokers' => [ 'description' => 'The array of servers.', 'type' => 'array', 'items' => ['description' => 'The list of Kafka broker servers.', 'type' => 'string', 'required' => false, 'example' => '192.168.xxx.xxx:9902', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], 'Compress' => ['description' => 'The compression method.', 'type' => 'string', 'required' => false, 'example' => 'lz4', 'title' => ''], 'Balancer' => ['description' => 'The load balancing method.', 'type' => 'string', 'required' => false, 'example' => 'kafka.LeastBytes', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'SlsDelivery', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'The parameters for delivering logs to Log Service.', 'type' => 'object', 'properties' => [ 'SLSRegion' => ['description' => 'The region of the Log Service project.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''], 'SLSProject' => ['description' => 'The name of the Log Service project.', 'type' => 'string', 'required' => false, 'example' => 'dcdn-test20240417', 'title' => ''], 'SLSLogStore' => ['description' => 'The name of the Logstore in Log Service.', 'type' => 'string', 'required' => false, 'example' => 'accesslog-test', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'FilterVer', 'in' => 'formData', 'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response body.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.', 'type' => 'string', 'example' => '9358E852-992D-5BC7-8BD7-975CA02773A8'], 'TaskName' => ['description' => 'The name of the task.', 'type' => 'string', 'example' => 'er-oss', 'title' => ''], 'SiteId' => ['description' => 'Call the [ListSites](~~2850189~~) API to obtain this ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456****', 'title' => ''], 'DataCenter' => ['description' => 'The data center. Valid values:'."\n" ."\n" .'- **cn**: Chinese mainland.'."\n" ."\n" .'- **Overseas**: regions outside the Chinese mainland.', 'type' => 'string', 'example' => 'cn', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'RealTimeLog.ProjectExistError', 'errorMessage' => 'The real-time log delivery task name already exists. Check the task name and try again.', 'description' => 'The real-time log delivery task name already exists. Check the task name and try again.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ], 403 => [ ['errorCode' => 'RealTimeLog.KafkaBrokersExceedError', 'errorMessage' => 'The number of Kafka Broker addresses for real-time log delivery has reached the upper limit (50).', 'description' => 'The number of Kafka Broker addresses for real-time log delivery has reached the upper limit (50).'], ['errorCode' => 'RealTimeLog.S3EndpointInvalidError', 'errorMessage' => 'Invalid S3 information for the delivery task. Check your configurations and try again.', 'description' => 'Invalid S3 information for the delivery task. Check your configurations and try again.'], ['errorCode' => 'RealTimeLog.StatusQuotaError', 'errorMessage' => 'The maximum number of real-time log delivery tasks has been reached. Check your plan quota and upgrade the plan to request a quota increase.', 'description' => 'The maximum number of real-time log delivery tasks has been reached. Check your plan quota and upgrade the plan to request a quota increase.'], ['errorCode' => 'EsaService.NotOpen', 'errorMessage' => 'ESA service has not opend.', 'description' => 'Edge Security Accelerator (ESA) is not turned on'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9358E852-992D-5BC7-8BD7-975CA02773A8\\",\\n \\"TaskName\\": \\"er-oss\\",\\n \\"SiteId\\": 0,\\n \\"DataCenter\\": \\"cn\\"\\n}","type":"json"}]', 'title' => 'CreateSiteDeliveryTask', 'changeSet' => [ ['createdAt' => '2025-06-24T01:43:11.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-02-28T07:44:20.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-10-18T01:07:12.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2024-09-27T05:57:03.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-24T08:31:52.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateSiteDeliveryTask'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateSiteDeliveryTask', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'CreateTransportLayerApplication' => [ 'summary' => 'Creates a Layer 4 acceleration application.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '245117', 'abilityTreeNodes' => ['FEATUREdcdnVFT29S'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~ListSites~~) operation to obtain the site ID. The site must be activated.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'RecordName', 'in' => 'query', 'schema' => ['description' => 'The domain name of the Layer 4 application.', 'type' => 'string', 'required' => true, 'example' => 'aaa.example.com', 'title' => ''], ], [ 'name' => 'Rules', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The list of forwarding rules.', 'type' => 'array', 'items' => [ 'description' => 'The rule details. For each rule, all parameters except the comment are required.', 'type' => 'object', 'properties' => [ 'Protocol' => [ 'description' => 'The forwarding rule protocol. Valid values:'."\n" ."\n" .'- TCP: TCP protocol.'."\n" .'- UDP: UDP protocol.', 'enumValueTitles' => ['TCP' => 'TCP 协议', 'UDP' => 'UDP 协议'], 'type' => 'string', 'required' => true, 'enum' => ['TCP', 'UDP'], 'example' => 'TCP', 'title' => '', ], 'EdgePort' => ['description' => 'The edge port. The following formats are supported:'."\n" ."\n" .'- A single port, such as 80.'."\n" .'- A port range, such as 81-85, which represents ports 81, 82, 83, 84, and 85.'."\n" .'- A combination of ports and port ranges separated by commas, such as 80,81-85,90, which represents ports 80, 81, 82, 83, 84, 85, and 90.'."\n" ."\n" .'Edge ports within a single rule and across multiple rules must not overlap.', 'type' => 'string', 'required' => true, 'example' => '80', 'title' => ''], 'SourceType' => [ 'description' => 'The origin type. Valid values:'."\n" .'- **ip**: IP address.'."\n" .'- **domain**: domain name.'."\n" .'- **OP**: origin IPAM pool.'."\n" .'- **LB**: load balancing.', 'enumValueTitles' => ['OP' => '源地址池', 'LB' => '负载均衡器', 'ip' => 'IP', 'domain' => '域名'], 'type' => 'string', 'required' => true, 'enum' => ['ip', 'domain', 'OP', 'LB'], 'example' => 'ip', 'title' => '', ], 'SourcePort' => ['description' => 'Origin Server Port. The following formats are supported:'."\n" ."\n" .'- A single port. When Origin Server Port is a single port, any valid edge port combination is supported.'."\n" .'- A port range. Origin Server Port can be set to a port range only when the edge port is also a port range, and the range size must match the edge port range. For example, if the edge port is 90-93, you cannot set Origin Server Port to 81-85 because Origin Server Port range size is 5 while the edge port range size is 4, which is inconsistent.', 'type' => 'string', 'required' => true, 'example' => '80', 'title' => ''], 'ClientIPPassThroughMode' => [ 'description' => 'The client IP pass-through protocol. Valid values:'."\n" .'- **off**: disabled.'."\n" .'- **PPv1**: PROXY Protocol v1. Supports client IP pass-through for TCP.'."\n" .'- **PPv2**: PROXY Protocol v2. Supports client IP pass-through for TCP and UDP.'."\n" .'- **SPP**: Simple Proxy Protocol. Supports client IP pass-through for UDP.', 'enumValueTitles' => ['SPP' => 'Simple Proxy Protocol 协议', 'PPv2' => 'PROXY Protocol v2 协议', 'off' => '不传递', 'PPv1' => 'PROXY Protocol v1 协议'], 'type' => 'string', 'required' => true, 'enum' => ['off', 'PPv2', 'PPv1', 'SPP'], 'example' => 'SPP', 'title' => '', ], 'Source' => ['description' => 'The specific value of the origin, which must match the origin type.', 'type' => 'string', 'required' => true, 'example' => '1.1.1.1', 'title' => ''], 'Comment' => ['description' => 'The comment for the rule (optional).', 'type' => 'string', 'required' => false, 'example' => 'Test', 'title' => ''], ], 'required' => true, 'title' => '', 'example' => '', ], 'required' => true, 'title' => '', 'example' => '', ], ], [ 'name' => 'IpAccessRule', 'in' => 'query', 'schema' => [ 'description' => 'The IP access rule switch. When enabled, IP access rules in WAF take effect for the Layer 4 application. Valid values:'."\n" ."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Ipv6', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable IPv6. This feature is disabled by default. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'required' => false, 'example' => 'off', 'title' => '', ], ], [ 'name' => 'CrossBorderOptimization', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable network access optimization for the Chinese mainland. This feature is disabled by default. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'StaticIp', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable static IP. This feature is disabled by default. Valid values:'."\n" ."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'required' => false, 'example' => 'off', 'title' => '', ], ], [ 'name' => 'KeepAliveProtection', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'Specifies whether to enable keep-alive protection. This feature is disabled by default. Valid values:'."\n" ."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'off', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response details.', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '9e5448c7-edaf-49aa-9887-0fcd0832306c', 'title' => ''], 'ApplicationId' => ['description' => 'The Layer 4 application ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '165503967****', 'title' => ''], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.RecordData', 'errorMessage' => 'Invalid record content. Adjust your configurations based on the API documentation.', 'description' => 'Invalid record content. Adjust your configurations based on the API documentation.'], ['errorCode' => 'InvalidParameter.RecordType', 'errorMessage' => 'Invalid record type. Adjust your configurations based on the API documentation.', 'description' => 'Invalid record type. Adjust your configurations based on the API documentation.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'QuotaExceed.RecordCount', 'errorMessage' => 'The maximum number of records has been reached. Delete some and try again or upgrade your plan.', 'description' => 'The maximum number of records has been reached. Delete some and try again or upgrade your plan.'], ['errorCode' => 'Record.Conflict', 'errorMessage' => 'The specified record content conflicts with existing records. Adjust your configurations based on the related product documentation.', 'description' => 'The specified record content conflicts with existing records. Adjust your configurations based on the related product documentation.'], ['errorCode' => 'Site.ServiceBusy', 'errorMessage' => 'This website is being configured. Try again later.', 'description' => 'This website is being configured. Try again later.'], ['errorCode' => 'TransportLayerRulesExceedLimit', 'errorMessage' => 'The configured forwarding rules have exceeded the maximum limit. Delete useless forwarding rules and try again.', 'description' => 'The configured forwarding rules have exceeded the maximum limit. Delete useless forwarding rules and try again.'], ['errorCode' => 'TransportLayerApplicationConflict', 'errorMessage' => 'The Layer -4 accelerated application conflicts with other applications. Check whether the application name and host record conflict with other applications in the site.', 'description' => 'The Layer -4 accelerated application conflicts with other applications. Check whether the application name and host record conflict with other applications in the site.'], ['errorCode' => 'SourceCircleExist', 'errorMessage' => 'The host record of the resource to be operated on is already the source station of another resource, or the source station of the current resource has been added as a host record. To avoid loopback, modify the host record or source station and retry.', 'description' => 'The host record of the resource to be operated on is already the source station of another resource, or the source station of the current resource has been added as a host record. To avoid loopback, modify the host record or source station and retry.'], ['errorCode' => 'InvalidParameter.InvalidRecordName', 'errorMessage' => 'The record name you entered does not meet the specifications. Change the record name according to the product documentation.', 'description' => 'The record name you entered does not meet the specifications. Please adjust the record name according to the product documentation.'], ['errorCode' => 'EdgePortsOverlap', 'errorMessage' => 'There is overlap between multiple edge ports, please check and try again after modification.', 'description' => 'There is overlap between multiple edge ports, please check and try again after modification.'], ['errorCode' => 'InvalidParameter.ClientIpPassThroughMode', 'errorMessage' => 'Invalid client IP transfer protocol, please refer to the interface document and pass in valid parameters.', 'description' => 'Invalid client IP transfer protocol, please refer to the interface document and pass in valid parameters.'], ['errorCode' => 'InvalidParameter.RuleSource', 'errorMessage' => 'The origin of the forwarding rule does not exist or is invalid. Enter the correct origin and try again.', 'description' => 'The origin of the forwarding rule does not exist or is invalid. Enter the correct origin and try again.'], ['errorCode' => 'InvalidParameter.Port', 'errorMessage' => 'Invalid edge port or origin port. Enter a valid port as required in the interface document.', 'description' => 'Invalid edge port or origin port. Enter a valid port as required in the interface document.'], ['errorCode' => 'InvalidParameter.Protocol', 'errorMessage' => 'Invalid port protocol. Enter a valid port protocol as required by the interface documentation.', 'description' => 'Invalid port protocol. Enter a valid port protocol as required by the interface documentation.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'IpaResourceUnavailable', 'errorMessage' => 'The resource is unavailable.', 'description' => 'The resource is unavailable.'], ['errorCode' => 'Record.NoResource', 'errorMessage' => 'Failed to allocate resources for the record. Please submit a ticket for processing.', 'description' => 'Failed to allocate resources for the record. Please submit a work order for processing.'], ['errorCode' => 'InvalidParameter.PrivateIpAsSourceUnsupported', 'errorMessage' => 'The provided source is an invalid private IP address. Please verify and resubmit.', 'description' => 'The provided source is an invalid private IP address. Please verify and resubmit.'], ['errorCode' => 'InvalidParameter.SourceIpInBlacklist', 'errorMessage' => 'The provided source is an invalid private IP address. Please verify and resubmit.', 'description' => 'The provided source is an invalid private IP address. Please verify and resubmit.'], ['errorCode' => 'Site.NotActive', 'errorMessage' => 'The status of the applied site or site is not activated.', 'description' => 'The status of the applied site or site is not activated.'], ['errorCode' => 'IPA.KeepAliveProtectionConflict', 'errorMessage' => 'KeepAliveProtection is conflicted with StaticIp and CrossBorderOptimization, can not open at same time.', 'description' => 'KeepAliveProtection is conflicted with StaticIp and CrossBorderOptimization, can not open at same time'], ['errorCode' => 'IPA.CanNotEnableKeepAliveProtection', 'errorMessage' => 'The site has one or more TCP/UDP proxied applications with keep-alive-protection enabled. Its acceleration region or plan can\'t be edited.', 'description' => 'DDoS protection for Chinese mainland or outside the Chinese mainland can\'t be "Basic protection"'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9e5448c7-edaf-49aa-9887-0fcd0832306c\\",\\n \\"ApplicationId\\": 0\\n}","type":"json"}]', 'title' => 'Create a layer 4 acceleration application', 'description' => 'The selected site must be activated. After you create a site, call the VerifySite operation to verify the site. A site that passes verification is automatically activated, which means the Passed response parameter is set to true.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateTransportLayerApplication'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateTransportLayerApplication', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'CreateUrlObservation' => [ 'summary' => 'Creates a web monitoring configuration.', 'path' => '', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '264795', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~ListSites~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456******', 'title' => ''], ], [ 'name' => 'Url', 'in' => 'query', 'schema' => [ 'description' => 'The URL of the web page to monitor. If the site name is example.com, set Url to example.com/test or site DNS record name/path.', 'type' => 'string', 'required' => true, 'enum' => [], 'example' => 'example.com/test', 'title' => '', ], ], [ 'name' => 'SdkType', 'in' => 'query', 'schema' => [ 'description' => 'The SDK integration method. Valid values:'."\n" ."\n" .'- **automatic**: automatic integration.'."\n" .'- **manual**: manual integration.', 'enumValueTitles' => ['automatic' => 'Automatic integration.', 'manual' => 'Manual integration.'], 'type' => 'string', 'required' => true, 'enum' => ['manual', 'automatic'], 'example' => 'automatic', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F'."\n"], 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '35281609698****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'ConfExceedLimit', 'errorMessage' => 'The number of function configurations exceeds the limit. Please check the interface document to see the number of configurations that can be supported by a single function.', 'description' => 'The number of configuration items for the current function has exceeded the upper limit set by the system.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\\\n\\",\\n \\"ConfigId\\": 0\\n}","type":"json"}]', 'title' => 'Create a web monitoring configuration', 'changeSet' => [ ['createdAt' => '2025-08-18T03:46:41.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateUrlObservation'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateUrlObservation', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'CreateUserDeliveryTask' => [ 'summary' => 'Creates a custom log shipping task to SLS, HTTP, OSS, S3, or Kafka.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238999', 'abilityTreeNodes' => ['FEATUREdcdn9K10I1'], ], 'parameters' => [ [ 'name' => 'BusinessType', 'in' => 'formData', 'allowEmptyValue' => false, 'schema' => ['description' => 'The real-time log type. Valid values:'."\n" ."\n" .'- **dcdn\\_log\\_access\\_l1** (default): access log.'."\n" ."\n" .'- **dcdn\\_log\\_er**: edge function log.'."\n" ."\n" .'- **dcdn\\_log\\_waf**: WAF log.'."\n" ."\n" .'- **dcdn\\_log\\_ipa**: Layer-4 acceleration log.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => 'dcdn_log_access_l1'], ], [ 'name' => 'DataCenter', 'in' => 'formData', 'schema' => ['description' => 'The data center. Valid values:'."\n" ."\n" .'- **cn**: Chinese mainland.'."\n" ."\n" .'- **sg**: global (excluding the Chinese mainland).', 'type' => 'string', 'required' => false, 'example' => 'cn', 'title' => ''], ], [ 'name' => 'TaskName', 'in' => 'formData', 'schema' => ['description' => 'The task name.', 'type' => 'string', 'required' => true, 'example' => 'test_project', 'title' => ''], ], [ 'name' => 'FieldName', 'in' => 'formData', 'schema' => ['description' => 'The fields to be delivered. Separate multiple fields with a comma.', 'type' => 'string', 'required' => true, 'example' => 'user_agent,ip_address,ip_port', 'title' => ''], ], [ 'name' => 'DeliveryType', 'in' => 'formData', 'schema' => ['description' => 'The log delivery destination. Valid values:'."\n" ."\n" .'- **sls**: Log Service (SLS).'."\n" ."\n" .'- **http**: an HTTP service.'."\n" ."\n" .'- **aws3**: Amazon S3.'."\n" ."\n" .'- **oss**: Object Storage Service (OSS).'."\n" ."\n" .'- **kafka**: Kafka.'."\n" ."\n" .'- **aws3cmpt**: an S3-compatible service.', 'type' => 'string', 'required' => true, 'example' => 'sls', 'title' => ''], ], [ 'name' => 'DiscardRate', 'in' => 'formData', 'schema' => ['description' => 'The log discard rate. Defaults to 0.', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'S3Delivery', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'Configuration for delivering logs to Amazon S3 or an S3-compatible service.', 'type' => 'object', 'properties' => [ 'Region' => ['description' => 'The destination region.', 'type' => 'string', 'required' => false, 'example' => 'cn-shanghai', 'title' => ''], 'BucketPath' => ['description' => 'The bucket path.', 'type' => 'string', 'required' => false, 'example' => 'logriver-test/log', 'title' => ''], 'AccessKey' => ['description' => 'The access key ID for the S3 account.', 'type' => 'string', 'required' => false, 'example' => 'g0f46623ll0g0', 'title' => ''], 'SecretKey' => ['description' => 'The secret access key for the S3 account.', 'type' => 'string', 'required' => false, 'example' => '***', 'title' => ''], 'Endpoint' => ['description' => 'The S3 endpoint.', 'type' => 'string', 'required' => false, 'example' => 'https://s3.oss-cn-hangzhou.aliyuncs.com', 'title' => ''], 'PrefixPath' => ['description' => 'The object key prefix.', 'type' => 'string', 'required' => false, 'example' => 'logriver-test/log', 'title' => ''], 'S3Cmpt' => ['description' => 'Specifies whether the destination is an S3-compatible service.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], 'ServerSideEncryption' => ['type' => 'boolean', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], 'VertifyType' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'OssDelivery', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'Configuration for delivering logs to Object Storage Service (OSS).', 'type' => 'object', 'properties' => [ 'Region' => ['description' => 'The region of the destination OSS bucket.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''], 'Aliuid' => ['description' => 'The Alibaba Cloud account ID.', 'type' => 'string', 'required' => false, 'example' => '1234***', 'title' => ''], 'BucketName' => ['description' => 'The bucket name.', 'type' => 'string', 'required' => false, 'example' => 'test_rlog', 'title' => ''], 'PrefixPath' => ['description' => 'The object key prefix.', 'type' => 'string', 'required' => false, 'example' => 'test/', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'HttpDelivery', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'Configuration for delivering logs to an HTTP or HTTPS endpoint.', 'type' => 'object', 'properties' => [ 'DestUrl' => ['description' => 'The URL of the destination endpoint.', 'type' => 'string', 'required' => false, 'example' => 'http://xxx.aliyun.com/v1/log/upload', 'title' => ''], 'StandardAuthOn' => ['description' => 'Specifies whether to enable standard authentication.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], 'StandardAuthParam' => [ 'description' => 'Configuration for standard authentication.', 'type' => 'object', 'properties' => [ 'PrivateKey' => ['description' => 'The private key.', 'type' => 'string', 'required' => false, 'example' => 'xxxx', 'title' => ''], 'ExpiredTime' => ['description' => 'The expiration time, in seconds.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '300', 'title' => ''], 'UrlPath' => ['description' => 'The URL path.', 'type' => 'string', 'required' => false, 'example' => 'v1/log/upload', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'MaxBatchSize' => ['description' => 'The maximum number of log entries per delivery request.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1000', 'title' => ''], 'MaxBatchMB' => ['description' => 'The maximum size of a delivery batch, in MB.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '5', 'title' => ''], 'MaxRetry' => ['description' => 'The maximum number of retries if a delivery fails.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '3', 'title' => ''], 'TransformTimeout' => ['description' => 'The delivery timeout, in seconds.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10', 'title' => ''], 'LogBodyPrefix' => ['description' => 'The prefix to add to the log delivery payload.', 'type' => 'string', 'required' => false, 'example' => 'cdnVersion:1.0', 'title' => ''], 'LogBodySuffix' => ['description' => 'The suffix to add to the log delivery payload.', 'type' => 'string', 'required' => false, 'example' => 'cdnVersion:1.0', 'title' => ''], 'Compress' => ['description' => 'The compression method.', 'type' => 'string', 'required' => false, 'example' => 'gzip', 'title' => ''], 'LogSplitWords' => ['description' => 'The delimiter for log entries.', 'type' => 'string', 'required' => false, 'example' => '\\n', 'title' => ''], 'HeaderParam' => [ 'description' => 'Custom HTTP headers.', 'type' => 'object', 'required' => false, 'additionalProperties' => [ 'type' => 'object', 'properties' => [ 'StaticValue' => ['description' => 'The custom header value.', 'type' => 'string', 'required' => false, 'example' => 'aliyun', 'title' => ''], ], 'description' => 'The custom header name.', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'QueryParam' => [ 'description' => 'Custom query parameters.', 'type' => 'object', 'required' => false, 'additionalProperties' => [ 'type' => 'object', 'properties' => [ 'StaticValue' => ['description' => 'The custom query parameter value.', 'type' => 'string', 'required' => false, 'example' => 'v1.1', 'title' => ''], ], 'description' => 'The custom query parameter name.', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'LogSplit' => ['description' => 'Specifies whether to split log entries. Defaults to true.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], 'LastLogSplit' => ['description' => 'The trailing delimiter.', 'type' => 'boolean', 'required' => false, 'example' => '\\n', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'KafkaDelivery', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'Configuration for delivering logs to Kafka.', 'type' => 'object', 'properties' => [ 'Topic' => ['description' => 'The Kafka topic.', 'type' => 'string', 'required' => false, 'example' => 'dqc_test2', 'title' => ''], 'UserAuth' => ['description' => 'Specifies whether to enable user authentication.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], 'MachanismType' => ['description' => 'The authentication mechanism.', 'type' => 'string', 'required' => false, 'example' => 'plain', 'title' => ''], 'UserName' => ['description' => 'The username for authentication.', 'type' => 'string', 'required' => false, 'example' => 'xxx', 'title' => ''], 'Password' => ['description' => 'The password for authentication.', 'type' => 'string', 'required' => false, 'example' => 'xxx', 'title' => ''], 'Brokers' => [ 'description' => 'A list of Kafka brokers.', 'type' => 'array', 'items' => ['description' => 'A Kafka broker, in the format `host:port`.', 'type' => 'string', 'required' => false, 'example' => '192.168.0.1:9902', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], 'Compress' => ['description' => 'The compression method. Disabled by default.', 'type' => 'string', 'required' => false, 'example' => 'lz4', 'title' => ''], 'Balancer' => ['description' => 'The load balancing method.', 'type' => 'string', 'required' => false, 'example' => 'kafka.LeastBytes', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'SlsDelivery', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'Configuration for delivering logs to Log Service (SLS).', 'type' => 'object', 'properties' => [ 'SLSRegion' => ['description' => 'The region of the destination project.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''], 'SLSProject' => ['description' => 'The name of the destination project.', 'type' => 'string', 'required' => false, 'example' => 'dcdn-test20240417', 'title' => ''], 'SLSLogStore' => ['description' => 'The name of the destination logstore.', 'type' => 'string', 'required' => false, 'example' => 'accesslog-test', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'Details', 'in' => 'formData', 'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'FilterVer', 'in' => 'formData', 'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The data returned in the response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'A unique identifier for the request.', 'type' => 'string', 'example' => '2CCD40B1-3F20-5FF0-8A67-E3F34B87744F'], 'TaskName' => ['description' => 'The name of the task.', 'type' => 'string', 'example' => 'er-http', 'title' => ''], 'DataCenter' => ['description' => 'The data center. Valid values:'."\n" ."\n" .'- **cn**: Chinese mainland.'."\n" ."\n" .'- **sg**: Global (excluding Chinese mainland).', 'type' => 'string', 'example' => 'cn', 'title' => ''], 'Status' => ['description' => 'The current status of the task.', 'type' => 'string', 'example' => 'online', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Invalid parameter. Check the parameter configuration.', 'description' => 'Invalid parameter. Check the parameter configuration.'], ], 403 => [ ['errorCode' => 'ErService.NotOpen', 'errorMessage' => 'Er service has not opend.', 'description' => 'Er service has not opend.'], ['errorCode' => 'RealTimeLog.S3EndpointInvalidError', 'errorMessage' => 'Invalid S3 information for the delivery task. Check your configurations and try again.', 'description' => 'Invalid S3 information for the delivery task. Check your configurations and try again.'], ['errorCode' => 'RealTimeLog.KafkaBrokersExceedError', 'errorMessage' => 'The number of Kafka Broker addresses for real-time log delivery has reached the upper limit (50).', 'description' => 'The number of Kafka Broker addresses for real-time log delivery has reached the upper limit (50).'], ['errorCode' => 'RealTimeLog.StatusQuotaError', 'errorMessage' => 'The maximum number of real-time log delivery tasks has been reached. Check your plan quota and upgrade the plan to request a quota increase.', 'description' => 'The maximum number of real-time log delivery tasks has been reached. Check your plan quota and upgrade the plan to request a quota increase.'], ['errorCode' => 'EsaService.NotOpen', 'errorMessage' => 'ESA service has not opend.', 'description' => 'Edge Security Accelerator (ESA) is not turned on'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'CreateUserDeliveryTask', 'description' => 'Use this API to create a delivery task for specific log data. It supports multiple delivery destinations, including SLS, HTTP services, Alibaba Cloud OSS, S3-compatible storage, and Kafka message queues. You can set a custom task name, select log fields, specify a data center, set the discard rate, choose a delivery type, and configure delivery details for the selected type.'."\n" ."\n" .'- **Field Filtering**: Use `FieldName` to specify the log fields to deliver.'."\n" ."\n" .'- **Filter Rules**: Use `FilterRules` to filter log data before delivery.'."\n" ."\n" .'- **Supported delivery destinations**: Deliver logs to various destinations, including SLS, HTTP(S), Alibaba Cloud OSS, S3-compatible storage, and Kafka. Each method has specific configuration parameters.'."\n" ."\n" .'## Notes'."\n" ."\n" .'- Ensure that your AccessKey and SecretKey have the required permissions for the delivery operation.'."\n" ."\n" .'- If a delivery method requires encryption or authentication, configure its security parameters accordingly.'."\n" ."\n" .'- Verify that the `FilterRules` syntax is correct.'."\n" ."\n" .'- Adjust advanced parameters, such as the number of retries and timeout, to optimize delivery efficiency and stability.', 'changeSet' => [ ['createdAt' => '2025-06-24T01:43:11.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-12-26T08:21:56.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-10-18T01:07:12.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-27T05:57:03.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-24T08:31:53.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateUserDeliveryTask'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateUserDeliveryTask', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2CCD40B1-3F20-5FF0-8A67-E3F34B87744F\\",\\n \\"TaskName\\": \\"er-http\\",\\n \\"DataCenter\\": \\"cn\\",\\n \\"Status\\": \\"online\\"\\n}","type":"json"}]', ], 'CreateUserWafRuleset' => [ 'summary' => 'Creates an instance-level Web Application Firewall (WAF) ruleset that supports multiple types of protection rules.', 'description' => '## Operation description'."\n" .'- This API operation allows you to create a WAF ruleset for a specified instance.'."\n" .'- InstanceId is a required parameter that specifies the instance for which you want to create the ruleset.'."\n" .'- The Phase parameter defines the phase in which the ruleset is applied, such as custom rules or rate limiting.'."\n" .'- Name and Expression are required parameters that specify the ruleset name and the match expression.'."\n" .'- The optional Description parameter provides a text description of the ruleset function or purpose.'."\n" .'- Status controls whether the ruleset takes effect immediately (`on`) or is disabled (`off`).'."\n" .'- Use the Rules parameter to configure a detailed list of rules. Each rule contains properties such as name, position, expression, and action.'."\n" .'- A successful response returns the unique identifier Id of the newly created ruleset and the RuleIds list of all associated rule IDs.', 'path' => '/', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREdcdnV3YEJ8', 'FEATUREdcdnUTRW1O', 'FEATUREdcdnSU2QP6', 'FEATUREdcdnV3G3FZ', 'FEATUREdcdnBQ0J3E'], ], 'parameters' => [ [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'esa-site-ads11w', 'title' => ''], ], [ 'name' => 'Phase', 'in' => 'formData', 'schema' => ['description' => 'The phase to which the WAF ruleset belongs. Valid values:'."\n" ."\n" .'- http_whitelist: whitelist rules'."\n" .'- http_custom: custom rules'."\n" .'- http_managed: managed rules'."\n" .'- http_anti_scan: scan protection rules'."\n" .'- http_ratelimit: rate limiting rules'."\n" ."\n" .'> Note: The supported fields (Expression match fields, Action values, and others) vary by phase. For more information, refer to the rule configuration documentation for the corresponding phase.', 'type' => 'string', 'required' => true, 'example' => 'http_custom', 'title' => ''], ], [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The name of the WAF ruleset.'."\n" ."\n" .'**Naming suggestion**: Use a combination of letters, digits, and underscores for easy reference. The specific character set, maximum length, and uniqueness constraints are subject to the WAF ruleset service naming conventions.', 'type' => 'string', 'required' => true, 'example' => 'example', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'formData', 'schema' => ['description' => 'The description of the WAF ruleset.', 'type' => 'string', 'required' => false, 'example' => 'this is a test ruleset.', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'formData', 'schema' => ['description' => 'The status of the WAF ruleset. Valid values:'."\n" ."\n" .'- on: Enabled. The rules in the ruleset participate in matching and blocking.'."\n" .'- off: Disabled. The ruleset is retained but does not participate in matching.'."\n" ."\n" .'> The complete set of valid values is subject to the server-side enum.', 'type' => 'string', 'required' => true, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Expression', 'in' => 'formData', 'schema' => ['description' => 'The match expression of the WAF ruleset. Rules in this ruleset are evaluated only when a request matches this expression.'."\n" ."\n" .'Examples:'."\n" .'- `http.host eq "example.com"` — Only requests with the host example.com enter this ruleset.'."\n" .'- `starts_with(http.uri.path, "/api/")` — Only requests with the /api/ prefix enter this ruleset.'."\n" ."\n" .'> The complete expression syntax and available field set are subject to the server-side wirefilter dialect.', 'type' => 'string', 'required' => true, 'example' => 'ip.src == 1.1.1.1', 'title' => ''], ], [ 'name' => 'Shared', 'in' => 'formData', 'style' => 'json', 'schema' => ['description' => 'The shared fields across multiple rules in this ruleset, such as a unified Action or Name prefix.'."\n" ."\n" .'> The field structure is subject to the `WafBatchRuleShared` data structure. If you do not need to share properties, you can leave this parameter empty.', '$ref' => '#/components/schemas/WafBatchRuleShared', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'Rules', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'The list of rule configurations in the WAF ruleset. Each element corresponds to a rule.'."\n" ."\n" .'- The field structure of each rule is subject to the `WafRuleConfig` data structure, which includes Expression, Action, Name, and other fields.', 'type' => 'array', 'items' => ['description' => 'The rule configuration in the WAF ruleset.', '$ref' => '#/components/schemas/WafRuleConfig', 'required' => false, 'title' => '', 'example' => ''], 'required' => false, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'description' => '创建成功', 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74', 'title' => ''], 'Id' => ['description' => 'The ID of the WAF ruleset.', 'type' => 'integer', 'format' => 'int64', 'example' => '665d3af3621bccf3fe29e1a4', 'title' => ''], 'RuleIds' => [ 'description' => 'The list of rule IDs in the WAF ruleset.', 'type' => 'array', 'items' => ['description' => 'The rule ID in the WAF ruleset.', 'type' => 'integer', 'format' => 'int64', 'example' => '87570', 'title' => ''], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], 403 => [ ['errorCode' => 'Rule.Config.Noncompliance', 'errorMessage' => 'The specified rule configuration does not meet the compliance requirements.Check and adjust your configurations.', 'description' => 'The specified rule configuration does not meet the compliance requirements.Check and adjust your configurations.'], ['errorCode' => 'Rule.Config.Malformed', 'errorMessage' => 'The format of the rule configuration is invalid.Check the configuration for syntax errors or structural inconsistencies and correct them to meet the requirements.', 'description' => 'The format of the rule configuration is invalid.Check the configuration for syntax errors or structural inconsistencies and correct them to meet the requirements.'], ['errorCode' => '%s.NotSupport', 'errorMessage' => 'The specified resource type %s is not supported.', 'description' => 'The specified resource type is not supported. To use this type of resource, please contact us.'], ['errorCode' => '%s.OverQuota', 'errorMessage' => 'The quantity of %s exceeds the quota.', 'description' => 'The amount of this resource exceeds the quota. If you need to apply for more quota, please contact us.'], ['errorCode' => '%s.WrongValueMatched', 'errorMessage' => 'The value of specified parameter %s can not pass the matching check.', 'description' => 'The value of the specified parameter can not pass the matching check. If you determine that you need to use this parameter value, please contact us.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Create a WAF ruleset', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateUserWafRuleset'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:CreateUserWafRuleset', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\",\\n \\"Id\\": 0,\\n \\"RuleIds\\": [\\n 87570\\n ]\\n}","type":"json"}]', ], 'CreateVideoProcessing' => [ 'summary' => 'Create a site video processing configuration.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257663', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. For sites with configuration version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. The default value is version 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The rule name. You do not need to set this parameter when adding a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => [ 'description' => 'The rule switch. You do not need to set this parameter when adding a global configuration. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'enumValueTitles' => ['off' => 'Disabled', 'on' => 'Enabled'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The rule content, which uses conditional expressions to match user requests. You do not need to set this parameter when adding a global configuration. Two usage scenarios are supported:'."\n" .'- Match all incoming requests: set the value to true.'."\n" .'- Match specified requests: set the value to a custom expression, for example: (http.host eq \\"video.example.com\\")', 'type' => 'string', 'required' => false, 'example' => '(http.host eq \\"video.example.com\\")'."\n", 'title' => ''], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'VideoSeekEnable', 'in' => 'query', 'schema' => ['description' => 'The video seek (drag-and-play) switch. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'FlvVideoSeekMode', 'in' => 'query', 'schema' => ['description' => 'The FLV seek mode. Valid values:'."\n" .'- by_byte: seek by byte.'."\n" .'- by_time: seek by time.', 'type' => 'string', 'required' => false, 'example' => 'by_byte', 'title' => ''], ], [ 'name' => 'Mp4SeekStart', 'in' => 'query', 'schema' => ['description' => 'The custom MP4 start parameter.', 'type' => 'string', 'required' => false, 'example' => 'start', 'title' => ''], ], [ 'name' => 'Mp4SeekEnd', 'in' => 'query', 'schema' => ['description' => 'The custom MP4 end parameter.', 'type' => 'string', 'required' => false, 'example' => 'end', 'title' => ''], ], [ 'name' => 'FlvSeekStart', 'in' => 'query', 'schema' => ['description' => 'The custom FLV start parameter.', 'type' => 'string', 'required' => false, 'example' => 'start', 'title' => ''], ], [ 'name' => 'FlvSeekEnd', 'in' => 'query', 'schema' => ['description' => 'The custom FLV end parameter.', 'type' => 'string', 'required' => false, 'example' => 'end', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-280B-72F8FD6DA2FE'], 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '352816**********', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'ConfExceedLimit', 'errorMessage' => 'The number of function configurations exceeds the limit. Please check the interface document to see the number of configurations that can be supported by a single function.', 'description' => 'The number of configuration items for the current function has exceeded the upper limit set by the system.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-280B-72F8FD6DA2FE\\",\\n \\"ConfigId\\": 0\\n}","type":"json"}]', 'title' => 'CreateVideoProcessing', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateVideoProcessing'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateVideoProcessing', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'CreateWafRule' => [ 'summary' => 'Creates a rule in Web Application Firewall (WAF). You can use this operation to refine firewall behavior and improve the security of your website or application.', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239618', 'abilityTreeNodes' => ['FEATUREdcdnUTRW1O', 'FEATUREdcdnSU2QP6', 'FEATUREdcdnV3G3FZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1'], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. For sites with version management enabled, you can use this parameter to specify the site version on which the configuration takes effect. The default value is 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'Phase', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The WAF rule execution phase. This **single-creation operation** supports the following phases (it does not support `http_anti_scan` or `http_bot`. For these two phases, use the batch operation `BatchCreateWafRules`):'."\n" .'- `http_whitelist`: whitelist rule'."\n" .'- `http_custom`: custom rule'."\n" .'- `http_managed`: managed rule'."\n" .'- `http_ratelimit`: rate limiting rule'."\n" .'- `ip_access_rule`: IP access rule'."\n" .'- `http_security_level_rule`: security rule'."\n" ."\n" .'> Note: `http_anti_scan` and `http_bot` can only be created through the batch operation. Passing these two values to this operation returns an error.', 'type' => 'string', 'required' => true, 'example' => 'http_custom'], ], [ 'name' => 'RulesetId', 'in' => 'formData', 'schema' => ['description' => 'The ID of the WAF ruleset. You can call the [ListWafRulesets](~~2878359~~) operation to obtain the ruleset ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'minimum' => '1', 'example' => '10000001', 'title' => ''], ], [ 'name' => 'Config', 'in' => 'formData', 'style' => 'json', 'schema' => ['title' => '', 'description' => 'The specific configuration of the WAF rule (`WafRuleConfig` data structure). The required fields vary depending on the Phase value:'."\n" ."\n" .'- `http_custom`: `Expression` (match expression) and `Action` (action upon match) are required. Setting `Name` is recommended for easier identification.'."\n" .'- `http_whitelist`: `Expression` is required. Matched requests are allowed directly (no Action).'."\n" .'- `http_ratelimit`: `Expression` and `RateLimit` (rate limiting parameters) are required.'."\n" .'- `ip_access_rule`: `Expression` (containing IP match) and `Action` are required.'."\n" ."\n" .'> The complete field definitions are based on the `WafRuleConfig` data structure. If required fields are missing, the service returns `InvalidParameter(400)` / `Rule.Config.Malformed`.', '$ref' => '#/components/schemas/WafRuleConfig', 'required' => false, 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'RulesetId' => ['description' => 'The ID of the WAF ruleset. You can call the [ListWafRulesets](~~2878359~~) operation to obtain the ruleset ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '10000001', 'title' => ''], 'Id' => ['description' => 'The ID of the WAF rule. You can call the [ListWafRules](~~2878257~~) operation to obtain the rule ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '20000001', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ], 403 => [ ['errorCode' => '%s.NotSupport', 'errorMessage' => 'The specified resource type %s is not supported.', 'description' => 'The specified resource type is not supported. To use this type of resource, please contact us.'], ['errorCode' => '%s.OverQuota', 'errorMessage' => 'The quantity of %s exceeds the quota.', 'description' => 'The amount of this resource exceeds the quota. If you need to apply for more quota, please contact us.'], ['errorCode' => '%s.WrongValueMatched', 'errorMessage' => 'The value of specified parameter %s can not pass the matching check.', 'description' => 'The value of the specified parameter can not pass the matching check. If you determine that you need to use this parameter value, please contact us.'], ['errorCode' => 'Rule.Name.AlreadyExists', 'errorMessage' => 'The specified rule name already exists.Try again with a unique name or modify the existing rule name.', 'description' => 'The specified rule name already exists.Try again with a unique name or modify the existing rule name.'], ['errorCode' => 'Rule.Config.Malformed', 'errorMessage' => 'The format of the rule configuration is invalid.Check the configuration for syntax errors or structural inconsistencies and correct them to meet the requirements.', 'description' => 'The format of the rule configuration is invalid.Check the configuration for syntax errors or structural inconsistencies and correct them to meet the requirements.'], ['errorCode' => 'Rule.Config.Noncompliance', 'errorMessage' => 'The specified rule configuration does not meet the compliance requirements.Check and adjust your configurations.', 'description' => 'The specified rule configuration does not meet the compliance requirements.Check and adjust your configurations.'], ['errorCode' => 'Expression.Invalid', 'errorMessage' => 'The specified expression is invalid: %s.', 'description' => 'The specified expression is invalid.'], ['errorCode' => 'Ruleset.NotExist', 'errorMessage' => 'The specified rule set does not exist or has not been registered in the system.Check whether the specified rule set identifier is valid and matches a rule set that has been correctly defined and maintained by the system\'s rule set registry.If you want to add a new rule set, make sure that the creation and registration process is complete to bring the rule set into effect.', 'description' => 'The specified rule set does not exist or has not been registered in the system.Check whether the specified rule set identifier is valid and matches a rule set that has been correctly defined and maintained by the system\'s rule set registry.If you want to add a new rule set, make sure that the creation and registration process is complete to bring the rule set into effect.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"RulesetId\\": 10000001,\\n \\"Id\\": 20000001\\n}","type":"json"}]', 'title' => 'Create a WAF rule', 'changeSet' => [ ['createdAt' => '2024-09-25T07:02:52.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateWafRule'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateWafRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'CreateWafRuleset' => [ 'summary' => 'Creates a WAF ruleset.', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '264021', 'abilityTreeNodes' => ['FEATUREdcdnUTRW1O', 'FEATUREdcdnSU2QP6', 'FEATUREdcdnV3G3FZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['title' => '站点ID', 'description' => 'The site ID. To get this ID, call the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1'], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The site configuration version. This parameter applies only if versioning is enabled for the site. The default is 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'Phase', 'in' => 'formData', 'schema' => [ 'title' => 'WAF阶段', 'description' => 'The WAF rule execution phase. Valid values:'."\n" ."\n" .'- http\\_whitelist'."\n" ."\n" .'- http\\_custom'."\n" ."\n" .'- http\\_managed'."\n" ."\n" .'- http\\_anti\\_scan'."\n" ."\n" .'- http\\_ratelimit'."\n" ."\n" .'- ip\\_access\\_rule'."\n" ."\n" .'- http\\_bot'."\n" ."\n" .'- http\\_security\\_level\\_rule', 'enumValueTitles' => ['http_whitelist' => 'whitelist rules', 'http_custom' => 'custom rules', 'http_managed' => 'managed rules', 'http_anti_scan' => 'scan protection rules', 'http_ratelimit' => 'rate limiting rules', 'http_bot' => 'bot management (professional mode)'], 'type' => 'string', 'required' => true, 'example' => 'http_custom', ], ], [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The name of the WAF ruleset.', 'type' => 'string', 'required' => false, 'example' => 'example', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response object.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'Id' => ['description' => 'The ruleset ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '10000001', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ], 403 => [ ['errorCode' => '%s.NotSupport', 'errorMessage' => 'The specified resource type %s is not supported.', 'description' => 'The specified resource type is not supported. To use this type of resource, please contact us.'], ['errorCode' => '%s.OverQuota', 'errorMessage' => 'The quantity of %s exceeds the quota.', 'description' => 'The amount of this resource exceeds the quota. If you need to apply for more quota, please contact us.'], ['errorCode' => '%s.WrongValueMatched', 'errorMessage' => 'The value of specified parameter %s can not pass the matching check.', 'description' => 'The value of the specified parameter can not pass the matching check. If you determine that you need to use this parameter value, please contact us.'], ['errorCode' => 'Expression.Invalid', 'errorMessage' => 'The specified expression is invalid: %s.', 'description' => 'The specified expression is invalid.'], ['errorCode' => 'Site.NotExist', 'errorMessage' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.', 'description' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"Id\\": 10000001\\n}","type":"json"}]', 'title' => 'Create WAF Ruleset', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateWafRuleset'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateWafRuleset', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'CreateWaitingRoom' => [ 'summary' => 'Creates a waiting room for a website.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239586', 'abilityTreeNodes' => ['FEATUREdcdnO4KC7Z'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'Enable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable the waiting room. Valid values:'."\n" ."\n" .'- **on**: Enabled.'."\n" .'- **off**: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'required' => true, 'enum' => ['on', 'off'], 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The name of the waiting room.', 'type' => 'string', 'required' => true, 'example' => 'waitingroom_example'."\n", 'title' => ''], ], [ 'name' => 'QueueAllEnable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to queue all visitors. Valid values:'."\n" ."\n" .'- **on**: Enabled.'."\n" .'- **off**: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'HostNameAndPath', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The hostname and path configurations.', 'type' => 'array', 'items' => [ 'description' => 'The hostname and path details.', 'type' => 'object', 'properties' => [ 'Subdomain' => ['description' => 'The subdomain.', 'type' => 'string', 'required' => true, 'example' => 'test.', 'title' => ''], 'Domain' => ['description' => 'The domain name.', 'type' => 'string', 'required' => true, 'example' => 'example.com', 'title' => ''], 'Path' => ['description' => 'The path.', 'type' => 'string', 'required' => true, 'example' => '/test', 'title' => ''], ], 'required' => true, 'title' => '', 'example' => '', ], 'required' => true, 'title' => '', 'example' => '', ], ], [ 'name' => 'CookieName', 'in' => 'query', 'schema' => ['description' => 'The custom cookie name.', 'type' => 'string', 'required' => true, 'example' => '__aliwaitingroom_example', 'title' => ''], ], [ 'name' => 'TotalActiveUsers', 'in' => 'query', 'schema' => ['description' => 'The total number of active users.', 'type' => 'string', 'required' => true, 'example' => '300', 'title' => ''], ], [ 'name' => 'NewUsersPerMinute', 'in' => 'query', 'schema' => ['description' => 'The number of new users per minute.', 'type' => 'string', 'required' => true, 'example' => '200', 'title' => ''], ], [ 'name' => 'SessionDuration', 'in' => 'query', 'schema' => ['description' => 'The session duration, in minutes.', 'type' => 'string', 'required' => true, 'example' => '5', 'title' => ''], ], [ 'name' => 'DisableSessionRenewalEnable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to disable session renewal. Valid values:'."\n" ."\n" .'- **on**: Enabled.'."\n" .'- **off**: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'required' => false, 'enum' => ['on', 'off'], 'example' => 'on', 'title' => '', ], ], [ 'name' => 'QueuingMethod', 'in' => 'query', 'schema' => [ 'description' => 'The queuing method. Valid values:'."\n" ."\n" .'- **random**: Random.'."\n" .'- **fifo**: First in, first out.'."\n" .'- **passthrough**: Passthrough.'."\n" .'- **reject-all**: Reject all.', 'enumValueTitles' => ['random' => 'Random.', 'fifo' => 'First in, first out.', 'passthrough' => 'Passthrough.', 'reject-all' => 'Reject all.'], 'type' => 'string', 'required' => true, 'enum' => ['fifo', 'random', 'passthrough', 'reject-all'], 'example' => 'fifo', 'title' => '', ], ], [ 'name' => 'QueuingStatusCode', 'in' => 'query', 'schema' => [ 'description' => 'The waiting room status code. Valid values:'."\n" ."\n" .'- **200**'."\n" .'- **202**'."\n" .'- **429**.', 'enumValueTitles' => [], 'type' => 'string', 'required' => true, 'enum' => ['200', '202', '429'], 'example' => '200', 'title' => '', ], ], [ 'name' => 'JsonResponseEnable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable JSON response. When enabled, requests with an Accept header containing "application/json" return JSON data. Valid values:'."\n" ."\n" .'- **on**: Enabled.'."\n" .'- **off**: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Description', 'in' => 'query', 'allowEmptyValue' => true, 'schema' => ['description' => 'The description of the waiting room.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''], ], [ 'name' => 'WaitingRoomType', 'in' => 'query', 'schema' => [ 'description' => 'The type of the waiting room. Valid values:'."\n" ."\n" .'- **default**: Default type.'."\n" .'- **custom**: Custom type.', 'enumValueTitles' => ['default' => 'Default type.', 'custom' => 'Custom type.'], 'type' => 'string', 'required' => true, 'enum' => ['default', 'custom'], 'example' => 'default', 'title' => '', ], ], [ 'name' => 'CustomPageHtml', 'in' => 'query', 'allowEmptyValue' => true, 'schema' => ['description' => 'The custom waiting room page content. This parameter is required when the waiting room type is set to custom. The content must use Base64 encoding.', 'type' => 'string', 'required' => false, 'example' => 'SGVsbG8gd29ybGQ=', 'title' => ''], ], [ 'name' => 'Language', 'in' => 'query', 'allowEmptyValue' => true, 'schema' => [ 'description' => 'The language of the waiting room page. This parameter is required when the waiting room type is set to default. Valid values:'."\n" .'- **enus**: English.'."\n" .'- **zhcn**: Simplified Chinese.'."\n" .'- **zhhk**: Traditional Chinese.', 'enumValueTitles' => ['zhcn' => 'Simplified Chinese.', 'enus' => 'English.', 'zhhk' => 'Traditional Chinese.'], 'type' => 'string', 'enum' => ['enus', 'zhcn', 'zhhk'], 'required' => false, 'example' => 'enus', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '85H66C7B-671A-4297-9187-2C4477247A74', 'title' => ''], 'WaitingRoomId' => ['description' => 'The waiting room ID.', 'type' => 'string', 'example' => '8527e8405ac25bfb7fb7ca0d12b0ed83', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'ConfExceedLimit', 'errorMessage' => 'The number of function configurations exceeds the limit. Please check the interface document to see the number of configurations that can be supported by a single function.', 'description' => 'The number of configuration items for the current function has exceeded the upper limit set by the system.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"85H66C7B-671A-4297-9187-2C4477247A74\\",\\n \\"WaitingRoomId\\": \\"8527e8405ac25bfb7fb7ca0d12b0ed83\\"\\n}","type":"json"}]', 'title' => 'Create a waiting room', 'changeSet' => [ ['createdAt' => '2025-02-12T02:01:32.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateWaitingRoom'], ], ], 'ramActions' => [], ], 'CreateWaitingRoomEvent' => [ 'summary' => 'Creates a waiting room event. You can specify the queuing method and type.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239633', 'abilityTreeNodes' => ['FEATUREdcdnVCBH9N'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'WaitingRoomId', 'in' => 'query', 'schema' => ['description' => 'The waiting room ID. You can call the [ListWaitingRooms](~~2850279~~) operation to obtain the waiting room ID. The waiting room must belong to the site specified by SiteId.', 'type' => 'string', 'required' => false, 'example' => '6a51d5bc6460887abd1291dc7d4db28b', 'title' => ''], ], [ 'name' => 'Enable', 'in' => 'query', 'schema' => [ 'description' => 'The waiting room switch. Valid values:'."\n" ."\n" .'- **on**: enabled.'."\n" .'- **off**: disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'required' => true, 'enum' => ['on', 'off'], 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The name of the waiting room event.', 'type' => 'string', 'required' => true, 'example' => 'waitingroom_example', 'title' => ''], ], [ 'name' => 'TotalActiveUsers', 'in' => 'query', 'schema' => ['description' => 'The total number of active users.', 'type' => 'string', 'required' => true, 'example' => '100', 'title' => ''], ], [ 'name' => 'NewUsersPerMinute', 'in' => 'query', 'schema' => ['description' => 'The number of new users per minute.', 'type' => 'string', 'required' => true, 'example' => '10', 'title' => ''], ], [ 'name' => 'SessionDuration', 'in' => 'query', 'schema' => ['description' => 'The session duration, in minutes.', 'type' => 'string', 'required' => true, 'example' => '5', 'title' => ''], ], [ 'name' => 'DisableSessionRenewalEnable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to disable session renewal. Valid values:'."\n" ."\n" .'- **on**: enabled.'."\n" .'- **off**: disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'required' => false, 'enum' => ['on', 'off'], 'example' => 'on', 'title' => '', ], ], [ 'name' => 'QueuingMethod', 'in' => 'query', 'schema' => [ 'description' => 'The queuing method. Valid values:'."\n" ."\n" .'- **random**: random.'."\n" .'- **fifo**: first-in, first-out.'."\n" .'- **passthrough**: passthrough.'."\n" .'- **reject-all**: reject all.', 'enumValueTitles' => ['random' => 'Random.', 'fifo' => 'First-in, first-out.', 'passthrough' => 'Passthrough.', 'reject-all' => 'Reject all.'], 'type' => 'string', 'required' => true, 'enum' => ['fifo', 'random', 'passthrough', 'reject-all'], 'example' => 'random', 'title' => '', ], ], [ 'name' => 'QueuingStatusCode', 'in' => 'query', 'schema' => [ 'description' => 'The waiting room status code. Valid values:'."\n" ."\n" .'- **200**'."\n" .'- **202**'."\n" .'- **429**.', 'enumValueTitles' => [], 'type' => 'string', 'required' => true, 'enum' => ['200', '202', '429'], 'example' => '202', 'title' => '', ], ], [ 'name' => 'JsonResponseEnable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable JSON response. When enabled, requests with an Accept header containing "application/json" return JSON data. Valid values:'."\n" ."\n" .'- **on**: enabled.'."\n" .'- **off**: disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Description', 'in' => 'query', 'allowEmptyValue' => true, 'schema' => ['description' => 'The description of the waiting room.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''], ], [ 'name' => 'WaitingRoomType', 'in' => 'query', 'schema' => [ 'description' => 'The type of the waiting room. Valid values:'."\n" ."\n" .'- **default**: default type.'."\n" .'- **custom**: custom type.', 'enumValueTitles' => ['default' => 'Default type.', 'custom' => 'Custom type.'], 'type' => 'string', 'required' => true, 'enum' => ['default', 'custom'], 'example' => 'default', 'title' => '', ], ], [ 'name' => 'CustomPageHtml', 'in' => 'query', 'allowEmptyValue' => true, 'schema' => ['description' => 'The custom waiting room page content. This parameter is required when the waiting room type is set to custom. The content must use Base64 encoding.', 'type' => 'string', 'required' => false, 'example' => 'SGVsbG8gd29ybGQ=', 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The event start timestamp, such as 1705044735.', 'type' => 'string', 'required' => true, 'example' => '1719763200', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The event end timestamp, such as 1705044735.', 'type' => 'string', 'required' => true, 'example' => '1719849600', 'title' => ''], ], [ 'name' => 'PreQueueEnable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable pre-queuing. Valid values:'."\n" ."\n" .'- **on**: enabled.'."\n" .'- **off**: disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'PreQueueStartTime', 'in' => 'query', 'allowEmptyValue' => true, 'schema' => ['description' => 'The pre-queuing start timestamp, which must be at least 5 minutes earlier than the event start timestamp, such as 1705044735.', 'type' => 'string', 'required' => false, 'example' => '1719763200', 'title' => ''], ], [ 'name' => 'RandomPreQueueEnable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable random pre-queuing. Valid values:'."\n" ."\n" .'- **on**: enabled.'."\n" .'- **off**: disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Language', 'in' => 'query', 'allowEmptyValue' => true, 'schema' => [ 'description' => 'The language of the waiting room page. This parameter is required when the waiting room type is set to default. Valid values:'."\n" ."\n" .'- **enus**: English.'."\n" .'- **zhcn**: Simplified Chinese.'."\n" .'- **zhhk**: Traditional Chinese.', 'enumValueTitles' => ['zhcn' => 'Simplified Chinese.', 'enus' => 'English.', 'zhhk' => 'Traditional Chinese.'], 'type' => 'string', 'enum' => ['enus', 'zhcn', 'zhhk'], 'required' => false, 'example' => 'zhcn', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A123425345', 'title' => ''], 'WaitingRoomEventId' => ['description' => 'The waiting room event ID. You can call the [ListWaitingRoomEvents](~~2850279~~) operation to obtain the waiting room event ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '433277746085888', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'ConfExceedLimit', 'errorMessage' => 'The number of function configurations exceeds the limit. Please check the interface document to see the number of configurations that can be supported by a single function.', 'description' => 'The number of configuration items for the current function has exceeded the upper limit set by the system.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A123425345\\",\\n \\"WaitingRoomEventId\\": 433277746085888\\n}","type":"json"}]', 'title' => 'Create a waiting room event', 'description' => 'Your site plan must be Advanced or higher to use this feature. The number of configurations for this feature cannot exceed the quota included in your site plan.', 'changeSet' => [ ['createdAt' => '2025-02-12T02:01:32.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateWaitingRoomEvent'], ], ], 'ramActions' => [], ], 'CreateWaitingRoomRule' => [ 'summary' => 'Creates a waiting room bypass rule.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239640', 'abilityTreeNodes' => ['FEATUREdcdnA885EB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'WaitingRoomId', 'in' => 'query', 'schema' => ['description' => 'The ID of the waiting room to bypass.', 'type' => 'string', 'required' => true, 'example' => '25133f536f1b1f6b6091f6a92c614dd4', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The rule name. This parameter is not required when you add a global configuration.', 'type' => 'string', 'required' => true, 'example' => 'waitingroom_example'."\n", 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable the rule. This parameter is not required when you add a global configuration. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'enumValueTitles' => [], 'type' => 'string', 'required' => true, 'enum' => ['on', 'off'], 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The rule content. Use a conditional expression to match user requests. This parameter is not required when you add a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: Set the value to true.'."\n" .'- Match specified requests: Set the value to a custom expression, for example, (http.host eq \\"video.example.com\\").'."\n" ."\n" .'For the complete syntax of rule expressions, refer to https://www.alibabacloud.com/help/en/edge-security-acceleration/esa/user-guide/work-with-rules-engine/https://www.alibabacloud.com/help/edge-security-acceleration/esa/user-guide/work-with-rules-engine/', 'type' => 'string', 'required' => true, 'example' => '(http.request.uri.path.file_name eq \\"jpg\\")', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F', 'title' => ''], 'WaitingRoomRuleId' => ['description' => 'The ID of the waiting room bypass rule.', 'type' => 'integer', 'format' => 'int64', 'example' => '420072638347264', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'ConfExceedLimit', 'errorMessage' => 'The number of function configurations exceeds the limit. Please check the interface document to see the number of configurations that can be supported by a single function.', 'description' => 'The number of configuration items for the current function has exceeded the upper limit set by the system.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\",\\n \\"WaitingRoomRuleId\\": 420072638347264\\n}","type":"json"}]', 'title' => 'Create a waiting room bypass rule', 'description' => 'Your site plan must be Enterprise Edition or higher to use this feature, and the site plan must support this feature.', 'changeSet' => [ ['createdAt' => '2025-02-12T02:01:32.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateWaitingRoomRule'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:CreateWaitingRoomRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'DeactivateVersionManagement' => [ 'summary' => 'Disables the version management feature for a site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238972', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~ListSites~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890***', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'D61E4801-EAFF-4A63-AAE1-FBF6CE1CFD1C', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Site.ServiceBusy', 'errorMessage' => 'This website is being configured. Try again later.', 'description' => 'This website is being configured. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"D61E4801-EAFF-4A63-AAE1-FBF6CE1CFD1C\\"\\n}","type":"json"}]', 'title' => 'Disable site version management', 'description' => 'Version management must be enabled through the ActivateVersionManagement operation (the site VersionManagement status is true). Version management can be disabled only when only version 0 and the default environment exist.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeactivateVersionManagement'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:DeactivateVersionManagement', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'DeleteCacheRule' => [ 'summary' => 'Delete Cache Configuration', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257616', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID, which can be obtained by calling the [ListSites](~~ListSites~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '3500241*********', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'ConfigId of the configuration, which can be obtained by calling the [ListCacheRules](~~2866985~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '3528160*********', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'."\n"], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ], 404 => [ ['errorCode' => 'ConfigNotFound', 'errorMessage' => 'The specified configid does not exist.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\\\n\\"\\n}","type":"json"}]', 'title' => 'Delete Site Cache Configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteCacheRule'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteCacheRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'write', ], 'DeleteCertificate' => [ 'summary' => 'Deletes a certificate for a website.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238835', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~ListSites~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The certificate ID.'."\n", 'type' => 'string', 'required' => true, 'example' => 'babaded901474b9693acf530e0fb1d95', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The website ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123', 'title' => ''], 'SiteName' => ['description' => 'The website name.'."\n", 'type' => 'string', 'example' => 'example.com ', 'title' => ''], 'Id' => ['description' => 'The certificate ID.'."\n", 'type' => 'string', 'example' => 'babaded901474b9693acf530e0fb1d95', 'title' => ''], 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'F32C57AA-7BF8-49AE-A2CC-9F42390F5A19', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Certificate.StatusError', 'errorMessage' => 'The status of the certificate is invalid.', 'description' => 'The specified certificate status is invalid.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Id.MissingParameter', 'errorMessage' => 'The parameter Id is required.', 'description' => 'The required parameter Id is missing.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'Certificate.NotFound', 'errorMessage' => 'The specified certificate does not exist.', 'description' => 'The specified certificate does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SiteId\\": 1234567890123,\\n \\"SiteName\\": \\"example.com \\",\\n \\"Id\\": \\"babaded901474b9693acf530e0fb1d95\\",\\n \\"RequestId\\": \\"F32C57AA-7BF8-49AE-A2CC-9F42390F5A19\\"\\n}","type":"json"}]', 'title' => 'DeleteCertificate', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteCertificate'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteCertificate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'DeleteClientCaCertificate' => [ 'summary' => 'Deletes a client CA certificate.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239205', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The certificate ID.'."\n", 'type' => 'string', 'required' => true, 'example' => 'baba39055622c008b90285a8838ed09a', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The website ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123', 'title' => ''], 'SiteName' => ['description' => 'The website name.'."\n", 'type' => 'string', 'example' => 'example.com'."\n", 'title' => ''], 'Id' => ['description' => 'The certificate ID.'."\n", 'type' => 'string', 'example' => 'baba39055622c008b90285a8838ed09a', 'title' => ''], 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-280B-72F8FD6DA2FE', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Certificate.StatusError', 'errorMessage' => 'The status of the certificate is invalid.', 'description' => 'The specified certificate status is invalid.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Id.MissingParameter', 'errorMessage' => 'The parameter Id is required.', 'description' => 'The required parameter Id is missing.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'Certificate.NotFound', 'errorMessage' => 'The specified certificate does not exist.', 'description' => 'The specified certificate does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SiteId\\": 1234567890123,\\n \\"SiteName\\": \\"example.com\\\\n\\",\\n \\"Id\\": \\"baba39055622c008b90285a8838ed09a\\",\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-280B-72F8FD6DA2FE\\"\\n}","type":"json"}]', 'title' => 'DeleteClientCaCertificate', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteClientCaCertificate'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteClientCaCertificate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'DeleteClientCertificate' => [ 'summary' => 'Deletes a revoked client certificate.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238905', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The certificate ID.'."\n", 'type' => 'string', 'required' => true, 'example' => 'baba39055622c008b90285a8838ed09a', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The website ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123', 'title' => ''], 'SiteName' => ['description' => 'The website name.'."\n", 'type' => 'string', 'example' => 'example.com'."\n", 'title' => ''], 'Id' => ['description' => 'The certificate ID.'."\n", 'type' => 'string', 'example' => 'baba39055622c008b90285a8838ed09a', 'title' => ''], 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Certificate.StatusError', 'errorMessage' => 'The status of the certificate is invalid.', 'description' => 'The specified certificate status is invalid.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Id.MissingParameter', 'errorMessage' => 'The parameter Id is required.', 'description' => 'The required parameter Id is missing.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'Certificate.NotFound', 'errorMessage' => 'The specified certificate does not exist.', 'description' => 'The specified certificate does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SiteId\\": 1234567890123,\\n \\"SiteName\\": \\"example.com\\\\n\\",\\n \\"Id\\": \\"baba39055622c008b90285a8838ed09a\\",\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\"\\n}","type":"json"}]', 'title' => 'DeleteClientCertificate', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteClientCertificate'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteClientCertificate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'DeleteCompressionRule' => [ 'summary' => 'Delete compression rule', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257667', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID, which can be obtained by calling the [ListSites](~~2850189~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'Configuration ID. It can be obtained by calling the [ListCompressionRules](~~2867498~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '35281609698****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Request response result.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => 'F61CDR30-E83C-4FDA-BF73-9A94CDD44229'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ], 404 => [ ['errorCode' => 'ConfigNotFound', 'errorMessage' => 'The specified configid does not exist.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F61CDR30-E83C-4FDA-BF73-9A94CDD44229\\"\\n}","type":"json"}]', 'title' => 'Delete Compression Rule Configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteCompressionRule'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteCompressionRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'write', ], 'DeleteCustomHostname' => [ 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239584', 'abilityTreeNodes' => ['FEATUREdcdn4DMKZ4'], ], 'parameters' => [ [ 'name' => 'HostnameId', 'in' => 'query', 'schema' => ['description' => 'The ID of the custom hostname. To obtain this ID, call the [ListCustomHostnames](~~3018667~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'title' => '', 'example' => '1234567890123'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The unique ID generated by Alibaba Cloud for the request.', 'type' => 'string', 'title' => '', 'example' => '156A6B-677B1A-4297B7-9187B7-2B44792'], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'NoPermission', 'errorMessage' => 'You do not have permissions to access or operate on the resource.Contact your account administrator to attach the AliyunESAFullAccess policy to the current user.', 'description' => 'You do not have permissions to access or operate on the resource.Contact your account administrator to attach the AliyunESAFullAccess policy to the current user.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'Record.ServiceBusy', 'errorMessage' => 'The record is being configured. Try again later.', 'description' => 'The record is being configured. Try again later.'], ], 404 => [ ['errorCode' => 'CustomHostname.NotFound', 'errorMessage' => 'The custom hostname does not exist. Modify it and try again.', 'description' => 'The custom hostname does not exist. Modify it and try again.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'DeleteCustomHostname', 'summary' => 'Deletes a custom domain name from a Software as a Service (SaaS) site based on its HostnameId.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteCustomHostname', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"156A6B-677B1A-4297B7-9187B7-2B44792\\"\\n}","type":"json"}]', ], 'DeleteCustomResponseCodeRule' => [ 'summary' => 'Deletes a custom response code configuration for a site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257650', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. Obtain this by calling ListSites.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '478016908379824', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '434497172875264', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The request response result.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'C370DAF1-C838-4288-A1A0-9A87633D248E'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ], 404 => [ ['errorCode' => 'ConfigNotFound', 'errorMessage' => 'The specified configid does not exist.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DeleteCustomResponseCodeRule', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteCustomResponseCodeRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C370DAF1-C838-4288-A1A0-9A87633D248E\\"\\n}","type":"json"}]', ], 'DeleteCustomScenePolicy' => [ 'summary' => 'Deletes a scenario-specific custom policy.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239258', 'abilityTreeNodes' => ['FEATUREdcdnL8HX1L'], ], 'parameters' => [ [ 'name' => 'PolicyId', 'in' => 'query', 'schema' => ['description' => 'The policy ID, which can be obtained by calling the [DescribeCustomScenePolicies](~~2850508~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'minimum' => '1', 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '5CC228B4-7A67-4016-9C9F-4A4133494A91'], 'PolicyId' => ['description' => 'The policy ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'PolicyNotExist', 'errorMessage' => 'The policy does not exist.', 'description' => 'The policy does not exist. '], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"5CC228B4-7A67-4016-9C9F-4A4133494A91\\",\\n \\"PolicyId\\": 1\\n}","type":"json"}]', 'title' => 'DeleteCustomScenePolicy', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteCustomScenePolicy'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteCustomScenePolicy', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'DeleteEdgeContainerApp' => [ 'summary' => 'Deletes an edge container application that is no longer needed by application ID.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238431', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', 'schema' => ['description' => 'The application ID. You can call the [ListEdgeContainerApps](~~ListEdgeContainerApps~~) operation to obtain the application ID. '."\n" .'AppId is required. If this parameter is not specified, the API returns InvalidParameter.appid (400). You can obtain the value by calling ListEdgeContainerApps.'."\n" .'The AppId value is in the format of the app- prefix followed by 18 or more digits (at least 20 characters in total). You can obtain the actual value from the AppId field in the ListEdgeContainerApps response..', 'type' => 'string', 'required' => false, 'example' => 'app-1232321454***', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'], 'State' => ['description' => 'The deletion status.', 'type' => 'string', 'example' => 'ok', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidParameter.appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], 403 => [ ['errorCode' => 'Record.AlreadyExist', 'errorMessage' => 'The specified record content conflicts with existing records. Adjust your configurations based on the related product documentation.', 'description' => 'The specified record content conflicts with existing records. Adjust your configurations based on the related product documentation.'], ], [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\",\\n \\"State\\": \\"ok\\"\\n}","type":"json"}]', 'title' => 'Delete an edge container application', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteEdgeContainerApp'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteEdgeContainerApp', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'DeleteEdgeContainerAppImageSecret' => [ 'summary' => 'Deletes the image secret for an edge containerized application.', 'path' => '', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', 'schema' => ['description' => 'The application ID. Call the [ListEdgeContainerApps](~~ListEdgeContainerApps~~) operation to obtain the application ID.', 'type' => 'string', 'required' => true, 'example' => 'app-88068867578379****', 'title' => ''], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The name of the image secret.', 'type' => 'string', 'required' => true, 'example' => 'reg-123*****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Invalid parameter. Check the parameter configuration.', 'description' => 'Invalid parameter. Check the parameter configuration.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'InvalidParameter.Appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the input application ID is incorrect. You can use the ListEdgeContainerApps API to obtain the application ID.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DeleteEdgeContainerAppImageSecret', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\"\\n}","type":"json"}]', ], 'DeleteEdgeContainerAppRecord' => [ 'summary' => 'Disassociates a domain name from a containerized application. After the dissociation, you can no longer use the domain name to access the containerized application.', 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239235', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'formData', 'schema' => ['description' => 'The application ID.'."\n", 'type' => 'string', 'required' => true, 'example' => 'app-88068867578379****', 'maxLength' => 64, 'minLength' => 20, 'title' => ''], ], [ 'name' => 'SiteId', 'in' => 'formData', 'schema' => ['description' => 'The website ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '5407498413****', 'title' => ''], ], [ 'name' => 'RecordName', 'in' => 'formData', 'schema' => ['description' => 'The associated domain name.'."\n", 'type' => 'string', 'required' => true, 'example' => 'a.example.com', 'maxLength' => 1024, 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidParameter.appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","type":"json"}]', 'title' => 'DeleteEdgeContainerAppRecord', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteEdgeContainerAppRecord'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteEdgeContainerAppRecord', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'DeleteEdgeContainerAppVersion' => [ 'summary' => 'Deletes a version of a containerized application.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238348', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', 'schema' => ['description' => 'The application ID, which can be obtained by calling the [ListEdgeContainerApps](~~ListEdgeContainerApps~~) operation.'."\n", 'type' => 'string', 'required' => true, 'example' => 'app-96253477062511****', 'title' => ''], ], [ 'name' => 'VersionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the version that you want to delete. To obtain the version ID, call the [ListEdgeContainerAppVersions](~~ListEdgeContainerAppVersions~~) operation.'."\n", 'type' => 'string', 'required' => true, 'example' => 'ver-89884764010378****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'b021e538-9dde-46ed-a1f2-9469da8f3e77'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"b021e538-9dde-46ed-a1f2-9469da8f3e77\\"\\n}","type":"json"}]', 'title' => 'DeleteEdgeContainerAppVersion', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteEdgeContainerAppVersion'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteEdgeContainerAppVersion', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'DeleteHttpDDoSIntelligentRule' => [ 'summary' => 'Deletes a rule created by Deep Learning and Protection.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '263721', 'abilityTreeNodes' => ['FEATUREdcdn5DYCZJ'], 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The ID of the site. Call the [ListSites](~~ListSites~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'minimum' => '1', 'example' => '123456****', 'title' => ''], ], [ 'name' => 'RecordName', 'in' => 'query', 'schema' => ['description' => 'The name of the record.', 'type' => 'string', 'required' => true, 'minLength' => 1, 'example' => 'www.example.com', 'title' => ''], ], [ 'name' => 'RuleId', 'in' => 'query', 'schema' => ['description' => 'The ID of the rule.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'minimum' => '1', 'example' => '20928021', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Id of the request', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74'], 'SiteId' => ['description' => 'The ID of the site. Call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456****', 'title' => ''], 'RecordName' => ['description' => 'The name of the record.', 'type' => 'string', 'example' => 'www.example.com', 'title' => ''], 'RuleId' => ['description' => 'The ID of the rule.', 'type' => 'integer', 'format' => 'int64', 'example' => '20757864', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'The specified SiteId is invalid.', 'description' => 'The specified SiteId is invalid.Check parameter SiteId and try again.'], ['errorCode' => 'ErrSiteIdNoteEnterprise', 'errorMessage' => 'This feature is unavailable because your website is not associated with an Enterprise plan. Upgrade your plan to Enterprise.', 'description' => 'This feature is unavailable because your website is not associated with an Enterprise plan. Upgrade your plan to Enterprise.'], ['errorCode' => 'InvalidParameter.ApiShieldSellVerison', 'errorMessage' => 'The site does not have permissions to manipulate the enterprise-level capabilities of API security features.', 'description' => 'The site does not have permissions to manipulate the enterprise-level capabilities of API security features.'], ['errorCode' => 'SiteVersion.NotExist', 'errorMessage' => 'The specified version is invalid or version management is not enabled for your website.Make sure that you specify a valid version and version management is enabled. Then, try again.', 'description' => 'The specified version is invalid or version management is not enabled for your website.Make sure that you specify a valid version and version management is enabled. Then, try again.'], ], 403 => [ ['errorCode' => 'SiteIdDDoSVersionCheckFailed', 'errorMessage' => 'SiteId DDoS version check failed.', 'description' => 'Failed to check the DDoS version corresponding to the site.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Delete rules for deep learning and protection distribution', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteHttpDDoSIntelligentRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\",\\n \\"SiteId\\": 0,\\n \\"RecordName\\": \\"www.example.com\\",\\n \\"RuleId\\": 20757864\\n}","type":"json"}]', ], 'DeleteHttpIncomingRequestHeaderModificationRule' => [ 'summary' => 'Deletes the configuration of modifying incoming HTTP request headers for a website.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257650', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '54362329990032', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID. You can call the ListHttpIncomingRequestHeaderModificationRules operation to query the ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '427428371703808', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'C370DAF1-C838-4288-A1A0-9A87633D248E'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ], 404 => [ ['errorCode' => 'ConfigNotFound', 'errorMessage' => 'The specified configid does not exist.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C370DAF1-C838-4288-A1A0-9A87633D248E\\"\\n}","type":"json"}]', 'title' => 'DeleteHttpIncomingRequestHeaderModificationRule', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteHttpIncomingRequestHeaderModificationRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'write', ], 'DeleteHttpIncomingResponseHeaderModificationRule' => [ 'summary' => 'Deletes the configuration of modifying HTTP response headers for a website.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257656', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '672344269424192', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID. You can call the ListHttpIncomingResponseHeaderModificationRules operation to query the ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '352816096987136', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ], 404 => [ ['errorCode' => 'ConfigNotFound', 'errorMessage' => 'The specified configid does not exist.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\"\\n}","type":"json"}]', 'title' => 'DeleteHttpIncomingResponseHeaderModificationRule', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteHttpIncomingResponseHeaderModificationRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'write', ], 'DeleteHttpRequestHeaderModificationRule' => [ 'summary' => 'Deletes the configuration of modifying HTTP request headers for a website.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257650', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~ListSites~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID, which can be obtained by calling the [ListHttpRequestHeaderModificationRules](~~ListHttpRequestHeaderModificationRules~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '3528160969****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '35C66C7B-671H-4297-9187-2C4477247A78'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ], 404 => [ ['errorCode' => 'ConfigNotFound', 'errorMessage' => 'The specified configid does not exist.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"35C66C7B-671H-4297-9187-2C4477247A78\\"\\n}","type":"json"}]', 'title' => 'DeleteHttpRequestHeaderModificationRule', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteHttpRequestHeaderModificationRule'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteHttpRequestHeaderModificationRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'write', ], 'DeleteHttpResponseHeaderModificationRule' => [ 'summary' => 'Deletes the configuration of modifying HTTP response headers for a website.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257656', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID, which can be obtained by calling the [ListHttpResponseHeaderModificationRules](~~ListHttpResponseHeaderModificationRules~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '35281609698****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'F61CDR30-E83C-4FDA-BF73-9A94CDD44229'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ], 404 => [ ['errorCode' => 'ConfigNotFound', 'errorMessage' => 'The specified configid does not exist.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F61CDR30-E83C-4FDA-BF73-9A94CDD44229\\"\\n}","type":"json"}]', 'title' => 'DeleteHttpResponseHeaderModificationRule', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteHttpResponseHeaderModificationRule'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteHttpResponseHeaderModificationRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'write', ], 'DeleteHttpsApplicationConfiguration' => [ 'summary' => 'Delete HTTPS Application Configuration', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257618', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID, which can be obtained by calling the [ListSites](~~ListSites~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'ConfigId of the configuration, which can be obtained by calling the [listHttpsApplicationConfigurations](~~2869087~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '35281609698****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => '35C66C7B-671H-4297-9187-2C4477247A78'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ], 404 => [ ['errorCode' => 'ConfigNotFound', 'errorMessage' => 'The specified configid does not exist.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"35C66C7B-671H-4297-9187-2C4477247A78\\"\\n}","type":"json"}]', 'title' => 'Delete Site HTTPS Application Configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteHttpsApplicationConfiguration'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteHttpsApplicationConfiguration', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'write', ], 'DeleteHttpsBasicConfiguration' => [ 'summary' => 'Delete HTTPS Basic Configuration', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257619', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID, which can be obtained by calling the [ListSites](~~ListSites~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'ConfigId of the configuration, which can be obtained by calling the [ListHttpsBasicConfigurations](~~ListHttpsBasicConfigurations~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '3528160969****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Response Schema', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ], 404 => [ ['errorCode' => 'ConfigNotFound', 'errorMessage' => 'The specified configid does not exist.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\"\\n}","type":"json"}]', 'title' => 'Delete Site HTTPS Basic Configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteHttpsBasicConfiguration'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteHttpsBasicConfiguration', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'write', ], 'DeleteImageTransform' => [ 'summary' => 'Delete Site Image Transformation Configuration', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257355', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID, which can be obtained by calling the [ListSites](~~2850189~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'Configuration ID. It can be obtained by calling the [ListImageTransforms](~~2869056~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '352816096987136', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ], 404 => [ ['errorCode' => 'ConfigNotFound', 'errorMessage' => 'The specified configid does not exist.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\"\\n}","type":"json"}]', 'title' => 'Delete Site Image Transformation Configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteImageTransform'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteImageTransform', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'write', ], 'DeleteKeylessServer' => [ 'summary' => 'Deletes a keyless server configuration.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238835', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The ID of the site, which you can get by calling the [ListSites](~~2850189~~) API.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '11223***', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The keyless server ID.', 'type' => 'string', 'required' => true, 'example' => 'baba39055622c008b90285a8838e****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456****', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com ', 'title' => ''], 'Id' => ['description' => 'The keyless server ID.', 'type' => 'string', 'example' => 'baba39055622c008b90285a8838e****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'F61CDR30-E83C-4FDA-BF73-9A94CDD44229', 'title' => ''], ], 'title' => '', 'description' => 'The response object.', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Id.MissingParameter', 'errorMessage' => 'The parameter Id is required.', 'description' => 'The required parameter Id is missing.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'Certificate.NotFound', 'errorMessage' => 'The specified certificate does not exist.', 'description' => 'The specified certificate does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'DeleteKeylessServer', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SiteId\\": 0,\\n \\"SiteName\\": \\"example.com \\",\\n \\"Id\\": \\"baba39055622c008b90285a8838e****\\",\\n \\"RequestId\\": \\"F61CDR30-E83C-4FDA-BF73-9A94CDD44229\\"\\n}","type":"json"}]', ], 'DeleteKv' => [ 'summary' => 'Delete a specific key-value pair from a namespace.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238798', 'abilityTreeNodes' => ['FEATUREdcdnGMYWU5'], ], 'parameters' => [ [ 'name' => 'Namespace', 'in' => 'query', 'schema' => ['description' => 'The name you specified when you called [CreateKvNamespace](~~2850317~~).', 'type' => 'string', 'required' => true, 'example' => 'test_namespace', 'title' => ''], ], [ 'name' => 'Key', 'in' => 'query', 'schema' => ['description' => 'The name of the key to delete.', 'type' => 'string', 'required' => true, 'example' => 'test_key', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidAccount.Malformed', 'errorMessage' => 'The specified account is invalid.', 'description' => 'The account number is not entered correctly, for example, the input is empty.'], ['errorCode' => 'InvalidNameSpace.Malformed', 'errorMessage' => 'The specified namespace is invalid.', 'description' => 'The bucket name is entered incorrectly, such as an empty string.'], ['errorCode' => 'InvalidKey.Malformed', 'errorMessage' => 'The specified key is invalid.', 'description' => 'Key name input error, such as entering an empty string.'], ['errorCode' => 'InvalidKey.ExceedsMaximum', 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', 'description' => 'The length of the requested key is too large.'], ['errorCode' => 'InvalidValue.ExceedsMaximum', 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', 'description' => 'The value deposited is too large.'], ], 403 => [ ['errorCode' => 'InvalidKey.ExceedsCapacity', 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', 'description' => 'The capacity of the storage space exceeds the limit.'], ['errorCode' => 'Unauthorized.InvalidParameters', 'errorMessage' => 'The specified authentication parameters are invalid.', 'description' => 'Authentication parameter input error.'], ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'InvalidAccount.NotFound', 'errorMessage' => 'The specified account does not exist.', 'description' => 'The specified account does not exist.'], ['errorCode' => 'InvalidNameSpace.NotFound', 'errorMessage' => 'The specified namespace does not exist.', 'description' => ''], ['errorCode' => 'InvalidKey.NotFound', 'errorMessage' => 'The specified key does not exist.', 'description' => 'The specified key-value pair does not exist.'], ], 406 => [ ['errorCode' => 'InvalidNameSpace.Duplicate', 'errorMessage' => 'The specified namespace already exists.', 'description' => 'Specified storage space'], ['errorCode' => 'InvalidNameSpace.QuotaFull', 'errorMessage' => 'The maximum number of namespaces is exceeded.', 'description' => 'The number of storage spaces exceeds the capacity limit.'], ], 429 => [ ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests are submitted.', 'description' => 'Submissions are too frequent, please try again later'], ['errorCode' => 'TooQuickRequests', 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', 'description' => 'The modification or deletion of key-value pairs is too frequent.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'DeleteKv', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteKv'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:DeleteKv', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\"\\n}","type":"json"}]', ], 'DeleteKvNamespace' => [ 'summary' => 'Deletes a namespace from your account.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239195', 'abilityTreeNodes' => ['FEATUREdcdnGMYWU5'], ], 'parameters' => [ [ 'name' => 'Namespace', 'in' => 'query', 'schema' => ['description' => 'The name that you specified when you called [CreateKvNamespace](~~2850317~~).', 'type' => 'string', 'required' => true, 'maxLength' => 64, 'pattern' => '^[0-9a-zA-Z_-]+$', 'example' => 'test_namespace', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidAccount.Malformed', 'errorMessage' => 'The specified account is invalid.', 'description' => 'The account number is not entered correctly, for example, the input is empty.'], ['errorCode' => 'InvalidNameSpace.Malformed', 'errorMessage' => 'The specified namespace is invalid.', 'description' => 'The bucket name is entered incorrectly, such as an empty string.'], ['errorCode' => 'InvalidKey.Malformed', 'errorMessage' => 'The specified key is invalid.', 'description' => 'Key name input error, such as entering an empty string.'], ['errorCode' => 'InvalidKey.ExceedsMaximum', 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', 'description' => 'The length of the requested key is too large.'], ['errorCode' => 'InvalidValue.ExceedsMaximum', 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', 'description' => 'The value deposited is too large.'], ], 403 => [ ['errorCode' => 'InvalidKey.ExceedsCapacity', 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', 'description' => 'The capacity of the storage space exceeds the limit.'], ['errorCode' => 'Unauthorized.InvalidParameters', 'errorMessage' => 'The specified authentication parameters are invalid.', 'description' => 'Authentication parameter input error.'], ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'InvalidAccount.NotFound', 'errorMessage' => 'The specified account does not exist.', 'description' => 'The specified account does not exist.'], ['errorCode' => 'InvalidNameSpace.NotFound', 'errorMessage' => 'The specified namespace does not exist.', 'description' => ''], ['errorCode' => 'InvalidKey.NotFound', 'errorMessage' => 'The specified key does not exist.', 'description' => 'The specified key-value pair does not exist.'], ], 406 => [ ['errorCode' => 'InvalidNameSpace.Duplicate', 'errorMessage' => 'The specified namespace already exists.', 'description' => 'Specified storage space'], ['errorCode' => 'InvalidNameSpace.QuotaFull', 'errorMessage' => 'The maximum number of namespaces is exceeded.', 'description' => 'The number of storage spaces exceeds the capacity limit.'], ], 429 => [ ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests are submitted.', 'description' => 'Submissions are too frequent, please try again later'], ['errorCode' => 'TooQuickRequests', 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', 'description' => 'The modification or deletion of key-value pairs is too frequent.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'DeleteKvNamespace', 'changeSet' => [ ['createdAt' => '2025-04-03T01:43:48.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteKvNamespace'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:DeleteKvNamespace', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\"\\n}","type":"json"}]', ], 'DeleteList' => [ 'summary' => 'Deletes a custom list that is no longer needed.', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239621', 'abilityTreeNodes' => ['FEATUREdcdnL8HX1L'], ], 'parameters' => [ [ 'name' => 'Id', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The ID of the custom list, which can be obtained by calling the [ListLists](~~2850217~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '40000001'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], 403 => [ ['errorCode' => 'List.BeingBound', 'errorMessage' => 'The specified list is being bound.', 'description' => 'The specified list is being bound by one or more protection rules.'], ['errorCode' => 'List.NotExist', 'errorMessage' => 'The specified list does not exist.', 'description' => 'The specified list does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\"\\n}","type":"json"}]', 'title' => 'DeleteList', 'changeSet' => [ ['createdAt' => '2024-09-25T07:02:49.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteList'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteList', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'DeleteLoadBalancer' => [ 'summary' => 'Delete Load Balancer', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238494', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The ID of the load balancer, used to uniquely identify the load balancer to be queried. This ID is returned directly upon creation of the load balancer and can also be obtained through the [ListLoadBalancers](~~2868897~~) interface for querying all load balancers under a site.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '99867648760****', 'title' => ''], ], [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The ID of the site, which can be obtained by calling the [ListSites](~~ListSites~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1159101787****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'LoadBalancerNotExist', 'errorMessage' => 'The specified load balancer name is invalid or load balancing is not enabled for your website.Make sure that you specify a valid load balancer name and load balancing is enabled. Then, try again.', 'description' => 'The specified load balancer name is invalid or load balancing is not enabled for your website.Make sure that you specify a valid load balancer name and load balancing is enabled. Then, try again.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\"\\n}","type":"json"}]', 'title' => 'Delete Load Balancer', 'description' => 'Delete a load balancer by its ID, only one can be deleted at a time.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteLoadBalancer'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteLoadBalancer', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'DeleteNetworkOptimization' => [ 'summary' => 'Delete Network Optimization Configuration', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257620', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID, which can be obtained by calling the [ListSites](~~ListSites~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'ConfigId of the configuration, which can be obtained by calling the ListNetworkOptimizations.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '352816**********', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ], 404 => [ ['errorCode' => 'ConfigNotFound', 'errorMessage' => 'The specified configid does not exist.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","type":"json"}]', 'title' => 'Delete Site Network Optimization Configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteNetworkOptimization'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteNetworkOptimization', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'write', ], 'DeleteOriginCaCertificate' => [ 'summary' => 'Deletes an origin CA certificate.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '261743', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The certificate ID.', 'type' => 'string', 'required' => true, 'example' => 'babaabcd****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The returned data.', 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456789****', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], 'Id' => ['description' => 'The certificate ID.', 'type' => 'string', 'example' => 'babaabcd****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C370DAF1-C838-4288-A1A0-9A87633D248E', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Certificate.StatusError', 'errorMessage' => 'The status of the certificate is invalid.', 'description' => 'The specified certificate status is invalid.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Id.MissingParameter', 'errorMessage' => 'The parameter Id is required.', 'description' => 'The required parameter Id is missing.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'Certificate.NotFound', 'errorMessage' => 'The specified certificate does not exist.', 'description' => 'The specified certificate does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Delete the source server CA certificate', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteOriginCaCertificate'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteOriginCaCertificate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SiteId\\": 0,\\n \\"SiteName\\": \\"example.com\\",\\n \\"Id\\": \\"babaabcd****\\",\\n \\"RequestId\\": \\"C370DAF1-C838-4288-A1A0-9A87633D248E\\"\\n}","type":"json"}]', ], 'DeleteOriginClientCertificate' => [ 'summary' => 'Deletes an origin client certificate for a specific site.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '261752', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The ID of the site.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The ID of the certificate.', 'type' => 'string', 'required' => true, 'example' => 'babaabcd****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The returned data.', 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The ID of the site.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456789****', 'title' => ''], 'SiteName' => ['description' => 'The name of the site.', 'type' => 'string', 'example' => 'example.com'."\n", 'title' => ''], 'Id' => ['description' => 'The ID of the certificate.', 'type' => 'string', 'example' => 'babaabcd****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Certificate.StatusError', 'errorMessage' => 'The status of the certificate is invalid.', 'description' => 'The specified certificate status is invalid.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Id.MissingParameter', 'errorMessage' => 'The parameter Id is required.', 'description' => 'The required parameter Id is missing.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'Certificate.NotFound', 'errorMessage' => 'The specified certificate does not exist.', 'description' => 'The specified certificate does not exist.'], ], ], 'title' => 'Delete the domain name granularity origin fetch client certificate', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteOriginClientCertificate'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteOriginClientCertificate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SiteId\\": 0,\\n \\"SiteName\\": \\"example.com\\\\n\\",\\n \\"Id\\": \\"babaabcd****\\",\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\"\\n}","type":"json"}]', ], 'DeleteOriginPool' => [ 'summary' => 'Delete Origin Address Pool', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238349', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The ID of the origin address pool, which can be obtained by calling the [ListOriginPools](~~2863947~~) API.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '103852052519****', 'title' => ''], ], [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~ListSites~~) API.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '21655860979****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'OriginPoolNotExist', 'errorMessage' => 'The specified origin pool does not exist or does not belong to your account or website. Check and try again.', 'description' => 'The specified origin pool does not exist or does not belong to your account or website. Check and try again.'], ['errorCode' => 'PoolReferenceExist', 'errorMessage' => 'Failed to delete the origin pool because it has been referenced.Remove all references to the pool and try again.', 'description' => 'Failed to delete the origin pool because it has been referenced.Remove all references to the pool and try again.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","type":"json"}]', 'title' => 'Delete Origin Address Pool', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteOriginPool'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteOriginPool', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'DeleteOriginProtection' => [ 'summary' => 'Disable origin protection.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '250118', 'abilityTreeNodes' => ['FEATUREdcdn4VDL9A'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. For more information, see the [ListSites](~~2850189~~) API.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-A198-72F8FD6DA2FE'."\n"], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'OriginProtectionNotExist', 'errorMessage' => 'The site is not configured with origin protection, so it cannot be modified or deleted.', 'description' => 'The site is not configured with origin protection, so it cannot be modified or deleted.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'title' => 'DeleteOriginProtection', 'changeSet' => [ ['createdAt' => '2025-02-21T06:58:57.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteOriginProtection'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:DeleteOriginProtection', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-A198-72F8FD6DA2FE\\\\n\\"\\n}","type":"json"}]', ], 'DeleteOriginRule' => [ 'summary' => 'Delete Origin Rule Configuration', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257621', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID, which can be obtained by calling the [ListSites](~~ListSites~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '3400350********', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'ConfigId of the configuration, which can be obtained by calling the [ListOriginRules](~~2866989~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '33793140540****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ], 404 => [ ['errorCode' => 'ConfigNotFound', 'errorMessage' => 'The specified configid does not exist.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","type":"json"}]', 'title' => 'Delete Origin Rule Configuration for Site', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteOriginRule'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteOriginRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'write', ], 'DeletePage' => [ 'summary' => 'Deletes a custom error page that is no longer needed.', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239625', 'abilityTreeNodes' => ['FEATUREdcdnL8HX1L'], ], 'parameters' => [ [ 'name' => 'Id', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The ID of the custom error page, which can be obtained by calling the [ListPages](~~2850223~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '50000001'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'Id' => ['title' => '', 'description' => 'The ID of the custom error page.[](~~2850223~~)'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '50000001'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], 403 => [ ['errorCode' => 'Page.BeingBound', 'errorMessage' => 'Failed to delete the custom error page because it has been associated with one or more rules.'."\n" ."\n" .'Dissociate all rules from the error page first.', 'description' => 'Failed to delete the custom error page because it has been associated with one or more rules.'."\n" ."\n" .'Dissociate all rules from the error page first.'], ['errorCode' => 'Page.NotExist', 'errorMessage' => 'The specified custom error page does not exist or is not recognized by the system.Check whether the error page identifier is correct and matches an error page that has been created and registered in the system\'s error handling framework.If you want to create a new error page, make sure that the creation process is complete.', 'description' => 'The specified custom error page does not exist or is not recognized by the system.Check whether the error page identifier is correct and matches an error page that has been created and registered in the system\'s error handling framework.If you want to create a new error page, make sure that the creation process is complete.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"Id\\": 50000001\\n}","type":"json"}]', 'title' => 'DeletePage', 'changeSet' => [ ['createdAt' => '2024-09-25T07:02:48.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeletePage'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeletePage', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'DeleteRecord' => [ 'summary' => 'Deletes a DNS record based on its RecordId.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239584', 'abilityTreeNodes' => ['FEATUREdcdnVFT29S'], ], 'parameters' => [ [ 'name' => 'RecordId', 'in' => 'query', 'schema' => ['description' => 'The ID of the DNS record. You can get this ID by calling the [ListRecords](~~2850265~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.', 'type' => 'string', 'example' => 'F61CDR30-E83C-4FDA-BF73-9A94CDD44229'], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'NoPermission', 'errorMessage' => 'You do not have permissions to access or operate on the resource.Contact your account administrator to attach the AliyunESAFullAccess policy to the current user.', 'description' => 'You do not have permissions to access or operate on the resource.Contact your account administrator to attach the AliyunESAFullAccess policy to the current user.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'Record.Reserved', 'errorMessage' => 'Another operation on the record is in progress. Try again later.', 'description' => 'Another operation on the record is in progress. Try again later.'], ['errorCode' => 'Record.ServiceBusy', 'errorMessage' => 'The record is being configured. Try again later.', 'description' => 'The record is being configured. Try again later.'], ['errorCode' => 'Record.ProtectedAsCustomHostnameSource', 'errorMessage' => 'Failed to delete the record because it is the origin server of existing custom hostnames.Remove all references to the record and try again.', 'description' => 'Failed to delete the record because it is the origin server of existing custom hostnames.Remove all references to the record and try again.'], ], 404 => [ ['errorCode' => 'Record.NotFound', 'errorMessage' => 'The record does not exist. Check your configurations and try again.', 'description' => 'The record does not exist. Check your configurations and try again.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'Delete a DNS record ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteRecord'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteRecord', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F61CDR30-E83C-4FDA-BF73-9A94CDD44229\\"\\n}","type":"json"}]', ], 'DeleteRedirectRule' => [ 'summary' => 'Deletes a URL redirect rule for a website.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257661', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID, which can be obtained by calling the [ListRedirectRules](~~ListRedirectRules~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '35281609698****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'BF9B849D-D847-5B16-9371-8ECB557A5921'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ], 404 => [ ['errorCode' => 'ConfigNotFound', 'errorMessage' => 'The specified configid does not exist.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"BF9B849D-D847-5B16-9371-8ECB557A5921\\"\\n}","type":"json"}]', 'title' => 'DeleteRedirectRule', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteRedirectRule'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteRedirectRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'write', ], 'DeleteRewriteUrlRule' => [ 'summary' => 'Deletes a URL rewrite rule for a website.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257645', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID, which can be obtained by calling the [ListRewriteUrlRules](~~ListRewriteUrlRules~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '35281609698****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '35C66C7B-671H-4297-9187-2C4477247A78'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ], 404 => [ ['errorCode' => 'ConfigNotFound', 'errorMessage' => 'The specified configid does not exist.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"35C66C7B-671H-4297-9187-2C4477247A78\\"\\n}","type":"json"}]', 'title' => 'DeleteRewriteUrlRule', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteRewriteUrlRule'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteRewriteUrlRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'write', ], 'DeleteRoutine' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238943', 'abilityTreeNodes' => ['FEATUREdcdn75UYDO'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The name of the Edge Routine.', 'type' => 'string', 'required' => true, 'example' => 'test-routine1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395'], 'Status' => ['description' => 'The status of the operation, which indicates success or failure.', 'type' => 'string', 'example' => 'OK', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'RoutineNotExist', 'errorMessage' => 'The routine name does not exist. Check the routine name and try again.', 'description' => 'The routine name does not exist. Check the routine name and try again.'], ['errorCode' => 'DependedByOthers', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'SiteParameterNotMatch', 'errorMessage' => 'Failed to verify website parameters.Check the parameters and try again.', 'description' => 'Failed to verify website parameters.Check the parameters and try again.'], ['errorCode' => 'RoutineUserServiceStatusHalt', 'errorMessage' => 'Failed to update the configurations because you have overdue payments.', 'description' => 'Failed to update the configurations because you have overdue payments.'], ['errorCode' => 'InternalOperationError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'ParameterNotExist', 'errorMessage' => 'The specified parameter does not exist. Check your configurations and try again.', 'description' => 'The specified parameter does not exist. Check your configurations and try again.'], ['errorCode' => 'CodeVersionInUse', 'errorMessage' => 'Failed to delete the code version because it is being used. Before you delete it, roll back to the previous version.', 'description' => 'Failed to delete the code version because it is being used. Before you delete it, roll back to the previous version.'], ['errorCode' => 'UserOperationStatusIsLocked', 'errorMessage' => 'You are calling an another routine related api. Please wait for the api finished, and try again later.', 'description' => 'You are calling an another routine related api. Please wait for the api finished, and try again later.'], ], ], 'title' => 'Delete an edge routine', 'summary' => 'Deletes an Edge Routine.', 'changeSet' => [ ['createdAt' => '2024-12-04T05:48:48.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-11-05T06:54:07.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteRoutine'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteRoutine', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395\\",\\n \\"Status\\": \\"OK\\"\\n}","type":"json"}]', ], 'DeleteRoutineCodeVersion' => [ 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238902', 'abilityTreeNodes' => ['FEATUREdcdn75UYDO'], ], 'parameters' => [ [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The routine name.'."\n", 'type' => 'string', 'required' => true, 'example' => 'test-routine1', 'title' => ''], ], [ 'name' => 'CodeVersion', 'in' => 'formData', 'schema' => ['description' => 'The code version.'."\n", 'type' => 'string', 'required' => true, 'example' => '1710120201067203242', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395'], 'Status' => ['description' => 'Indicates whether the operation is successful.'."\n", 'type' => 'string', 'example' => 'OK', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'RoutineNotExist', 'errorMessage' => 'The routine name does not exist. Check the routine name and try again.', 'description' => 'The routine name does not exist. Check the routine name and try again.'], ['errorCode' => 'DependedByOthers', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'SiteParameterNotMatch', 'errorMessage' => 'Failed to verify website parameters.Check the parameters and try again.', 'description' => 'Failed to verify website parameters.Check the parameters and try again.'], ['errorCode' => 'RoutineUserServiceStatusHalt', 'errorMessage' => 'Failed to update the configurations because you have overdue payments.', 'description' => 'Failed to update the configurations because you have overdue payments.'], ['errorCode' => 'InternalOperationError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'ParameterNotExist', 'errorMessage' => 'The specified parameter does not exist. Check your configurations and try again.', 'description' => 'The specified parameter does not exist. Check your configurations and try again.'], ['errorCode' => 'CodeVersionInUse', 'errorMessage' => 'Failed to delete the code version because it is being used. Before you delete it, roll back to the previous version.', 'description' => 'Failed to delete the code version because it is being used. Before you delete it, roll back to the previous version.'], ['errorCode' => 'UserOperationStatusIsLocked', 'errorMessage' => 'You are calling an another routine related api. Please wait for the api finished, and try again later.', 'description' => 'You are calling an another routine related api. Please wait for the api finished, and try again later.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DeleteRoutineCodeVersion', 'summary' => 'Deletes a code version of a routine.', 'changeSet' => [ ['createdAt' => '2024-12-04T05:48:47.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-11-05T06:54:07.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteRoutineCodeVersion'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:DeleteRoutineCodeVersion', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395\\",\\n \\"Status\\": \\"OK\\"\\n}","type":"json"}]', ], 'DeleteRoutineRelatedRecord' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239362', 'abilityTreeNodes' => ['FEATUREdcdn75UYDO'], ], 'parameters' => [ [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The name of the Edge Routine.', 'type' => 'string', 'required' => true, 'example' => 'test-xxx', 'title' => ''], ], [ 'name' => 'RecordId', 'in' => 'formData', 'schema' => ['description' => 'The record ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '12345'."\n", 'title' => ''], ], [ 'name' => 'RecordName', 'in' => 'formData', 'schema' => ['description' => 'The record name.', 'type' => 'string', 'required' => true, 'example' => 'test-xxx.example.com', 'title' => ''], ], [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '12345', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395'], 'Status' => ['description' => 'The operation status. Valid values:'."\n" ."\n" .'* **OK**: The operation was successful.'."\n" .'* **Fail**: The operation failed.', 'type' => 'string', 'example' => 'OK', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'RoutineNotExist', 'errorMessage' => 'The routine name does not exist. Check the routine name and try again.', 'description' => 'The routine name does not exist. Check the routine name and try again.'], ['errorCode' => 'DependedByOthers', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'SiteParameterNotMatch', 'errorMessage' => 'Failed to verify website parameters.Check the parameters and try again.', 'description' => 'Failed to verify website parameters.Check the parameters and try again.'], ['errorCode' => 'RoutineUserServiceStatusHalt', 'errorMessage' => 'Failed to update the configurations because you have overdue payments.', 'description' => 'Failed to update the configurations because you have overdue payments.'], ['errorCode' => 'InternalOperationError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'ParameterNotExist', 'errorMessage' => 'The specified parameter does not exist. Check your configurations and try again.', 'description' => 'The specified parameter does not exist. Check your configurations and try again.'], ['errorCode' => 'UserOperationStatusIsLocked', 'errorMessage' => 'You are calling an another routine related api. Please wait for the api finished, and try again later.', 'description' => 'You are calling an another routine related api. Please wait for the api finished, and try again later.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Delete an edge routine association record', 'summary' => 'Deletes an association record of an Edge Routine.', 'changeSet' => [ ['createdAt' => '2024-12-04T05:48:48.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-11-05T06:54:06.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteRoutineRelatedRecord'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:DeleteRoutineRelatedRecord', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395\\",\\n \\"Status\\": \\"OK\\"\\n}","type":"json"}]', ], 'DeleteRoutineRoute' => [ 'summary' => 'Deletes the route configuration of an edge function.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '266192', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '11223***', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The ID of the configuration. You can call the [ListSiteRoutes](~~2879631~~) operation to obtain the ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '3528160969****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ], 404 => [ ['errorCode' => 'ConfigNotFound', 'errorMessage' => 'The specified configid does not exist.', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\"\\n}","type":"json"}]', 'title' => 'DeleteRoutineRoute', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteRoutineRoute'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteRoutineRoute', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'DeleteScheduledPreloadExecution' => [ 'summary' => 'Deletes a single scheduled preload plan.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238929', 'abilityTreeNodes' => ['FEATUREdcdn4TTNAL'], ], 'parameters' => [ [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The preload plan ID.', 'type' => 'string', 'required' => true, 'example' => '665d3b48621bccf3fe29e1a7', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Response schema', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'InvalidJob.JobCountOfSiteFull', 'errorMessage' => 'The maximum number of prefetch tasks for the website has been reached. Delete some unwanted ones and try again.', 'description' => 'The maximum number of prefetch tasks for the website has been reached. Delete some unwanted ones and try again.'], ['errorCode' => 'InvalidParameter.ObjectId', 'errorMessage' => 'Invalid task ID or execution plan ID.', 'description' => 'Invalid task ID or execution plan ID.'], ['errorCode' => 'MissingOssUrl', 'errorMessage' => 'OssUrl missing. Specify a valid URL of the OSS object that stores URLs to prefetch.', 'description' => 'OssUrl missing. Specify a valid URL of the OSS object that stores URLs to prefetch.'], ['errorCode' => 'MissingUrlList', 'errorMessage' => 'Enter the URLs you want to prefetch.', 'description' => 'Enter the URLs you want to prefetch.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ], 403 => [ ['errorCode' => 'InvalidUid.PermissionDenied', 'errorMessage' => 'You do not have the permissions to perform this operation on this resource. Check whether the specified UID is correct and has the required permissions.', 'description' => 'You do not have the permissions to perform this operation on this resource. Check whether the specified UID is correct and has the required permissions.'], ], [ ['errorCode' => 'InvalidJob.NotFound', 'errorMessage' => 'The task does not exist. Check whether the task ID is correct or whether the task has been deleted.', 'description' => 'The task does not exist. Check whether the task ID is correct or whether the task has been deleted.'], ['errorCode' => 'LogNotFound', 'errorMessage' => 'Failed to query the log. Check whether the task ID and execution ID are valid.', 'description' => 'Failed to query the log. Check whether the task ID and execution ID are valid.'], ['errorCode' => 'InvalidExecution.NotFound', 'errorMessage' => 'The execution plan does not exist. Check whether the parameters such as the execution ID, start time, and end time are correct.', 'description' => 'The execution plan does not exist. Check whether the parameters such as the execution ID, start time, and end time are correct.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'DeleteScheduledPreloadExecution', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteScheduledPreloadExecution'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:DeleteScheduledPreloadExecution', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","type":"json"}]', ], 'DeleteScheduledPreloadJob' => [ 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239180', 'abilityTreeNodes' => ['FEATUREdcdn4TTNAL'], ], 'parameters' => [ [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The scheduled preload job ID.', 'type' => 'string', 'required' => true, 'example' => '665d3af3621bccf3fe29e1a4'."\n", 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response object.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'C370DAF1-C838-4288-A1A0-9A87633D248E'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'InvalidJob.JobCountOfSiteFull', 'errorMessage' => 'The maximum number of prefetch tasks for the website has been reached. Delete some unwanted ones and try again.', 'description' => 'The maximum number of prefetch tasks for the website has been reached. Delete some unwanted ones and try again.'], ['errorCode' => 'InvalidParameter.ObjectId', 'errorMessage' => 'Invalid task ID or execution plan ID.', 'description' => 'Invalid task ID or execution plan ID.'], ['errorCode' => 'MissingOssUrl', 'errorMessage' => 'OssUrl missing. Specify a valid URL of the OSS object that stores URLs to prefetch.', 'description' => 'OssUrl missing. Specify a valid URL of the OSS object that stores URLs to prefetch.'], ['errorCode' => 'MissingUrlList', 'errorMessage' => 'Enter the URLs you want to prefetch.', 'description' => 'Enter the URLs you want to prefetch.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ], 403 => [ ['errorCode' => 'InvalidUid.PermissionDenied', 'errorMessage' => 'You do not have the permissions to perform this operation on this resource. Check whether the specified UID is correct and has the required permissions.', 'description' => 'You do not have the permissions to perform this operation on this resource. Check whether the specified UID is correct and has the required permissions.'], ], [ ['errorCode' => 'InvalidJob.NotFound', 'errorMessage' => 'The task does not exist. Check whether the task ID is correct or whether the task has been deleted.', 'description' => 'The task does not exist. Check whether the task ID is correct or whether the task has been deleted.'], ['errorCode' => 'LogNotFound', 'errorMessage' => 'Failed to query the log. Check whether the task ID and execution ID are valid.', 'description' => 'Failed to query the log. Check whether the task ID and execution ID are valid.'], ['errorCode' => 'InvalidExecution.NotFound', 'errorMessage' => 'The execution plan does not exist. Check whether the parameters such as the execution ID, start time, and end time are correct.', 'description' => 'The execution plan does not exist. Check whether the parameters such as the execution ID, start time, and end time are correct.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'DeleteScheduledPreloadJob', 'summary' => 'Deletes a specified scheduled preload job.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteScheduledPreloadJob'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteScheduledPreloadJob', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C370DAF1-C838-4288-A1A0-9A87633D248E\\"\\n}","type":"json"}]', ], 'DeleteSite' => [ 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239599', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The ID of the site to delete. Call the [ListSites](~~2850189~~) operation to obtain site IDs.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247B78', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Site.ServiceBusy', 'errorMessage' => 'This website is being configured. Try again later.', 'description' => 'This website is being configured. Try again later.'], ['errorCode' => 'NameServerNotDelete', 'errorMessage' => 'Before deleting the site, you need to go to your domain name service provider to delete the NS record assigned by ESA for the site (to avoid that you forget to delete NS and other users steal your site).', 'description' => 'Before deleting the site, you need to go to your domain name service provider to delete the NS record assigned by ESA for the site (to avoid that you forget to delete NS and other users steal your site).'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DeleteSite', 'summary' => 'Deletes a site by site ID.', 'changeSet' => [ ['createdAt' => '2025-01-10T01:51:16.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteSite'], ], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247B78\\"\\n}","type":"json"}]', ], 'DeleteSiteDeliveryTask' => [ 'summary' => 'Deletes a real-time log delivery task.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239145', 'abilityTreeNodes' => ['FEATUREdcdn9K10I1'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'formData', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456******', 'title' => ''], ], [ 'name' => 'TaskName', 'in' => 'formData', 'schema' => ['description' => 'The name of the delivery task.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cdn-test-task', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'F61CDR30-E83C-4FDA-BF73-9A94CDD44229'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ], 403 => [ ['errorCode' => 'EsaService.NotOpen', 'errorMessage' => 'ESA service has not opend.', 'description' => 'Edge Security Accelerator (ESA) is not turned on'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F61CDR30-E83C-4FDA-BF73-9A94CDD44229\\"\\n}","type":"json"}]', 'title' => 'DeleteSiteDeliveryTask', 'changeSet' => [ ['createdAt' => '2024-10-18T01:07:12.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-27T05:57:02.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteSiteDeliveryTask'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:DeleteSiteDeliveryTask', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'write', 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'DeleteSiteOriginClientCertificate' => [ 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '261745', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The certificate ID.', 'type' => 'string', 'required' => true, 'example' => 'babaabcd****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response body.', 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456789****', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com'."\n", 'title' => ''], 'Id' => ['description' => 'The certificate ID.', 'type' => 'string', 'example' => 'babaabcd****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Certificate.StatusError', 'errorMessage' => 'The status of the certificate is invalid.', 'description' => 'The specified certificate status is invalid.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Id.MissingParameter', 'errorMessage' => 'The parameter Id is required.', 'description' => 'The required parameter Id is missing.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'Certificate.NotFound', 'errorMessage' => 'The specified certificate does not exist.', 'description' => 'The specified certificate does not exist.'], ], ], 'title' => 'Delete the site-granularity origin fetch client certificate', 'summary' => 'Deletes a site-level origin client certificate.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteSiteOriginClientCertificate'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteSiteOriginClientCertificate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SiteId\\": 0,\\n \\"SiteName\\": \\"example.com\\\\n\\",\\n \\"Id\\": \\"babaabcd****\\",\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\"\\n}","type":"json"}]', ], 'DeleteTransportLayerApplication' => [ 'summary' => 'Delete Transport Layer Application', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '245121', 'abilityTreeNodes' => ['FEATUREdcdn2E10XY'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID, which can be obtained by calling the [ListSites](~~2850189~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ApplicationId', 'in' => 'query', 'schema' => ['description' => 'Application ID, which can be obtained by calling the [ListTransportLayerApplications](~~ListTransportLayerApplications~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '170996390868****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'Request response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => '90510C29-1E40-5A11-93F1-B9F5EDF57EE1'], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'TransportLayerApplicationNotExist', 'errorMessage' => 'The layer -4 accelerated application of the current operation does not exist. Modify it and try again.', 'description' => 'The layer -4 accelerated application of the current operation does not exist. Modify it and try again.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'IpaNotActive', 'errorMessage' => 'The ipa application is not active.', 'description' => 'The ipa application is not active.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"90510C29-1E40-5A11-93F1-B9F5EDF57EE1\\"\\n}","type":"json"}]', 'title' => 'Delete Transport Layer Acceleration Application', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteTransportLayerApplication', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'DeleteUrlObservation' => [ 'summary' => 'Deletes page monitoring configurations.', 'path' => '', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '264796', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID, which can be obtained by calling the [ListUrlObservations](~~ListUrlObservations~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '35281609698****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Id of the request'."\n", 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\"\\n}","type":"json"}]', 'title' => 'DeleteUrlObservation', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteUrlObservation'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteUrlObservation', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'DeleteUserDeliveryTask' => [ 'summary' => 'Deletes a log delivery task from your Alibaba Cloud account.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239170', 'abilityTreeNodes' => ['FEATUREdcdn9K10I1'], ], 'parameters' => [ [ 'name' => 'TaskName', 'in' => 'formData', 'schema' => ['description' => 'The name of the delivery task.'."\n", 'type' => 'string', 'required' => true, 'example' => 'test-project', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '952ea16b-1f05-4a76-bb32-420282d8aeb9'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'ErService.HasOpened', 'errorMessage' => 'You have already activated Edge Routine.', 'description' => 'You have already activated Edge Routine.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ], 403 => [ ['errorCode' => 'EsaService.NotOpen', 'errorMessage' => 'ESA service has not opend.', 'description' => 'Edge Security Accelerator (ESA) is not turned on'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"952ea16b-1f05-4a76-bb32-420282d8aeb9\\"\\n}","type":"json"}]', 'title' => 'DeleteUserDeliveryTask', 'description' => '******> '."\n" ."\n" .'* Deleted tasks cannot be restored. Proceed with caution.'."\n" .'* To call this operation, you must have an account that has the required permissions.'."\n" .'* The returned `RequestId` value can be used to track the request processing progress and troubleshoot issues.'."\n", 'changeSet' => [ ['createdAt' => '2024-10-18T01:07:11.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-27T05:57:02.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteUserDeliveryTask'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteUserDeliveryTask', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'DeleteUserWafRuleset' => [ 'summary' => 'Deletes a WAF ruleset from a specified instance.', 'description' => '## Request description'."\n" ."\n" .'- The `InstanceId` and `Id` parameters are required. These parameters specify the ID of the WAF instance and the ID of the ruleset to delete.', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREdcdnV3YEJ8', 'FEATUREdcdnUTRW1O', 'FEATUREdcdnSU2QP6', 'FEATUREdcdnV3G3FZ', 'FEATUREdcdnBQ0J3E'], ], 'parameters' => [ [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the instance.', 'type' => 'string', 'required' => true, 'example' => 'esa-xxxxxxx', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'formData', 'schema' => ['description' => 'The ID of the WAF ruleset.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '10000001', 'title' => ''], ], ], 'responses' => [ 200 => [ 'description' => '创建成功', 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The schema of the response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'xxxx-xxxx-xxxx-xxxx', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], 403 => [ ['errorCode' => 'Ruleset.NotExist', 'errorMessage' => 'The specified rule set does not exist or has not been registered in the system.Check whether the specified rule set identifier is valid and matches a rule set that has been correctly defined and maintained by the system\'s rule set registry.If you want to add a new rule set, make sure that the creation and registration process is complete to bring the rule set into effect.', 'description' => 'The specified rule set does not exist or has not been registered in the system.Check whether the specified rule set identifier is valid and matches a rule set that has been correctly defined and maintained by the system\'s rule set registry.If you want to add a new rule set, make sure that the creation and registration process is complete to bring the rule set into effect.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DeleteUserWafRuleset', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:DeleteUserWafRuleset', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxxx-xxxx-xxxx-xxxx\\"\\n}","type":"json"}]', ], 'DeleteVideoProcessing' => [ 'summary' => 'Deletes a video processing configuration.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257667', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID. You can call the [ListVideoProcessings](~~ListVideoProcessings~~) operation to obtain the ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '35281609698****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '6abd807e-ed2a-44de-ac54-ac38a62472e6'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ], 404 => [ ['errorCode' => 'ConfigNotFound', 'errorMessage' => 'The specified configid does not exist.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6abd807e-ed2a-44de-ac54-ac38a62472e6\\"\\n}","type":"json"}]', 'title' => 'DeleteVideoProcessing', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteVideoProcessing', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'DeleteWafRule' => [ 'summary' => 'Deletes a specified rule in Web Application Firewall (WAF). This operation also deletes the configurations and conditions associated with the rule.', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239585', 'abilityTreeNodes' => ['FEATUREdcdnUTRW1O', 'FEATUREdcdnSU2QP6', 'FEATUREdcdnV3G3FZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['title' => '站点ID', 'description' => 'The site ID. You can obtain this ID by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1'], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. If configuration version management is enabled, this parameter specifies the site version to which the configuration applies. The default value is 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'formData', 'schema' => ['title' => '规则ID', 'description' => 'The ID of the WAF rule. You can obtain this ID by calling the [ListWafRules](~~2878257~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '20000001'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The returned data.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'Rule.NotExist', 'errorMessage' => 'The specified rule does not exist.', 'description' => 'The specified rule does not exist in the current context or system configuration. Please verify the existence of the rule identifier and ensure it has been correctly defined or implemented.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\"\\n}","type":"json"}]', 'title' => 'Delete WAF Rule', 'changeSet' => [ ['createdAt' => '2024-09-25T07:02:52.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteWafRule'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteWafRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'DeleteWafRuleset' => [ 'summary' => 'Deletes a specified Web Application Firewall (WAF) ruleset.', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239657', 'abilityTreeNodes' => ['FEATUREdcdnBQ0J3E', 'FEATUREdcdn1OLUH8'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['title' => '站点ID', 'description' => 'The site ID. Call the [ListSites](~~2850189~~) API to obtain this ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'required' => false], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'If version management is enabled for the site, use this parameter to specify the version to modify. The default value is 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'formData', 'schema' => ['title' => '规则集ID', 'description' => 'The ID of the WAF ruleset. Call the [ListWafRulesets](~~2878359~~) API to obtain this ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '10000001'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Response schema', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ], 403 => [ ['errorCode' => 'Ruleset.NotExist', 'errorMessage' => 'The specified rule set does not exist or has not been registered in the system.Check whether the specified rule set identifier is valid and matches a rule set that has been correctly defined and maintained by the system\'s rule set registry.If you want to add a new rule set, make sure that the creation and registration process is complete to bring the rule set into effect.', 'description' => 'The specified rule set does not exist or has not been registered in the system.Check whether the specified rule set identifier is valid and matches a rule set that has been correctly defined and maintained by the system\'s rule set registry.If you want to add a new rule set, make sure that the creation and registration process is complete to bring the rule set into effect.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\"\\n}","type":"json"}]', 'title' => 'Delete WAF Ruleset', 'changeSet' => [ ['createdAt' => '2024-09-25T07:02:51.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteWafRuleset'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteWafRuleset', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'DeleteWaitingRoom' => [ 'summary' => 'Deletes a waiting room.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239636', 'abilityTreeNodes' => ['FEATUREdcdnO4KC7Z'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'WaitingRoomId', 'in' => 'query', 'schema' => ['description' => 'The waiting room ID.'."\n", 'type' => 'string', 'required' => true, 'example' => '25133f536f1b1f6b6091f6a92c614dd4'."\n", 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A123425345', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Site.ServiceBusy', 'errorMessage' => 'This website is being configured. Try again later.', 'description' => 'This website is being configured. Try again later.'], ['errorCode' => 'WaitingRoomRuleNotExist', 'errorMessage' => 'The waiting room bypass rule that you want to modify does not exist. Specify a valid one.', 'description' => 'The waiting room bypass rule that you want to modify does not exist. Specify a valid one.'], ['errorCode' => 'WaitingRoomEventNotExist', 'errorMessage' => 'The waiting room event that you want to modify does not exist. Specify a valid one.', 'description' => 'The waiting room event that you want to modify does not exist. Specify a valid one.'], ['errorCode' => 'WaitingRoomNotExist', 'errorMessage' => 'The waiting room that you want to modify does not exist or does not belong to you. Confirm and try again.', 'description' => 'The waiting room that you want to modify does not exist or does not belong to you. Confirm and try again.'], ], 403 => [ ['errorCode' => 'Site.NotExist', 'errorMessage' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.', 'description' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A123425345\\"\\n}","type":"json"}]', 'title' => 'DeleteWaitingRoom', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteWaitingRoom'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteWaitingRoom', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'DeleteWaitingRoomEvent' => [ 'summary' => 'Deletes a waiting room event.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239623', 'abilityTreeNodes' => ['FEATUREdcdnVCBH9N'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'WaitingRoomEventId', 'in' => 'query', 'schema' => ['description' => 'The ID of the waiting room event.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '302909890***', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Site.ServiceBusy', 'errorMessage' => 'This website is being configured. Try again later.', 'description' => 'This website is being configured. Try again later.'], ['errorCode' => 'WaitingRoomRuleNotExist', 'errorMessage' => 'The waiting room bypass rule that you want to modify does not exist. Specify a valid one.', 'description' => 'The waiting room bypass rule that you want to modify does not exist. Specify a valid one.'], ['errorCode' => 'WaitingRoomEventNotExist', 'errorMessage' => 'The waiting room event that you want to modify does not exist. Specify a valid one.', 'description' => 'The waiting room event that you want to modify does not exist. Specify a valid one.'], ], 403 => [ ['errorCode' => 'Site.NotExist', 'errorMessage' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.', 'description' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\"\\n}","type":"json"}]', 'title' => 'DeleteWaitingRoomEvent', 'changeSet' => [ ['createdAt' => '2025-02-21T03:25:57.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteWaitingRoomEvent'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteWaitingRoomEvent', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'DeleteWaitingRoomRule' => [ 'summary' => 'Deletes a waiting room bypass rule.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239632', 'abilityTreeNodes' => ['FEATUREdcdnA885EB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'WaitingRoomRuleId', 'in' => 'query', 'schema' => ['description' => 'The ID of the waiting room bypass rule.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '3672886****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Site.ServiceBusy', 'errorMessage' => 'This website is being configured. Try again later.', 'description' => 'This website is being configured. Try again later.'], ['errorCode' => 'WaitingRoomRuleNotExist', 'errorMessage' => 'The waiting room bypass rule that you want to modify does not exist. Specify a valid one.', 'description' => 'The waiting room bypass rule that you want to modify does not exist. Specify a valid one.'], ], 403 => [ ['errorCode' => 'Site.NotExist', 'errorMessage' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.', 'description' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\"\\n}","type":"json"}]', 'title' => 'DeleteWaitingRoomRule', 'changeSet' => [ ['createdAt' => '2025-02-21T03:25:57.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteWaitingRoomRule'], ], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'esa:DeleteWaitingRoomRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'DescribeBotPrice' => [ 'summary' => 'Queries the price of a bot instance.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238935', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'BotInstanceLevel', 'in' => 'query', 'schema' => [ 'description' => 'The bot instance type.', 'enumValueTitles' => ['enterprise_bot' => 'Web edition.', 'enterprise_bot_with_app' => 'Web/App edition.'], 'type' => 'string', 'required' => true, 'enum' => ['enterprise_bot', 'enterprise_bot_with_app'], 'example' => 'enterprise_bot', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response struct.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'FCF50EDF-1C2B-51E9-A372-E194D16ED350'], 'PriceModel' => [ 'description' => 'The price information.', 'type' => 'object', 'properties' => [ 'Price' => ['description' => 'The final price of the order, which is the actual transaction price.', 'type' => 'number', 'format' => 'float', 'example' => '100', 'title' => ''], 'Currency' => ['description' => 'The currency. Valid values:'."\n" ."\n" .'- JPY: Japanese Yen.'."\n" ."\n" .'- USD: US Dollar.'."\n" ."\n" .'- CNY: Chinese Yuan.', 'type' => 'string', 'example' => 'CNY', 'title' => ''], 'TotalPrice' => ['description' => 'The original price of the order. Original price = actual transaction price + discount amount.', 'type' => 'number', 'format' => 'float', 'example' => '150', 'title' => ''], 'DiscountPrice' => ['description' => 'The discount amount of the order.', 'type' => 'number', 'format' => 'float', 'example' => '50', 'title' => ''], 'Rule' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'RuleList' => [ 'description' => 'The rule hits.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The policy name.', 'type' => 'string', 'example' => 'Policy A', 'title' => ''], 'RuleDescId' => ['description' => 'The policy ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'CheckPlanFailed', 'errorMessage' => 'Invalid plan name or code. Check and try again.', 'description' => 'Invalid plan name or code. Check and try again.'], ['errorCode' => 'InvalidSiteICP', 'errorMessage' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.', 'description' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.'], ['errorCode' => 'InvalidSiteName', 'errorMessage' => 'Invalid website name. Check and try again.', 'description' => 'Invalid website name. Check and try again.'], ['errorCode' => 'SYSTEM.NoSpecificCodeFailed', 'errorMessage' => 'Invalid subscription duration. Check and try again.', 'description' => 'Invalid subscription duration. Check and try again.'], ['errorCode' => 'InvalidComponent', 'errorMessage' => 'The order parameters is invalid.', 'description' => 'The order parameters is invalid.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Query bot instance price', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"FCF50EDF-1C2B-51E9-A372-E194D16ED350\\",\\n \\"PriceModel\\": {\\n \\"Price\\": 100,\\n \\"Currency\\": \\"CNY\\",\\n \\"TotalPrice\\": 150,\\n \\"DiscountPrice\\": 50,\\n \\"Rule\\": {\\n \\"RuleList\\": [\\n {\\n \\"Name\\": \\"Policy A\\",\\n \\"RuleDescId\\": 1\\n }\\n ]\\n }\\n }\\n}","type":"json"}]', ], 'DescribeCacheReservePrice' => [ 'summary' => 'Invokes DescribeCacheReservePrice to query the price of a query cache reserve instance.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238935', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'Period', 'in' => 'query', 'schema' => ['description' => 'The purchase period. Unit: months.', 'type' => 'integer', 'format' => 'int32', 'docRequired' => true, 'required' => true, 'example' => '2', 'title' => ''], ], [ 'name' => 'QuotaGb', 'in' => 'query', 'schema' => ['description' => 'The cache reserve specification. Unit: GB.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '512000', 'title' => ''], ], [ 'name' => 'CrRegion', 'in' => 'query', 'schema' => ['description' => 'The cache reserve region.'."\n" ."\n" .'- HK: Hong Kong (China)'."\n" ."\n" .'- CN: the Chinese mainland.', 'type' => 'string', 'required' => false, 'example' => 'HK', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response struct.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '2430E05E-1340-5773-B5E1-B743929F46F2'], 'PriceModel' => [ 'description' => 'The price information.', 'type' => 'object', 'properties' => [ 'Price' => ['description' => 'The final order price, which is the actual transaction price.', 'type' => 'number', 'format' => 'float', 'example' => '1', 'title' => ''], 'Currency' => ['description' => 'The currency. Valid values:'."\n" ."\n" .'- JPY: Japanese Yen.'."\n" ."\n" .'- USD: US Dollar.'."\n" ."\n" .'- CNY: Chinese Yuan.', 'type' => 'string', 'example' => 'CNY', 'title' => ''], 'TotalPrice' => ['description' => 'The original order price. Original order price = actual transaction price + discount amount.', 'type' => 'number', 'format' => 'float', 'example' => '2', 'title' => ''], 'DiscountPrice' => ['description' => 'The discount amount of the order.', 'type' => 'number', 'format' => 'float', 'example' => '1', 'title' => ''], 'Rule' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'RuleList' => [ 'description' => 'The rule hits.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The policy name.', 'type' => 'string', 'example' => 'Policy A', 'title' => ''], 'RuleDescId' => ['description' => 'The policy ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'CheckPlanFailed', 'errorMessage' => 'Invalid plan name or code. Check and try again.', 'description' => 'Invalid plan name or code. Check and try again.'], ['errorCode' => 'InvalidSiteICP', 'errorMessage' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.', 'description' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.'], ['errorCode' => 'InvalidSiteName', 'errorMessage' => 'Invalid website name. Check and try again.', 'description' => 'Invalid website name. Check and try again.'], ['errorCode' => 'SYSTEM.NoSpecificCodeFailed', 'errorMessage' => 'Invalid subscription duration. Check and try again.', 'description' => 'Invalid subscription duration. Check and try again.'], ['errorCode' => 'InvalidComponent', 'errorMessage' => 'The order parameters is invalid.', 'description' => 'The order parameters is invalid.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2430E05E-1340-5773-B5E1-B743929F46F2\\",\\n \\"PriceModel\\": {\\n \\"Price\\": 1,\\n \\"Currency\\": \\"CNY\\",\\n \\"TotalPrice\\": 2,\\n \\"DiscountPrice\\": 1,\\n \\"Rule\\": {\\n \\"RuleList\\": [\\n {\\n \\"Name\\": \\"Policy A\\",\\n \\"RuleDescId\\": 1\\n }\\n ]\\n }\\n }\\n}","type":"json"}]', 'title' => 'Query cache reserve price', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [], ], 'DescribeCacheReservePriceGap' => [ 'summary' => 'Queries the price for a cache-retained specification change.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '249936', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'esa-cr-9tuv*********', 'title' => ''], ], [ 'name' => 'TargetQuotaGb', 'in' => 'query', 'schema' => ['description' => 'The requested cache size. Unit: GB.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1000', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response struct.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '40423A7F-A83D-1E24-B80E-86DD25790759'."\n"], 'PriceModel' => [ 'description' => 'The pricing information.', 'type' => 'object', 'properties' => [ 'Rule' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'RuleList' => [ 'description' => 'The rule hits.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The policy name.', 'type' => 'string', 'example' => 'rule-a', 'title' => ''], 'RuleDescId' => ['description' => 'The policy ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'esa-cr-9tuv*********', 'title' => ''], 'Price' => ['description' => 'The final order price, which is the actual transaction price.', 'type' => 'number', 'format' => 'float', 'example' => '1', 'title' => ''], 'Currency' => ['description' => 'The currency. Valid values:'."\n" .'- JPY: Japanese Yen.'."\n" .'- USD: US Dollar.'."\n" .'- CNY: Chinese Yuan.', 'type' => 'string', 'example' => 'CNY', 'title' => ''], 'TotalPrice' => ['description' => 'The original order price. Original order price = actual transaction price + discount amount.', 'type' => 'number', 'format' => 'float', 'example' => '2', 'title' => ''], 'DiscountPrice' => ['description' => 'The discount amount of the order.', 'type' => 'number', 'format' => 'float', 'example' => '1', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'CheckPlanFailed', 'errorMessage' => 'Invalid plan name or code. Check and try again.', 'description' => 'Invalid plan name or code. Check and try again.'], ['errorCode' => 'InvalidSiteICP', 'errorMessage' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.', 'description' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.'], ['errorCode' => 'InvalidSiteName', 'errorMessage' => 'Invalid website name. Check and try again.', 'description' => 'Invalid website name. Check and try again.'], ['errorCode' => 'SYSTEM.NoSpecificCodeFailed', 'errorMessage' => 'Invalid subscription duration. Check and try again.', 'description' => 'Invalid subscription duration. Check and try again.'], ['errorCode' => 'InvalidInstance', 'errorMessage' => 'The instance ID is missing or invalid. Make sure that the instance ID is valid and try again.', 'description' => 'The instance ID is missing or invalid. Make sure that the instance ID is valid and try again.'], ['errorCode' => 'InvalidComponent', 'errorMessage' => 'The order parameters is invalid.', 'description' => 'The order parameters is invalid.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"40423A7F-A83D-1E24-B80E-86DD25790759\\\\n\\",\\n \\"PriceModel\\": {\\n \\"Rule\\": {\\n \\"RuleList\\": [\\n {\\n \\"Name\\": \\"rule-a\\",\\n \\"RuleDescId\\": 1\\n }\\n ]\\n },\\n \\"InstanceId\\": \\"esa-cr-9tuv*********\\",\\n \\"Price\\": 1,\\n \\"Currency\\": \\"CNY\\",\\n \\"TotalPrice\\": 2,\\n \\"DiscountPrice\\": 1\\n }\\n}","type":"json"}]', 'title' => 'Query cache-retained specification change price', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:DescribeCacheReservePriceGap', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'DescribeCustomScenePolicies' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239312', 'abilityTreeNodes' => ['FEATUREdcdnL8HX1L'], ], 'parameters' => [ [ 'name' => 'PageSize', 'in' => 'query', 'schema' => [ 'description' => 'The number of entries per page. Default value: **10**. Valid values: **5**, **10**, and **20**.', 'type' => 'integer', 'format' => 'int32', 'default' => '10', 'enum' => ['5', '10', '20'], 'required' => false, 'example' => '10', 'title' => '', ], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. Valid values: **1** to **100000**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100000', 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PolicyId', 'in' => 'query', 'schema' => ['description' => 'The policy ID.', 'type' => 'integer', 'format' => 'int64', 'minimum' => '0', 'required' => false, 'example' => '1234****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '85H66C7B-671A-4297-9187-2C4477247A74'], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Quota' => ['description' => 'The maximum number of policies that you can create.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries on the current page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'DataModule' => [ 'description' => 'The configurations of custom scene policies.', 'type' => 'array', 'items' => [ 'description' => 'A custom scene policy configuration.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the custom scene policy.', 'type' => 'string', 'example' => 'test', 'title' => ''], 'Template' => ['description' => 'The template name. Valid value:'."\n" ."\n" .'- **promotion**: A major event.', 'type' => 'string', 'example' => 'promotion', 'title' => ''], 'StartTime' => ['description' => 'The start time of the policy.'."\n" ."\n" .'The time is in UTC and follows the ISO 8601 standard. Format: yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2023-03-04T16:00:00Z', 'title' => ''], 'EndTime' => ['description' => 'The end time of the policy.'."\n" ."\n" .'The time is in UTC and follows the ISO 8601 standard. Format: yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2023-03-06T16:00:00Z'."\n", 'title' => ''], 'Status' => ['description' => 'The effective status of the policy. Valid values:'."\n" ."\n" .'- **disabled**: The policy is disabled.'."\n" ."\n" .'- **pending**: The policy is waiting to take effect.'."\n" ."\n" .'- **running**: The policy is in effect.'."\n" ."\n" .'- **expired**: The policy has expired.', 'type' => 'string', 'example' => 'Expired', 'title' => ''], 'Objects' => [ 'description' => 'A list of associated site IDs.'."\n" ."\n" .'> This field is deprecated. We recommend that you use the `SiteIds` field instead.', 'type' => 'array', 'items' => ['description' => 'A site ID associated with the policy.', 'type' => 'string', 'example' => '123456****', 'title' => ''], 'title' => '', 'example' => '', ], 'PolicyId' => ['description' => 'The policy ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234****'."\n", 'title' => ''], 'SiteIds' => ['description' => 'A comma-separated list of site IDs associated with the policy.', 'type' => 'string', 'example' => '123456****,123457****'."\n", 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'title' => 'Query scenario-specific policies', 'summary' => 'Retrieves the configurations of custom scene policies.', 'changeSet' => [ ['createdAt' => '2025-06-03T09:31:40.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-02-19T08:08:25.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeCustomScenePolicies'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:DescribeCustomScenePolicies', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"85H66C7B-671A-4297-9187-2C4477247A74\\",\\n \\"TotalCount\\": 1,\\n \\"Quota\\": 10,\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"DataModule\\": [\\n {\\n \\"Name\\": \\"test\\",\\n \\"Template\\": \\"promotion\\",\\n \\"StartTime\\": \\"2023-03-04T16:00:00Z\\",\\n \\"EndTime\\": \\"2023-03-06T16:00:00Z\\\\n\\",\\n \\"Status\\": \\"Expired\\",\\n \\"Objects\\": [\\n \\"123456****\\"\\n ],\\n \\"PolicyId\\": 0,\\n \\"SiteIds\\": \\"123456****,123457****\\\\n\\"\\n }\\n ]\\n}","type":"json"}]', ], 'DescribeDDoSAllEventList' => [ 'summary' => 'Gets a list of DDoS attack events.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239644', 'abilityTreeNodes' => ['FEATUREdcdnO1ZP9O'], ], 'parameters' => [ [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['title' => 'A short description of struct', 'description' => 'The start time of the query.'."\n" ."\n" .'The time must be in ISO 8601 format and in UTC. Format: `yyyy-MM-ddTHH:mm:ssZ`.', 'type' => 'string', 'required' => true, 'example' => '2023-02-12T15:00:00Z'], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end time of the query.'."\n" ."\n" .'The time must be in ISO 8601 format and in UTC. Format: `yyyy-MM-ddTHH:mm:ssZ`. The time range between `StartTime` and `EndTime` cannot exceed 31 days.'."\n" ."\n" .'If this parameter is not specified, it defaults to the current time.', 'type' => 'string', 'required' => false, 'example' => '2023-02-22T15:59:59Z', 'title' => ''], ], [ 'name' => 'EventType', 'in' => 'query', 'allowEmptyValue' => true, 'schema' => [ 'description' => 'The type of DDoS attack events to query. Valid values:'."\n" ."\n" .'- **web-cc**: A web resource exhaustion attack.'."\n" ."\n" .'- **cc**: A connection-based attack.'."\n" ."\n" .'- **traffic**: A traffic-based attack.'."\n" ."\n" .'If you do not specify this parameter, the operation queries `web-cc` events by default.', 'type' => 'string', 'required' => false, 'enum' => ['web-cc', 'cc', 'traffic'], 'example' => 'web-cc', 'title' => '', ], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number to return. Valid range: **1** to **100000**.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'maximum' => '100000', 'minimum' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => [ 'description' => 'The number of entries per page. Default value: **10**. Valid values: **5**, **10**, and **20**.', 'type' => 'integer', 'format' => 'int32', 'default' => '10', 'enum' => ['5', '10', '20'], 'required' => false, 'example' => '10', 'title' => '', ], ], [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The ID of the site. You can obtain this ID by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'minimum' => '1', 'example' => '7096621098****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The data returned.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'D73A4243-CFBD-5110-876F-09237E77ECBD'], 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '7096621098****', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'DataList' => [ 'description' => 'A list of DDoS attack event details.', 'type' => 'array', 'items' => [ 'description' => 'Details of a DDoS attack event.', 'type' => 'object', 'properties' => [ 'Target' => ['description' => 'The attack target.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], 'TargetId' => ['description' => 'The ID of the attack target.', 'type' => 'string', 'example' => '000000000155****', 'title' => ''], 'StartTime' => ['description' => 'The start time of the DDoS attack event.'."\n" ."\n" .'The time is in the `yyyy-MM-ddTHH:mm:ssZ` format and is in UTC.', 'type' => 'string', 'example' => '2023-02-12T15:00:00Z', 'title' => ''], 'EndTime' => ['description' => 'The end time of the DDoS attack event.'."\n" ."\n" .'The time is in the `yyyy-MM-ddTHH:mm:ssZ` format and is in UTC.', 'type' => 'string', 'example' => '2023-02-12T15:59:59Z', 'title' => ''], 'EventType' => ['description' => 'The type of the DDoS attack event. Valid values:'."\n" ."\n" .'- **web-cc**: A web resource exhaustion attack.'."\n" ."\n" .'- **cc**: A connection-based attack.'."\n" ."\n" .'- **traffic**: A volumetric attack.', 'type' => 'string', 'example' => 'web-cc', 'title' => ''], 'Bps' => ['description' => 'The peak bits per second (Bps) of a volumetric attack.', 'type' => 'integer', 'format' => 'int64', 'example' => '800', 'title' => ''], 'Pps' => ['description' => 'The peak packets per second (Pps) of a volumetric attack.', 'type' => 'integer', 'format' => 'int64', 'example' => '12000', 'title' => ''], 'Cps' => ['description' => 'The peak connections per second (Cps) of a connection-based attack.', 'type' => 'integer', 'format' => 'int64', 'example' => '50', 'title' => ''], 'EventId' => ['description' => 'The event ID.', 'type' => 'string', 'example' => 'web-cc_1', 'title' => ''], 'Qps' => ['description' => 'The peak queries per second (Qps) of a web resource exhaustion attack.', 'type' => 'integer', 'format' => 'int64', 'example' => '7692', 'title' => ''], 'Coverage' => ['description' => 'The attack region. Valid values:'."\n" ."\n" .'- **domestic**: Chinese mainland.'."\n" ."\n" .'- **global**: Global.'."\n" ."\n" .'- **overseas**: global (excluding Chinese mainland).', 'type' => 'string', 'example' => 'domestic', 'title' => ''], 'EventResult' => ['description' => 'The event result. Valid values:'."\n" ."\n" .'- **clean**: The attack was successfully cleaned.'."\n" ."\n" .'- **ratelimit**: Rate limiting was applied.'."\n" ."\n" .'- **blackhole**: Blackhole filtering was triggered.', 'type' => 'string', 'example' => 'clean', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Query the DDoS attack event list', 'changeSet' => [ ['createdAt' => '2024-11-19T03:35:35.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeDDoSAllEventList'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:DescribeDDoSAllEventList', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"D73A4243-CFBD-5110-876F-09237E77ECBD\\",\\n \\"SiteId\\": 0,\\n \\"TotalCount\\": 1,\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"DataList\\": [\\n {\\n \\"Target\\": \\"example.com\\",\\n \\"TargetId\\": \\"000000000155****\\",\\n \\"StartTime\\": \\"2023-02-12T15:00:00Z\\",\\n \\"EndTime\\": \\"2023-02-12T15:59:59Z\\",\\n \\"EventType\\": \\"web-cc\\",\\n \\"Bps\\": 800,\\n \\"Pps\\": 12000,\\n \\"Cps\\": 50,\\n \\"EventId\\": \\"web-cc_1\\",\\n \\"Qps\\": 7692,\\n \\"Coverage\\": \\"domestic\\",\\n \\"EventResult\\": \\"clean\\"\\n }\\n ]\\n}","type":"json"}]', ], 'DescribeDDoSBpsList' => [ 'summary' => 'Query DCDN DDoS user bps and pps data', 'methods' => ['get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239163', 'abilityTreeNodes' => ['FEATUREdcdnL050IJ'], ], 'parameters' => [ [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The start time for fetching data, in ISO8601 format, using UTC+0, formatted as: yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'required' => true, 'example' => '2023-05-14T17:00:00Z', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end time for fetching data. In ISO8601 format, using UTC+0, formatted as: yyyy-MM-ddTHH:mm:ssZ.'."\n" ."\n" .'The end time must be later than the start time, and the span between start and end times should not exceed 31 days.', 'type' => 'string', 'required' => false, 'example' => '2023-05-18T06:19:42Z', 'title' => ''], ], [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID, which can be obtained by calling the [ListSites](~~ListSites~~) API.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'minimum' => '1', 'example' => '70966210986912', 'title' => ''], ], [ 'name' => 'Coverage', 'in' => 'query', 'schema' => [ 'description' => 'Protection area, defaulting to global if not filled. When specified, the values are as follows:'."\n" ."\n" .'- domestic: Mainland China.'."\n" ."\n" .'- overseas: Global (excluding Mainland China).'."\n" ."\n" .'- global: Global.', 'type' => 'string', 'required' => false, 'enumValueTitles' => ['domestic' => 'domestic', 'global' => 'global', 'overseas' => 'overseas'], 'example' => 'global', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => '156A6B-677B1A-4297B7-9187B7-2B44792'], 'DataInterval' => ['description' => 'The interval between each piece of data, in seconds.'."\n" ."\n" .'Generated based on the interval between StartTime and EndTime: less than 1 hour, 60s; 1 hour or more but less than 1 day, 300s; 1 day or more but less than a week, 1800s; 1 week or more, 3600s.', 'type' => 'integer', 'format' => 'int32', 'example' => '300', 'title' => ''], 'StartTime' => ['description' => 'The start time for fetching data. In ISO8601 format, using UTC, formatted as: YYYY-MM-DDThh:mm:ssZ.', 'type' => 'string', 'example' => '2023-05-14T17:00:00Z'."\n", 'title' => ''], 'EndTime' => ['description' => 'The end time for fetching data. In ISO8601 format, using UTC+0, formatted as: yyyy-MM-ddTHH:mm:ssZ.'."\n" ."\n" .'The end time must be later than the start time, and the span between start and end times should not exceed 31 days.', 'type' => 'string', 'example' => '2023-05-18T06:19:42Z'."\n", 'title' => ''], 'DataModule' => [ 'description' => 'A list of network bandwidth data for each time interval.', 'type' => 'array', 'items' => [ 'description' => 'Network bandwidth data for each time interval.', 'type' => 'object', 'properties' => [ 'TotalBps' => ['description' => 'Total bandwidth, in bps.', 'type' => 'integer', 'format' => 'int64', 'example' => '10000000000', 'title' => ''], 'AttackBps' => ['description' => 'Attack bandwidth, in bps.', 'type' => 'integer', 'format' => 'int64', 'example' => '9000000000', 'title' => ''], 'NormalBps' => ['description' => 'Normal business bandwidth, in bps.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000000000', 'title' => ''], 'TotalPps' => ['description' => 'Total PPS.', 'type' => 'integer', 'format' => 'int64', 'example' => '100000000', 'title' => ''], 'AttackPps' => ['description' => 'Attack PPS.', 'type' => 'integer', 'format' => 'int64', 'example' => '9000000', 'title' => ''], 'NormalPps' => ['description' => 'Normal business PPS.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000000', 'title' => ''], 'TimeStamp' => ['description' => 'The timestamp of this data, in ISO8601 format, using UTC+0, formatted as: yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2023-05-14T17:00:00Z', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], [], [], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"156A6B-677B1A-4297B7-9187B7-2B44792\\",\\n \\"DataInterval\\": 300,\\n \\"StartTime\\": \\"2023-05-14T17:00:00Z\\\\n\\",\\n \\"EndTime\\": \\"2023-05-18T06:19:42Z\\\\n\\",\\n \\"DataModule\\": [\\n {\\n \\"TotalBps\\": 10000000000,\\n \\"AttackBps\\": 9000000000,\\n \\"NormalBps\\": 1000000000,\\n \\"TotalPps\\": 100000000,\\n \\"AttackPps\\": 9000000,\\n \\"NormalPps\\": 1000000,\\n \\"TimeStamp\\": \\"2023-05-14T17:00:00Z\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Query DDoS Network Layer Data', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeDDoSBpsList'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:DescribeDDoSBpsList', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'DescribeDDoSBpsMax' => [ 'summary' => 'Queries the peak bits per second (BPS) and packets per second (PPS) data of DDoS attacks at the network layer.', 'methods' => ['get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239154', 'abilityTreeNodes' => ['FEATUREdcdnL050IJ'], ], 'parameters' => [ [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => '', 'type' => 'string', 'required' => true, 'example' => '2023-02-14T17:00:00Z', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => '', 'type' => 'string', 'required' => false, 'example' => '2023-04-07T02:34:00Z', 'title' => ''], ], [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => '', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'minimum' => '1', 'example' => '709662109****', 'title' => ''], ], [ 'name' => 'Coverage', 'in' => 'query', 'schema' => [ 'type' => 'string', 'description' => '', 'required' => false, 'enumValueTitles' => ['domestic' => 'domestic', 'global' => 'global', 'overseas' => 'overseas'], 'example' => 'global', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'StartTime' => ['description' => '', 'type' => 'string', 'example' => '2023-02-14T17:00:00Z', 'title' => ''], 'EndTime' => ['description' => '', 'type' => 'string', 'example' => '2023-04-07T02:34:00Z', 'title' => ''], 'MaxAtkBps' => ['description' => '', 'type' => 'integer', 'format' => 'int64', 'example' => '10000000000', 'title' => ''], 'MaxAtkPps' => ['description' => '', 'type' => 'integer', 'format' => 'int64', 'example' => '100000000', 'title' => ''], 'RequestId' => ['description' => '', 'type' => 'string', 'example' => 'A3790430-3A06-535F-A424-0998BD9A6C9F', 'title' => ''], ], 'example' => '', ], ], [], [], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DescribeDDoSBpsMax', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"StartTime\\": \\"2023-02-14T17:00:00Z\\",\\n \\"EndTime\\": \\"2023-04-07T02:34:00Z\\",\\n \\"MaxAtkBps\\": 10000000000,\\n \\"MaxAtkPps\\": 100000000,\\n \\"RequestId\\": \\"A3790430-3A06-535F-A424-0998BD9A6C9F\\"\\n}","type":"json"}]', ], 'DescribeDDoSEventMax' => [ 'summary' => 'Queries the peak values of DDoS attack events within a specified time range.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238888', 'abilityTreeNodes' => ['FEATUREdcdnO1ZP9O'], ], 'parameters' => [ [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The beginning of the time range to query.'."\n" ."\n" .'The date is in ISO 8601 format. The time is displayed in UTC. The format is yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'required' => true, 'example' => '2023-02-18T16:00:00Z'], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end of the time range to query.'."\n" ."\n" .'The date is in ISO 8601 format. The time is displayed in UTC. The format is yyyy-MM-ddTHH:mm:ssZ. The maximum time span between the start time and end time is 31 days.'."\n" ."\n" .'If you do not set this parameter, the current time is used as the end time.', 'type' => 'string', 'required' => false, 'example' => '2023-04-10T02:10:10Z', 'title' => ''], ], [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~ListSites~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'minimum' => '1', 'example' => '7096621098****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The unique request ID generated by Alibaba Cloud for this request.', 'type' => 'string', 'example' => '18C625C0-9D8F-530B-9D1D-00F42F4156B6', 'title' => ''], 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '7096621098****', 'title' => ''], 'Cps' => ['description' => 'The peak CPS of connection flood attacks.', 'type' => 'integer', 'format' => 'int64', 'example' => '101', 'title' => ''], 'Qps' => ['description' => 'The peak QPS of web resource exhaustion attacks.', 'type' => 'integer', 'format' => 'int64', 'example' => '72431', 'title' => ''], 'Bps' => ['description' => 'The peak BPS of volumetric attacks.', 'type' => 'integer', 'format' => 'int64', 'example' => '8445630', 'title' => ''], 'Pps' => ['description' => 'The peak PPS of volumetric attacks.', 'type' => 'integer', 'format' => 'int64', 'example' => '30868', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'Query peak values of DDoS attack events', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"18C625C0-9D8F-530B-9D1D-00F42F4156B6\\",\\n \\"SiteId\\": 0,\\n \\"Cps\\": 101,\\n \\"Qps\\": 72431,\\n \\"Bps\\": 8445630,\\n \\"Pps\\": 30868\\n}","type":"json"}]', ], 'DescribeDDoSL7QpsList' => [ 'summary' => 'DDoS Analysis Layer 7 QPS Trend Chart API', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239197', 'abilityTreeNodes' => ['FEATUREdcdnO1ZP9O'], ], 'parameters' => [ [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['title' => 'A short description of struct', 'description' => 'The start time of the query.'."\n" ."\n" .'The date format follows ISO8601 notation and uses UTC+0, formatted as yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'required' => true, 'example' => '2023-04-19T16:00:00Z'], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end time of the query.'."\n" ."\n" .'The date format follows ISO8601 notation and uses UTC+0, formatted as yyyy-MM-ddTHH:mm:ssZ. The maximum span between the start and end times is 31 days.'."\n" ."\n" .'If this parameter is not set, the current time will be used as the end time of the query.', 'type' => 'string', 'required' => false, 'example' => '2023-04-19T19:00:00Z', 'title' => ''], ], [ 'name' => 'RecordId', 'in' => 'query', 'schema' => ['description' => 'Record ID, which can be obtained by calling the [ListRecords](~~ListRecords~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '86510927836942****', 'title' => ''], ], [ 'name' => 'Interval', 'in' => 'query', 'schema' => [ 'description' => 'The time granularity of the queried data, in seconds.'."\n" ."\n" .'Depending on the maximum time span of a single query, this parameter supports values of 60 (1 minute), 300 (5 minutes), 1800 (half an hour), and 3600 (1 hour).', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '300', 'enum' => ['60', '300', '1800', '3600'], 'title' => '', ], ], [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID, which can be obtained by calling the [ListSites](~~ListSites~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'minimum' => '1', 'example' => '123456****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => '156A6B-677B1A-4297B7-9187B7-2B44792'], 'SiteId' => ['description' => 'Site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456****'."\n", 'title' => ''], 'RecordId' => ['description' => 'Record ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '86510927836942****', 'title' => ''], 'DataInterval' => ['description' => 'The time granularity of the queried data, in seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '300', 'title' => ''], 'StartTime' => ['description' => 'The start time of the query.'."\n" ."\n" .'The date format follows ISO8601 notation and uses UTC+0, formatted as yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2023-04-19T16:00:00Z'."\n", 'title' => ''], 'EndTime' => ['description' => 'The end time of the query.'."\n" ."\n" .'The date format follows ISO8601 notation and uses UTC+0, formatted as yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2023-04-19T19:00:00Z'."\n", 'title' => ''], 'DataModule' => [ 'description' => 'Application layer time trend data list.', 'type' => 'array', 'items' => [ 'description' => 'Application layer time trend data.', 'type' => 'object', 'properties' => [ 'Total' => ['description' => 'Total QPS.', 'type' => 'integer', 'format' => 'int64', 'example' => '9', 'title' => ''], 'Attack' => ['description' => 'Attack QPS.', 'type' => 'integer', 'format' => 'int64', 'example' => '5', 'title' => ''], 'Normal' => ['description' => 'Normal QPS.', 'type' => 'integer', 'format' => 'int64', 'example' => '4', 'title' => ''], 'TimeStamp' => ['description' => 'Data time, following ISO8601 notation and using UTC+0, formatted as yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2023-04-19T16:00:00Z'."\n", 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"156A6B-677B1A-4297B7-9187B7-2B44792\\",\\n \\"SiteId\\": 0,\\n \\"RecordId\\": 0,\\n \\"DataInterval\\": 300,\\n \\"StartTime\\": \\"2023-04-19T16:00:00Z\\\\n\\",\\n \\"EndTime\\": \\"2023-04-19T19:00:00Z\\\\n\\",\\n \\"DataModule\\": [\\n {\\n \\"Total\\": 9,\\n \\"Attack\\": 5,\\n \\"Normal\\": 4,\\n \\"TimeStamp\\": \\"2023-04-19T16:00:00Z\\\\n\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Query DDoS Application Layer Time Dimension Aggregated Statistics', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeDDoSL7QpsList'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:DescribeDDoSL7QpsList', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'DescribeDDoSOverseasAttackCount' => [ 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '262172', 'abilityTreeNodes' => ['FEATUREdcdnL050IJ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~ListSites~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'minimum' => '1', 'example' => '1039004047346160', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => 'EBCECE18-DA96-5307-8506-01E5A0E21530'], 'TotalCount' => ['description' => 'The total number of attacks supported by the plan.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'UsedCount' => ['description' => 'The number of attacks that have been used.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Query the number of DDoS attacks outside China', 'summary' => 'Queries the number of DDoS attacks outside China.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EBCECE18-DA96-5307-8506-01E5A0E21530\\",\\n \\"TotalCount\\": 2,\\n \\"UsedCount\\": 0\\n}","type":"json"}]', ], 'DescribeDdosMaxBurstGbps' => [ 'summary' => 'Queries the maximum burst bandwidth for a DDoS instance in mainland China.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '254005', 'abilityTreeNodes' => ['FEATUREdcdn5DYCZJ'], ], 'parameters' => [ [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the instance. You can call the [ListUserRatePlanInstances](~~2852398~~) operation to obtain the instance ID.', 'type' => 'string', 'required' => true, 'example' => 'esa-site-a71k7bw19dz4', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'title' => '', 'example' => 'B5D71671-B074-5702-A0F5-B923920FDDD4'], 'InstanceId' => ['description' => 'The ID of the instance.', 'type' => 'string', 'example' => 'esa-site-a71k7bw19dz4', 'title' => ''], 'MaxBurstGbps' => ['description' => 'The maximum protection bandwidth of the DDoS instance within mainland China, in Gbps.', 'type' => 'string', 'example' => '300', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'NoPermission', 'errorMessage' => 'You do not have permissions to access or operate on the resource.Contact your account administrator to attach the AliyunESAFullAccess policy to the current user.', 'description' => 'You do not have permissions to access or operate on the resource.Contact your account administrator to attach the AliyunESAFullAccess policy to the current user.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Parameter verification failed. Check your configurations and try again.', 'description' => 'Parameter verification failed. Check your configurations and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DescribeDdosMaxBurstGbps', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B5D71671-B074-5702-A0F5-B923920FDDD4\\",\\n \\"InstanceId\\": \\"esa-site-a71k7bw19dz4\\",\\n \\"MaxBurstGbps\\": \\"300\\"\\n}","type":"json"}]', ], 'DescribeEdgeContainerAppStats' => [ 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '241915', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'Tenant', 'in' => 'query', 'schema' => ['description' => 'The tenant.', 'type' => 'string', 'required' => false, 'example' => 't-xxxx', 'title' => ''], ], [ 'name' => 'App', 'in' => 'query', 'schema' => ['description' => 'Basic information about the application.', 'type' => 'string', 'required' => true, 'example' => 'app-xxxx', 'title' => ''], ], [ 'name' => 'Locate', 'in' => 'query', 'schema' => ['description' => 'The region.', 'type' => 'string', 'required' => false, 'example' => 'huizhou', 'title' => ''], ], [ 'name' => 'Isp', 'in' => 'query', 'schema' => ['description' => 'The Internet Service Provider (ISP).', 'type' => 'string', 'required' => false, 'example' => 'telecom,unicom,mobile', 'title' => ''], ], [ 'name' => 'Fields', 'in' => 'query', 'schema' => [ 'description' => 'The metric fields.', 'enumValueTitles' => ['container_fs_writes_bytes_avg' => 'Write IO', 'container_memory_rss' => 'Memory usage', 'container_memory_rss_quota_rate' => 'Memory usage as a percentage of the limit', 'container_cpu_usage_seconds_quota_rate' => 'CPU usage as a percentage of the limit', 'container_cpu_usage_seconds_total' => 'Number of CPU cores', 'pod_ready_rate' => 'Pod ready rate', 'container_fs_reads_bytes_avg' => 'Read IO'], 'type' => 'string', 'required' => true, 'example' => 'pod_ready_rate', 'title' => '', ], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The start time. The date must be in ISO 8601 format and use UTC. The format is yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'required' => false, 'example' => '2024-09-02T15:04:05Z', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end time to retrieve data. The date must be in ISO 8601 format and use UTC. The format is yyyy-MM-ddTHH:mm:ssZ.'."\n" ."\n" .'> The end time must be later than the start time.', 'type' => 'string', 'required' => false, 'example' => '2024-09-02T16:04:05Z', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'CpuUsageSecondsQuotaRateAvg' => ['description' => 'The average CPU usage as a percentage of the limit.', 'type' => 'number', 'format' => 'double', 'example' => '0.1', 'title' => ''], 'CpuUsageSecondsTotalAvg' => ['description' => 'Average CPU core usage, in seconds.', 'type' => 'number', 'format' => 'double', 'example' => '2', 'title' => ''], 'FsReadsBytesAvgAvg' => ['description' => 'The average read IO.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''], 'FsWritesBytesAvgAvg' => ['description' => 'The average write IO.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''], 'MemoryRssAvg' => ['description' => 'The average memory usage.', 'type' => 'number', 'format' => 'double', 'example' => '0.1', 'title' => ''], 'MemoryRssQuotaRateAvg' => ['description' => 'The average memory usage as a percentage of the limit.', 'type' => 'number', 'format' => 'double', 'example' => '1', 'title' => ''], 'PodReadyRateAvg' => ['description' => 'The average pod ready rate.', 'type' => 'number', 'format' => 'double', 'example' => '100', 'title' => ''], 'Points' => [ 'description' => 'The time and value of each data point for the chart.', 'type' => 'array', 'items' => [ 'description' => 'The value and time of a data point.', 'type' => 'object', 'properties' => [ 'Time' => ['description' => 'The time of the data point. The format is yyyy-MM-ddTHH:mm:ssZ in UTC.', 'type' => 'string', 'example' => '2024-01-18T15:04:05Z', 'title' => ''], 'ContainerCpuUsageSecondsQuotaRate' => ['description' => 'The CPU usage as a percentage of the limit.', 'type' => 'number', 'format' => 'double', 'example' => '0.1', 'title' => ''], 'ContainerCpuUsageSecondsTotal' => ['description' => 'The number of CPU cores.', 'type' => 'number', 'format' => 'double', 'example' => '2', 'title' => ''], 'ContainerFsReadsBytesAvg' => ['description' => 'The read IO.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''], 'ContainerFsWritesBytesAvg' => ['description' => 'The write IO.', 'type' => 'number', 'format' => 'double', 'example' => '0', 'title' => ''], 'ContainerMemoryRss' => ['description' => 'The memory usage.', 'type' => 'number', 'format' => 'double', 'example' => '0.1', 'title' => ''], 'ContainerMemoryRssQuotaRate' => ['description' => 'The memory usage as a percentage of the limit.', 'type' => 'number', 'format' => 'double', 'example' => '1', 'title' => ''], 'PodReadyRate' => ['description' => 'The pod ready rate.', 'type' => 'number', 'format' => 'double', 'example' => '100', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'RequestId' => ['title' => 'Id of the request', 'description' => 'Id of the request', 'type' => 'string', 'example' => '35C66C7B-671H-4297-9187-2C4477247A78'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidEndTime.Malformed', 'errorMessage' => 'The specified EndTime is invalid.', 'description' => 'Please provide the correct end time format. The date format follows ISO8601 notation and uses UTC time. The format is: yyyy-MM-ddTHH:mm:ssZ.'], ['errorCode' => 'InvalidStartTime.Malformed', 'errorMessage' => 'The specified StartTime parameter is invalid.', 'description' => 'Please provide the correct start time format. The date format follows ISO8601 notation and uses UTC time in the format yyyy-MM-ddTHH:mm:ssZ.'], ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DescribeEdgeContainerAppStats', 'summary' => 'Retrieves monitoring data for metrics of Edge Service Agent (ESA) edge containers.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeEdgeContainerAppStats'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:DescribeEdgeContainerAppStats', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"CpuUsageSecondsQuotaRateAvg\\": 0.1,\\n \\"CpuUsageSecondsTotalAvg\\": 2,\\n \\"FsReadsBytesAvgAvg\\": 0,\\n \\"FsWritesBytesAvgAvg\\": 0,\\n \\"MemoryRssAvg\\": 0.1,\\n \\"MemoryRssQuotaRateAvg\\": 1,\\n \\"PodReadyRateAvg\\": 100,\\n \\"Points\\": [\\n {\\n \\"Time\\": \\"2024-01-18T15:04:05Z\\",\\n \\"ContainerCpuUsageSecondsQuotaRate\\": 0.1,\\n \\"ContainerCpuUsageSecondsTotal\\": 2,\\n \\"ContainerFsReadsBytesAvg\\": 0,\\n \\"ContainerFsWritesBytesAvg\\": 0,\\n \\"ContainerMemoryRss\\": 0.1,\\n \\"ContainerMemoryRssQuotaRate\\": 1,\\n \\"PodReadyRate\\": 100\\n }\\n ],\\n \\"RequestId\\": \\"35C66C7B-671H-4297-9187-2C4477247A78\\"\\n}","type":"json"}]', ], 'DescribeHttpDDoSAttackIntelligentProtection' => [ 'summary' => 'Retrieves the HTTP DDoS intelligent protection configuration, including the protection mode and protection level.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239217', 'abilityTreeNodes' => ['FEATUREdcdnO1ZP9O'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can obtain this ID by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'minimum' => '1', 'example' => '123456****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response object.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-3C82-72F8FD6DA2FE'], 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456****', 'title' => ''], 'AiMode' => ['description' => 'The protection mode for HTTP DDoS intelligent protection. Valid values:'."\n" ."\n" .'- **observe**: Observe'."\n" ."\n" .'- **defense**: Defense', 'type' => 'string', 'example' => 'defense', 'title' => ''], 'AiTemplate' => ['description' => 'The protection level for HTTP DDoS intelligent protection. Valid values:'."\n" ."\n" .'- **level0**: Very Loose'."\n" ."\n" .'- **level30**: Loose'."\n" ."\n" .'- **level60**: Normal'."\n" ."\n" .'- **level90**: Strict', 'type' => 'string', 'example' => 'level60', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'ErrSiteIdNoteEnterprise', 'errorMessage' => 'This feature is unavailable because your website is not associated with an Enterprise plan. Upgrade your plan to Enterprise.', 'description' => 'This feature is unavailable because your website is not associated with an Enterprise plan. Upgrade your plan to Enterprise.'], ], 403 => [ ['errorCode' => 'SiteIdDDoSVersionCheckFailed', 'errorMessage' => 'SiteId DDoS version check failed.', 'description' => 'Failed to check the DDoS version corresponding to the site.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-3C82-72F8FD6DA2FE\\",\\n \\"SiteId\\": 0,\\n \\"AiMode\\": \\"defense\\",\\n \\"AiTemplate\\": \\"level60\\"\\n}","type":"json"}]', 'title' => 'DescribeHttpDDoSAttackIntelligentProtection', 'changeSet' => [ ['createdAt' => '2024-11-19T03:35:35.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeHttpDDoSAttackIntelligentProtection'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:DescribeHttpDDoSAttackIntelligentProtection', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'DescribeHttpDDoSAttackProtection' => [ 'summary' => 'Queries the configurations of HTTP DDoS attack protection.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239336', 'abilityTreeNodes' => ['FEATUREdcdn5DYCZJ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'minimum' => '1', 'example' => '123456****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '35C66C7B-671H-4297-9187-2C4477247A78'], 'SiteId' => ['description' => 'The website ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '123456****', 'title' => ''], 'GlobalMode' => ['description' => 'The level of HTTP DDoS attack protection. Valid values:'."\n" ."\n" .'* **very weak**: very loose.'."\n" .'* **weak**: loose.'."\n" .'* **default**: normal.'."\n" .'* **hard**: strict.'."\n", 'type' => 'string', 'example' => 'default', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'ErrSiteIdNoteEnterprise', 'errorMessage' => 'This feature is unavailable because your website is not associated with an Enterprise plan. Upgrade your plan to Enterprise.', 'description' => 'This feature is unavailable because your website is not associated with an Enterprise plan. Upgrade your plan to Enterprise.'], ], 403 => [ ['errorCode' => 'SiteIdDDoSVersionCheckFailed', 'errorMessage' => 'SiteId DDoS version check failed.', 'description' => 'Failed to check the DDoS version corresponding to the site.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DescribeHttpDDoSAttackProtection', 'changeSet' => [ ['createdAt' => '2024-11-19T03:35:35.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeHttpDDoSAttackProtection'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:DescribeHttpDDoSAttackProtection', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"35C66C7B-671H-4297-9187-2C4477247A78\\",\\n \\"SiteId\\": 0,\\n \\"GlobalMode\\": \\"default\\"\\n}","type":"json"}]', ], 'DescribeHttpDDoSAttackRules' => [ 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '263687', 'abilityTreeNodes' => ['FEATUREdcdn5DYCZJ'], 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The ID of the site. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'minimum' => '1', 'example' => '123456****', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The current page number. Default value: 1. Valid values: **1** to **65535**.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'maximum' => '10000', 'minimum' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => [ 'description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'default' => '10', 'enum' => ['5', '10', '20'], 'required' => false, 'example' => '10', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'title' => '', 'example' => 'D4030CD2-0D9D-5E92-B358-421AE58307C6'], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], 'PageNumber' => ['description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RuleInfos' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'RuleName' => ['description' => 'The name of the rule.', 'type' => 'string', 'example' => 'Illegal request。', 'title' => ''], 'RuleIdInfo' => ['description' => 'The short name of the rule.', 'type' => 'string', 'example' => 'global_01_s', 'title' => ''], 'RuleDesc' => ['description' => 'The description of the rule.', 'type' => 'string', 'example' => 'The HTTP request\'s Accept header contains invalid features#1', 'title' => ''], 'Status' => ['description' => 'The status of the rule. Valid values:'."\n" ."\n" .'- **on**: The rule is enabled.'."\n" ."\n" .'- **off**: The rule is disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'DefaultAction' => ['description' => 'The default action.', 'type' => 'string', 'example' => 'deny', 'title' => ''], 'Action' => ['description' => 'The action to perform.', 'type' => 'string', 'example' => 'deny', 'title' => ''], 'RuleId' => ['description' => 'The ID of the HTTP DDoS protection rule.', 'type' => 'integer', 'format' => 'int32', 'example' => '20203578', 'title' => ''], 'LogRuleId' => ['description' => 'The ID of the protection rule used for log records.', 'type' => 'integer', 'format' => 'int32', 'example' => '100010', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'description' => 'A list of rule details.', 'title' => '', 'example' => '', ], ], 'title' => '', 'description' => 'Schema of Response', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'The specified SiteId is invalid.', 'description' => 'The specified SiteId is invalid.Check parameter SiteId and try again.'], ['errorCode' => 'ErrSiteIdNoteEnterprise', 'errorMessage' => 'This feature is unavailable because your website is not associated with an Enterprise plan. Upgrade your plan to Enterprise.', 'description' => 'This feature is unavailable because your website is not associated with an Enterprise plan. Upgrade your plan to Enterprise.'], ], 403 => [ ['errorCode' => 'SiteIdDDoSVersionCheckFailed', 'errorMessage' => 'SiteId DDoS version check failed.', 'description' => 'Failed to check the DDoS version corresponding to the site.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'title' => 'DescribeHttpDDoSAttackRules', 'summary' => 'Queries HTTP DDoS attack protection rules.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:DescribeHttpDDoSAttackRules', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"D4030CD2-0D9D-5E92-B358-421AE58307C6\\",\\n \\"TotalCount\\": 100,\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"RuleInfos\\": [\\n {\\n \\"RuleName\\": \\"Illegal request。\\",\\n \\"RuleIdInfo\\": \\"global_01_s\\",\\n \\"RuleDesc\\": \\"The HTTP request\'s Accept header contains invalid features#1\\",\\n \\"Status\\": \\"on\\",\\n \\"DefaultAction\\": \\"deny\\",\\n \\"Action\\": \\"deny\\",\\n \\"RuleId\\": 20203578,\\n \\"LogRuleId\\": 100010\\n }\\n ]\\n}","type":"json"}]', ], 'DescribeHttpDDoSIntelligentAclRules' => [ 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '263690', 'abilityTreeNodes' => ['FEATUREdcdn5DYCZJ'], 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. To obtain the site ID, call the [ListSites](~~ListSites~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'minimum' => '1', 'example' => '5407498413****', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'maximum' => '100000', 'minimum' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => [ 'description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '10', 'enum' => ['5', '10', '20'], 'example' => '10', 'title' => '', ], ], [ 'name' => 'RuleType', 'in' => 'query', 'schema' => [ 'description' => 'The rule type.', 'type' => 'string', 'required' => false, 'default' => 'acl', 'enum' => ['acl'], 'example' => 'acl', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'Id of the request', 'type' => 'string', 'title' => '', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9'], 'TotalCount' => ['description' => 'The total number of rules.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''], 'PageNumber' => ['description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RuleInfos' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'RuleName' => ['description' => 'The rule name.', 'type' => 'string', 'example' => 'smart_cc_***', 'title' => ''], 'RecordName' => ['description' => 'The record name.', 'type' => 'string', 'example' => 'test.example.com', 'title' => ''], 'Action' => ['description' => 'The protection action.', 'type' => 'string', 'example' => 'deny', 'title' => ''], 'RuleId' => ['description' => 'The rule ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '20569929', 'title' => ''], 'Condition' => ['description' => 'The rule trigger condition.', 'type' => 'string', 'example' => '{"$and":[{"key":"URI","opValue":"prefix-match","values":"/"}]}', 'title' => ''], 'PunishTime' => ['description' => 'The action duration. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1800', 'title' => ''], 'LogRuleId' => ['description' => 'The ID of the protection rule for log records.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000030', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'description' => 'The list of rules.', 'title' => '', 'example' => '', ], ], 'title' => '', 'description' => 'Schema of Response', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'The specified SiteId is invalid.', 'description' => 'The specified SiteId is invalid.Check parameter SiteId and try again.'], ['errorCode' => 'ErrSiteIdNoteEnterprise', 'errorMessage' => 'This feature is unavailable because your website is not associated with an Enterprise plan. Upgrade your plan to Enterprise.', 'description' => 'This feature is unavailable because your website is not associated with an Enterprise plan. Upgrade your plan to Enterprise.'], ], 403 => [ ['errorCode' => 'SiteIdDDoSVersionCheckFailed', 'errorMessage' => 'SiteId DDoS version check failed.', 'description' => 'Failed to check the DDoS version corresponding to the site.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'title' => 'DescribeHttpDDoSIntelligentAclRules', 'summary' => 'Describes the accurate access control rules created by Deep Learning and Protection.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"TotalCount\\": 100,\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"RuleInfos\\": [\\n {\\n \\"RuleName\\": \\"smart_cc_***\\",\\n \\"RecordName\\": \\"test.example.com\\",\\n \\"Action\\": \\"deny\\",\\n \\"RuleId\\": 20569929,\\n \\"Condition\\": \\"{\\\\\\"$and\\\\\\":[{\\\\\\"key\\\\\\":\\\\\\"URI\\\\\\",\\\\\\"opValue\\\\\\":\\\\\\"prefix-match\\\\\\",\\\\\\"values\\\\\\":\\\\\\"/\\\\\\"}]}\\",\\n \\"PunishTime\\": 1800,\\n \\"LogRuleId\\": 1000030\\n }\\n ]\\n}","type":"json"}]', ], 'DescribeHttpDDoSIntelligentRateLimitRules' => [ 'summary' => 'Queries the frequency control rules generated by Deep Learning and Protection.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '263694', 'abilityTreeNodes' => ['FEATUREdcdn5DYCZJ'], 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. Obtain this by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'minimum' => '1', 'example' => '123456****', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'maximum' => '100000', 'minimum' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => [ 'description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '10', 'enum' => ['5', '10', '20'], 'example' => '10', 'title' => '', ], ], [ 'name' => 'RuleType', 'in' => 'query', 'schema' => [ 'description' => 'The rule type.', 'type' => 'string', 'required' => false, 'default' => 'cc', 'enum' => ['cc'], 'example' => 'cc', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'title' => '', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'TotalCount' => ['description' => 'The total number of rules.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''], 'PageNumber' => ['description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RuleInfos' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'RuleName' => ['description' => 'The name of the rule.', 'type' => 'string', 'example' => 'inner_cc_client_ip_ratelimit', 'title' => ''], 'RecordName' => ['description' => 'The name of the record.', 'type' => 'string', 'example' => 'test.example.com', 'title' => ''], 'Action' => ['description' => 'The action to perform.', 'type' => 'string', 'example' => 'js', 'title' => ''], 'RuleId' => ['description' => 'The ID of the rule.', 'type' => 'integer', 'format' => 'int64', 'example' => '20110849', 'title' => ''], 'RateLimit' => ['description' => 'The frequency information.', 'type' => 'string', 'example' => '{"threshold":2000,"interval":5,"target":"ip","ttl":600}', 'title' => ''], 'Statistics' => ['description' => 'The statistics.', 'type' => 'string', 'example' => '{"field":"ip","mode":"count"}', 'title' => ''], 'Condition' => ['description' => 'The conditions that trigger the rule.', 'type' => 'string', 'example' => '{"$and":[{"key":"URI","opValue":"prefix-match","values":"/"}]}', 'title' => ''], 'PunishTime' => ['description' => 'The duration of the penalty in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '86400', 'title' => ''], 'LogRuleId' => ['description' => 'The ID of the protection rule for log records.', 'type' => 'integer', 'format' => 'int64', 'example' => '100030', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'description' => 'The list of rules.', 'title' => '', 'example' => '', ], ], 'title' => '', 'description' => 'Schema of Response', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'The specified SiteId is invalid.', 'description' => 'The specified SiteId is invalid.Check parameter SiteId and try again.'], ['errorCode' => 'ErrSiteIdNoteEnterprise', 'errorMessage' => 'This feature is unavailable because your website is not associated with an Enterprise plan. Upgrade your plan to Enterprise.', 'description' => 'This feature is unavailable because your website is not associated with an Enterprise plan. Upgrade your plan to Enterprise.'], ], 403 => [ ['errorCode' => 'SiteIdDDoSVersionCheckFailed', 'errorMessage' => 'SiteId DDoS version check failed.', 'description' => 'Failed to check the DDoS version corresponding to the site.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'title' => 'DescribeHttpDDoSIntelligentRateLimitRules', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"TotalCount\\": 100,\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"RuleInfos\\": [\\n {\\n \\"RuleName\\": \\"inner_cc_client_ip_ratelimit\\",\\n \\"RecordName\\": \\"test.example.com\\",\\n \\"Action\\": \\"js\\",\\n \\"RuleId\\": 20110849,\\n \\"RateLimit\\": \\"{\\\\\\"threshold\\\\\\":2000,\\\\\\"interval\\\\\\":5,\\\\\\"target\\\\\\":\\\\\\"ip\\\\\\",\\\\\\"ttl\\\\\\":600}\\",\\n \\"Statistics\\": \\"{\\\\\\"field\\\\\\":\\\\\\"ip\\\\\\",\\\\\\"mode\\\\\\":\\\\\\"count\\\\\\"}\\",\\n \\"Condition\\": \\"{\\\\\\"$and\\\\\\":[{\\\\\\"key\\\\\\":\\\\\\"URI\\\\\\",\\\\\\"opValue\\\\\\":\\\\\\"prefix-match\\\\\\",\\\\\\"values\\\\\\":\\\\\\"/\\\\\\"}]}\\",\\n \\"PunishTime\\": 86400,\\n \\"LogRuleId\\": 100030\\n }\\n ]\\n}","type":"json"}]', ], 'DescribeKvAccountStatus' => [ 'summary' => 'Queries the status of an account in the KV service.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239022', 'abilityTreeNodes' => ['FEATUREdcdnGMYWU5'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'Account status.'."\n" ."\n" .'- **online**: Enabled.'."\n" ."\n" .'- **offline**: Disabled.', 'type' => 'string', 'example' => 'online', 'title' => ''], 'RequestId' => ['description' => 'Request ID.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidAccount.Malformed', 'errorMessage' => 'The specified account is invalid.', 'description' => 'The account number is not entered correctly, for example, the input is empty.'], ['errorCode' => 'InvalidNameSpace.Malformed', 'errorMessage' => 'The specified namespace is invalid.', 'description' => 'The bucket name is entered incorrectly, such as an empty string.'], ['errorCode' => 'InvalidKey.Malformed', 'errorMessage' => 'The specified key is invalid.', 'description' => 'Key name input error, such as entering an empty string.'], ['errorCode' => 'InvalidKey.ExceedsMaximum', 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', 'description' => 'The length of the requested key is too large.'], ['errorCode' => 'InvalidValue.ExceedsMaximum', 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', 'description' => 'The value deposited is too large.'], ], 403 => [ ['errorCode' => 'InvalidKey.ExceedsCapacity', 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', 'description' => 'The capacity of the storage space exceeds the limit.'], ['errorCode' => 'Unauthorized.InvalidParameters', 'errorMessage' => 'The specified authentication parameters are invalid.', 'description' => 'Authentication parameter input error.'], ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'InvalidAccount.NotFound', 'errorMessage' => 'The specified account does not exist.', 'description' => 'The specified account does not exist.'], ['errorCode' => 'InvalidNameSpace.NotFound', 'errorMessage' => 'The specified namespace does not exist.', 'description' => ''], ['errorCode' => 'InvalidKey.NotFound', 'errorMessage' => 'The specified key does not exist.', 'description' => 'The specified key-value pair does not exist.'], ], 406 => [ ['errorCode' => 'InvalidNameSpace.Duplicate', 'errorMessage' => 'The specified namespace already exists.', 'description' => 'Specified storage space'], ['errorCode' => 'InvalidNameSpace.QuotaFull', 'errorMessage' => 'The maximum number of namespaces is exceeded.', 'description' => 'The number of storage spaces exceeds the capacity limit.'], ], 429 => [ ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests are submitted.', 'description' => 'Submissions are too frequent, please try again later'], ['errorCode' => 'TooQuickRequests', 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', 'description' => 'The modification or deletion of key-value pairs is too frequent.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DescribeKvAccountStatus', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeKvAccountStatus'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:DescribeKvAccountStatus', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Status\\": \\"online\\",\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\"\\n}","type":"json"}]', ], 'DescribePreloadTasks' => [ 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239113', 'abilityTreeNodes' => ['FEATUREdcdn4TTNAL'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID. You can call the [ListSites](~~2850189~~) operation to obtain the ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'Content', 'in' => 'query', 'schema' => ['description' => 'The content to prefetch. Exact match is supported.', 'type' => 'string', 'required' => false, 'example' => 'http://a.com/1.jpg?b=2', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. Valid values: **1** to **100000**. Default value: **1**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100000', 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Default value: 20. Valid values: 1 to 50.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '20', 'example' => '20', 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The start time. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.', 'type' => 'string', 'required' => false, 'example' => '2023-03-22T17:00:00Z', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end time. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n" ."\n" .'> The end time must be later than the start time.', 'type' => 'string', 'required' => false, 'example' => '2023-03-23T06:23:00Z', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => [ 'description' => 'The task status. Valid values:'."\n" ."\n" .'- **Complete**: The task is complete.'."\n" ."\n" .'- **Refreshing**: The task is running.'."\n" ."\n" .'- **Failed**: The task failed.', 'type' => 'string', 'enum' => ['Refreshing', 'Complete', 'Failed'], 'required' => false, 'example' => 'Complete', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '83', 'title' => ''], 'Tasks' => [ 'description' => 'The tasks.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The task status.'."\n" ."\n" .'- **Complete**: The task is complete.'."\n" ."\n" .'- **Refreshing**: The task is in progress.'."\n" ."\n" .'- **Failed**: The task failed.', 'type' => 'string', 'example' => 'Complete', 'title' => ''], 'CreateTime' => ['description' => 'The time when the task was created.', 'type' => 'string', 'example' => '2023-03-28 14:28:57', 'title' => ''], 'Process' => ['description' => 'The progress of the task, in percentage.', 'type' => 'string', 'example' => '100%', 'title' => ''], 'Description' => ['description' => 'The error message returned upon a prefetch task failure. Valid values:'."\n" ."\n" .'- **Internal Error**'."\n" ."\n" .'- **Origin Timeout**'."\n" ."\n" .'- **Origin Return StatusCode 5XX**', 'type' => 'string', 'example' => 'Internal Error', 'title' => ''], 'Content' => ['description' => 'The prefetched content.', 'type' => 'string', 'example' => 'http://a.com/1.jpg?b=2', 'title' => ''], 'TaskId' => ['description' => 'The ID of the queried task.', 'type' => 'string', 'example' => '1597854579687428', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingTimeParameter', 'errorMessage' => 'The StartTime and EndTime must be both specified.', 'description' => 'Please provide both a start time and an end time.'], ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'DomainNameOverLimit', 'errorMessage' => 'A maximum of 500 domains are supported for each request.', 'description' => 'Only 500 domain names are supported at a time. Please reduce the number of domain names to request again.'], ['errorCode' => 'InvalidTime', 'errorMessage' => 'The query time cannot exceed the last 3 days.', 'description' => 'The query time cannot exceed the last 3 days.'], ['errorCode' => 'MissingParameter.ObjectType', 'errorMessage' => 'The ObjectType parameter is required if DomainName or ObjectType is specified.', 'description' => 'Specify the ObjectType parameter.'], ['errorCode' => 'InvalidStationParameter', 'errorMessage' => 'The specified Station is invalid.', 'description' => 'The specified node parameter is invalid.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ['errorCode' => 'InvalidTaskId.Malformed', 'errorMessage' => 'The specified taskId is invalid.', 'description' => 'The specified task ID is invalid.'], ['errorCode' => 'InvalidParameters.InvalidUrls', 'errorMessage' => 'The specified urls are invalid.', 'description' => 'The requested URL parameter is invalid.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'DescribePreloadTasks', 'summary' => 'Queries prefetch tasks by time, task status, or prefetch URL.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribePreloadTasks'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:DescribePreloadTasks', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 83,\\n \\"Tasks\\": [\\n {\\n \\"Status\\": \\"Complete\\",\\n \\"CreateTime\\": \\"2023-03-28 14:28:57\\",\\n \\"Process\\": \\"100%\\",\\n \\"Description\\": \\"Internal Error\\",\\n \\"Content\\": \\"http://a.com/1.jpg?b=2\\",\\n \\"TaskId\\": \\"1597854579687428\\"\\n }\\n ]\\n}","type":"json"}]', ], 'DescribePurgeTasks' => [ 'summary' => 'Queries the execution status of refresh tasks.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239334', 'abilityTreeNodes' => ['FEATUREdcdnBCJPGN', 'FEATUREdcdnELTTM1', 'FEATUREdcdnA9FG2P', 'FEATUREdcdnRELTJV', 'FEATUREdcdnEWYS3A', 'FEATUREdcdn4QVGXU'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n" .'>You must always specify SiteId. An error is reported if SiteId is not specified.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'Content', 'in' => 'query', 'schema' => ['description' => 'The query content. Exact match is used.', 'type' => 'string', 'required' => false, 'example' => 'http://a.com/1.jpg?b=1', 'title' => ''], ], [ 'name' => 'Type', 'in' => 'query', 'schema' => [ 'description' => 'The task type. Valid values:'."\n" .'- **file** (default): file refresh.'."\n" .'- **cachetag**: cache tag refresh.'."\n" .'- **directory**: directory refresh.'."\n" .'- **ignoreParams**: ignore parameters refresh.'."\n" .'- **hostname**: hostname refresh.'."\n" .'- **purgeall**: purge all cache under the site.', 'enumValueTitles' => ['cachetag' => 'cachetag refresh.', 'hostname' => 'hostname refresh.', 'file' => 'file refresh.', 'cachekey' => 'cachekey refresh.', 'purgeall' => 'purge all.', 'ignoreparams' => 'ignore parameters refresh.', 'directory' => 'directory refresh.'], 'type' => 'string', 'required' => false, 'enum' => ['file', 'directory', 'ignoreparams', 'hostname', 'purgeall', 'cachetag', 'cachekey'], 'example' => 'file', 'title' => '', ], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number to return. Valid values: **1 to 100000**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100000', 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Default value: **20**. Maximum value: **50**. Valid values: any integer from **1** to **50**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '20', 'example' => '20', 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The start time. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC+0.', 'type' => 'string', 'required' => false, 'example' => '2022-11-16T05:33:00Z', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end time. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC+0.'."\n" ."\n\n" .'> The end time must be later than the start time.', 'type' => 'string', 'required' => false, 'example' => '2022-11-18T15:59:59Z', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => [ 'description' => 'The task execution status. Valid values:'."\n" ."\n" .'- **Complete**: Completed.'."\n" .'- **Refreshing**: Refreshing.'."\n" .'- **Failed**: Refresh failed.', 'enumValueTitles' => ['Refreshing' => 'Refreshing.', 'Complete' => 'Completed.', 'Failed' => 'Refresh failed.'], 'type' => 'string', 'enum' => ['Complete', 'Refreshing', 'Failed'], 'required' => false, 'example' => 'Complete', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A123425345', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int64', 'example' => '15', 'title' => ''], 'Tasks' => [ 'description' => 'The task list.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status. Valid values:'."\n" ."\n" .'- **Complete**: Completed.'."\n" ."\n" .'- **Refreshing**: Refreshing.'."\n" ."\n" .'- **Failed**: Refresh failed.', 'type' => 'string', 'example' => 'Complete', 'title' => ''], 'CreateTime' => ['description' => 'The creation time in ISO 8601 format (for example, 2024-01-01T00:00:00+Z).', 'type' => 'string', 'example' => '2023-07-26T01:56:15Z', 'title' => ''], 'Type' => ['description' => 'The refresh task type. Valid values:'."\n" .'- **file** (default): file refresh.'."\n" .'- **cachetag**: cache tag refresh.'."\n" .'- **directory**: directory refresh.'."\n" .'- **ignoreParams**: ignore parameters refresh.'."\n" .'- **hostname**: hostname refresh.'."\n" .'- **purgeall**: purge all cache under the site.', 'type' => 'string', 'example' => 'file', 'title' => ''], 'Process' => ['description' => 'The task completion progress in percentage.', 'type' => 'string', 'example' => '100%', 'title' => ''], 'Description' => ['description' => 'The error description returned when the refresh task fails.', 'type' => 'string', 'example' => 'Internal Error', 'title' => ''], 'Content' => ['description' => 'The refresh object.', 'type' => 'string', 'example' => 'http://a.com/1.jpg?b=1', 'title' => ''], 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => '16346513304', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingTimeParameter', 'errorMessage' => 'The StartTime and EndTime must be both specified.', 'description' => 'Please provide both a start time and an end time.'], ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'DomainNameOverLimit', 'errorMessage' => 'A maximum of 500 domains are supported for each request.', 'description' => 'Only 500 domain names are supported at a time. Please reduce the number of domain names to request again.'], ['errorCode' => 'InvalidTime', 'errorMessage' => 'The query time cannot exceed the last 3 days.', 'description' => 'The query time cannot exceed the last 3 days.'], ['errorCode' => 'MissingParameter.ObjectType', 'errorMessage' => 'The ObjectType parameter is required if DomainName or ObjectType is specified.', 'description' => 'Specify the ObjectType parameter.'], ['errorCode' => 'InvalidStationParameter', 'errorMessage' => 'The specified Station is invalid.', 'description' => 'The specified node parameter is invalid.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ['errorCode' => 'InvalidTaskId.Malformed', 'errorMessage' => 'The specified taskId is invalid.', 'description' => 'The specified task ID is invalid.'], ['errorCode' => 'InvalidParameters.InvalidUrls', 'errorMessage' => 'The specified urls are invalid.', 'description' => 'The requested URL parameter is invalid.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A123425345\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"TotalCount\\": 15,\\n \\"Tasks\\": [\\n {\\n \\"Status\\": \\"Complete\\",\\n \\"CreateTime\\": \\"2023-07-26T01:56:15Z\\",\\n \\"Type\\": \\"file\\",\\n \\"Process\\": \\"100%\\",\\n \\"Description\\": \\"Internal Error\\",\\n \\"Content\\": \\"http://a.com/1.jpg?b=1\\",\\n \\"TaskId\\": \\"16346513304\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Query refresh tasks', 'changeSet' => [ ['createdAt' => '2025-02-10T01:55:17.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribePurgeTasks'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:DescribePurgeTasks', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'DescribeRatePlanInstanceStatus' => [ 'summary' => 'Queries the status of an instance that uses a plan.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239092', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID, which can be obtained by calling the [ListUserRatePlanInstances](~~ListUserRatePlanInstances~~) operation.'."\n", 'type' => 'string', 'required' => false, 'example' => 'xcdn-91fknmb80f0g***', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The data returned.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '60423A7F-A83D-1E24-B80E-86DD25790759'], 'InstanceId' => ['description' => 'The instance ID.'."\n", 'type' => 'string', 'example' => 'xcdn-91fknmb80f0g***'."\n", 'title' => ''], 'InstanceStatus' => ['description' => 'The instance status. Valid values:'."\n" ."\n" .'* running: The instance is running.'."\n" .'* renewing: The instance is being renewed.'."\n" .'* upgrading: The configuration of the instance is being upgraded.'."\n" .'* releasePrepaidService: The instance is released due to expiration.'."\n" .'* creating: The instance is being created.'."\n" .'* downgrading: The configuration of the instance is being downgraded.'."\n" .'* ceasePrepaidService: The instance has expired.'."\n", 'type' => 'string', 'example' => 'running', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'InvalidInstance', 'errorMessage' => 'The instance ID is missing or invalid. Make sure that the instance ID is valid and try again.', 'description' => 'The instance ID is missing or invalid. Make sure that the instance ID is valid and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"60423A7F-A83D-1E24-B80E-86DD25790759\\",\\n \\"InstanceId\\": \\"xcdn-91fknmb80f0g***\\\\n\\",\\n \\"InstanceStatus\\": \\"running\\"\\n}","type":"json"}]', 'title' => 'DescribeRatePlanInstanceStatus', 'description' => 'You can query the status of an instance after you purchase a plan for the instance.'."\n", 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeRatePlanInstanceStatus'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:DescribeRatePlanInstanceStatus', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'DescribeRatePlanPrice' => [ 'summary' => 'Queries the price of a plan, including its type and status.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239601', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'Period', 'in' => 'query', 'schema' => ['description' => 'The purchase duration, in months.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PlanName', 'in' => 'query', 'schema' => ['description' => 'The plan name.', 'type' => 'string', 'required' => false, 'example' => 'basic', 'title' => ''], ], [ 'name' => 'Amount', 'in' => 'query', 'schema' => ['description' => 'The number of plans.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '99', 'minimum' => '1', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response body.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.', 'type' => 'string', 'example' => '50423A7F-A83D-1E24-B80E-86DD25790759'], 'PriceModel' => [ 'description' => 'The pricing information.', 'type' => 'object', 'properties' => [ 'RatePlan' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'PlanPriceList' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'PlanName' => ['description' => 'The name of the plan.', 'type' => 'string', 'example' => 'basic', 'title' => ''], 'PlanType' => ['description' => 'The type of the plan. Valid values:'."\n" ."\n" .'- **normal**: Fixed plan.'."\n" ."\n" .'- **enterprise**: Enterprise plan.', 'type' => 'string', 'example' => 'normal', 'title' => ''], 'PlanStatus' => ['description' => 'The status of the plan. Valid values:'."\n" ."\n" .'- **uncustomed**: Not customized.'."\n" ."\n" .'- **upgrading**: Upgrading.'."\n" ."\n" .'- **unsaled**: Not purchased.'."\n" ."\n" .'- **saled**: Purchased.', 'type' => 'string', 'example' => 'unsaled', 'title' => ''], 'Currency' => ['description' => 'The currency. Valid values:'."\n" ."\n" .'- **JPY**: Japanese yen.'."\n" ."\n" .'- **USD**: US dollar.'."\n" ."\n" .'- **CNY**: Chinese yuan.', 'type' => 'string', 'example' => 'CNY', 'title' => ''], 'TotalPrice' => ['description' => 'The original price of the order. The value is the sum of the transaction price and the discount amount.', 'type' => 'number', 'format' => 'float', 'example' => '2', 'title' => ''], 'DiscountPrice' => ['description' => 'The discount amount for the order.', 'type' => 'number', 'format' => 'float', 'example' => '1', 'title' => ''], 'Price' => ['description' => 'The final price of the order.', 'type' => 'number', 'format' => 'float', 'example' => '1', 'title' => ''], 'Coverages' => ['description' => 'The acceleration regions that are supported by the plan.', 'type' => 'string', 'example' => 'overseas,global,domestic', 'title' => ''], 'Position' => ['description' => 'The priority of the plan.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'ChargeType' => ['description' => 'The billing method. Valid values:'."\n" ."\n" .'- **PREPAY**: subscription.'."\n" ."\n" .'- **POSTPAY**: pay-as-you-go.', 'type' => 'string', 'example' => 'PREPAY', 'title' => ''], 'PlanTraffic' => ['description' => 'The capacity of the plan.', 'type' => 'string', 'example' => '1000', 'title' => ''], 'EdgeCompute' => ['description' => 'Edge computing.', 'type' => 'string', 'example' => 'er_on', 'title' => ''], 'EdgeWaf' => ['description' => 'Edge WAF.', 'type' => 'string', 'example' => 'waf_off', 'title' => ''], 'DcdnPlan' => ['description' => 'The edition of the plan.', 'type' => 'string', 'example' => 'basicplan', 'title' => ''], 'AccelerateType' => ['description' => 'The acceleration type.', 'type' => 'string', 'example' => 'smartrouting_off', 'title' => ''], 'EdgeDdos7Layer' => ['description' => 'Layer 7 edge DDoS.', 'type' => 'string', 'example' => 'ddos_off', 'title' => ''], 'Layer4Traffic' => ['description' => 'The capacity for Layer 4 acceleration.', 'type' => 'string', 'example' => '1000', 'title' => ''], 'EdgeDdos4Layer' => ['description' => 'Layer 4 edge DDoS.', 'type' => 'string', 'example' => 'ddos_off', 'title' => ''], 'CrossborderTraffic' => ['description' => 'China network optimization.', 'type' => 'string', 'example' => '1000', 'title' => ''], 'EdgeLb7Layer' => ['description' => 'Layer 7 load balancing.', 'type' => 'string', 'example' => 'lb_off', 'title' => ''], 'EdgeLb4Layer' => ['description' => 'Layer 4 load balancing.', 'type' => 'string', 'example' => 'lb_off', 'title' => ''], 'Layer4TrafficIntl' => ['description' => 'The capacity for Layer 4 acceleration outside the Chinese mainland.', 'type' => 'string', 'example' => '1000', 'title' => ''], 'EdgeDdos4LayerIntl' => ['description' => 'Layer 4 edge DDoS outside the Chinese mainland.', 'type' => 'string', 'example' => 'ddos_off', 'title' => ''], 'EdgeLb4LayerIntl' => ['description' => 'Layer 4 load balancing outside the Chinese mainland.', 'type' => 'string', 'example' => 'lb_off', 'title' => ''], 'EdgeDdosInstanceCn' => ['description' => 'The DDoS instance in the Chinese mainland.', 'type' => 'string', 'example' => 'cn_300', 'title' => ''], 'EdgeDdosInstanceIntl' => ['description' => 'The DDoS instance outside the Chinese mainland.', 'type' => 'string', 'example' => 'overseas_300', 'title' => ''], 'EdgeWafInstance' => ['description' => 'The WAF instance.', 'type' => 'string', 'example' => 'enterprise_bot', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'description' => 'The price information of the plan.', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Rule' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'RuleList' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the policy.', 'type' => 'string', 'example' => 'Policy A', 'title' => ''], 'RuleDescId' => ['description' => 'The ID of the policy.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'description' => 'The matched policy.', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'CheckPlanFailed', 'errorMessage' => 'Invalid plan name or code. Check and try again.', 'description' => 'Invalid plan name or code. Check and try again.'], ['errorCode' => 'InvalidSiteICP', 'errorMessage' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.', 'description' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.'], ['errorCode' => 'InvalidSiteName', 'errorMessage' => 'Invalid website name. Check and try again.', 'description' => 'Invalid website name. Check and try again.'], ['errorCode' => 'SYSTEM.NoSpecificCodeFailed', 'errorMessage' => 'Invalid subscription duration. Check and try again.', 'description' => 'Invalid subscription duration. Check and try again.'], ['errorCode' => 'InvalidInstance', 'errorMessage' => 'The instance ID is missing or invalid. Make sure that the instance ID is valid and try again.', 'description' => 'The instance ID is missing or invalid. Make sure that the instance ID is valid and try again.'], ['errorCode' => 'InvalidComponent', 'errorMessage' => 'The order parameters is invalid.', 'description' => 'The order parameters is invalid.'], ['errorCode' => 'EnterpriseAmountErr', 'errorMessage' => 'Enterprise plans do not support bulk purchase.', 'description' => 'Enterprise plans do not support bulk purchase.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"50423A7F-A83D-1E24-B80E-86DD25790759\\",\\n \\"PriceModel\\": {\\n \\"RatePlan\\": {\\n \\"PlanPriceList\\": [\\n {\\n \\"PlanName\\": \\"basic\\",\\n \\"PlanType\\": \\"normal\\",\\n \\"PlanStatus\\": \\"unsaled\\",\\n \\"Currency\\": \\"CNY\\",\\n \\"TotalPrice\\": 2,\\n \\"DiscountPrice\\": 1,\\n \\"Price\\": 1,\\n \\"Coverages\\": \\"overseas,global,domestic\\",\\n \\"Position\\": 1,\\n \\"ChargeType\\": \\"PREPAY\\",\\n \\"PlanTraffic\\": \\"1000\\",\\n \\"EdgeCompute\\": \\"er_on\\",\\n \\"EdgeWaf\\": \\"waf_off\\",\\n \\"DcdnPlan\\": \\"basicplan\\",\\n \\"AccelerateType\\": \\"smartrouting_off\\",\\n \\"EdgeDdos7Layer\\": \\"ddos_off\\",\\n \\"Layer4Traffic\\": \\"1000\\",\\n \\"EdgeDdos4Layer\\": \\"ddos_off\\",\\n \\"CrossborderTraffic\\": \\"1000\\",\\n \\"EdgeLb7Layer\\": \\"lb_off\\",\\n \\"EdgeLb4Layer\\": \\"lb_off\\",\\n \\"Layer4TrafficIntl\\": \\"1000\\",\\n \\"EdgeDdos4LayerIntl\\": \\"ddos_off\\",\\n \\"EdgeLb4LayerIntl\\": \\"lb_off\\",\\n \\"EdgeDdosInstanceCn\\": \\"cn_300\\",\\n \\"EdgeDdosInstanceIntl\\": \\"overseas_300\\",\\n \\"EdgeWafInstance\\": \\"enterprise_bot\\"\\n }\\n ]\\n },\\n \\"Rule\\": {\\n \\"RuleList\\": [\\n {\\n \\"Name\\": \\"Policy A\\",\\n \\"RuleDescId\\": 1\\n }\\n ]\\n }\\n }\\n}","type":"json"}]', 'title' => 'DescribeRatePlanPrice', 'description' => 'The purchase period is measured in months.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:DescribeRatePlanPrice', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'DescribeRatePlanPriceGap' => [ 'summary' => 'Queries the price difference for a plan specification change by calling DescribeRatePlanPriceGap.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239592', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The target plan name. You can obtain this value from the [DescribeRatePlanPrice](~~DescribeRatePlanPrice~~) operation.', 'type' => 'string', 'required' => false, 'example' => 'entranceplan', 'title' => ''], ], [ 'name' => 'TargetPlanCode', 'in' => 'query', 'schema' => ['description' => 'The code of the target plan for the specification change.', 'type' => 'string', 'required' => false, 'example' => 'standardplan', 'title' => ''], ], [ 'name' => 'OrderType', 'in' => 'query', 'schema' => [ 'description' => 'The specification change type. Valid values:'."\n" .'- DOWNGRADE: downgrade.'."\n" .'- UPGRADE: upgrade.', 'enumValueTitles' => ['UPGRADE' => 'Upgrade.'], 'type' => 'string', 'enum' => ['UPGRADE'], 'required' => false, 'example' => 'UPGRADE', 'title' => '', ], ], [ 'name' => 'TargetPlanName', 'in' => 'query', 'schema' => ['description' => 'The name of the target plan for the specification change.', 'type' => 'string', 'required' => false, 'example' => 'entranceplan', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response struct.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '40423A7F-A83D-1E24-B80E-86DD25790759'], 'PriceModel' => [ 'description' => 'The price information.', 'type' => 'object', 'properties' => [ 'Rule' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'RuleList' => [ 'description' => 'The rule hits.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The policy name.', 'type' => 'string', 'example' => 'Policy A', 'title' => ''], 'RuleDescId' => ['description' => 'The policy ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'xcdn-91fknmb80f0g', 'title' => ''], 'TargetPlanCode' => ['description' => 'The target plan code.', 'type' => 'string', 'example' => 'entranceplan', 'title' => ''], 'Price' => ['description' => 'The final order price, which is the actual transaction price.', 'type' => 'number', 'format' => 'float', 'example' => '1', 'title' => ''], 'Currency' => ['description' => 'The currency. Valid values:'."\n" .'- JPY: Japanese Yen.'."\n" .'- USD: US Dollar.'."\n" .'- CNY: Chinese Yuan.', 'type' => 'string', 'example' => 'CNY', 'title' => ''], 'TotalPrice' => ['description' => 'The original order price. Original order price = actual transaction price + discount amount.', 'type' => 'number', 'format' => 'float', 'example' => '2', 'title' => ''], 'DiscountPrice' => ['description' => 'The discount amount of the order.', 'type' => 'number', 'format' => 'float', 'example' => '1', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'CheckPlanFailed', 'errorMessage' => 'Invalid plan name or code. Check and try again.', 'description' => 'Invalid plan name or code. Check and try again.'], ['errorCode' => 'InvalidSiteICP', 'errorMessage' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.', 'description' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.'], ['errorCode' => 'InvalidSiteName', 'errorMessage' => 'Invalid website name. Check and try again.', 'description' => 'Invalid website name. Check and try again.'], ['errorCode' => 'SYSTEM.NoSpecificCodeFailed', 'errorMessage' => 'Invalid subscription duration. Check and try again.', 'description' => 'Invalid subscription duration. Check and try again.'], ['errorCode' => 'InvalidInstance', 'errorMessage' => 'The instance ID is missing or invalid. Make sure that the instance ID is valid and try again.', 'description' => 'The instance ID is missing or invalid. Make sure that the instance ID is valid and try again.'], ['errorCode' => 'InvalidComponent', 'errorMessage' => 'The order parameters is invalid.', 'description' => 'The order parameters is invalid.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"40423A7F-A83D-1E24-B80E-86DD25790759\\",\\n \\"PriceModel\\": {\\n \\"Rule\\": {\\n \\"RuleList\\": [\\n {\\n \\"Name\\": \\"Policy A\\",\\n \\"RuleDescId\\": 1\\n }\\n ]\\n },\\n \\"InstanceId\\": \\"xcdn-91fknmb80f0g\\",\\n \\"TargetPlanCode\\": \\"entranceplan\\",\\n \\"Price\\": 1,\\n \\"Currency\\": \\"CNY\\",\\n \\"TotalPrice\\": 2,\\n \\"DiscountPrice\\": 1\\n }\\n}","type":"json"}]', 'title' => 'Query plan specification change price difference', 'description' => 'The plan name and plan code can be obtained from the [DescribeRatePlanPrice](~~DescribeRatePlanPrice~~) operation.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:DescribeRatePlanPriceGap', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'DescribeSiteLogs' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238778', 'abilityTreeNodes' => ['FEATUREdcdnGVXOQA'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The ID of the website. You can call the ListSites operation to obtain.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456***', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The number of entries per page. Default value: 300. Valid values: 1 to 1000.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'maximum' => '1000', 'default' => '300', 'example' => '10', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. Pages start from page 1.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'default' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The beginning of the time range to query.'."\n" ."\n" .'The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.', 'type' => 'string', 'required' => false, 'example' => '2022-11-06T16:00:00Z', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end of the time range to query.'."\n" ."\n" .'The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n" ."\n" .'> The end time must be later than the start time.', 'type' => 'string', 'required' => false, 'example' => '2022-11-06T17:00:00Z', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9'], 'SiteLogDetails' => [ 'description' => 'The information about the website log files.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'SiteName' => ['description' => 'The website name.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], 'SiteId' => ['description' => 'The website ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456***', 'title' => ''], 'LogCount' => ['description' => 'The total number of entries returned on the current page.', 'type' => 'integer', 'format' => 'int32', 'example' => '300', 'title' => ''], 'LogInfos' => [ 'description' => 'The details of the website log files.', 'type' => 'array', 'items' => [ 'description' => 'The download URL of the log file.', 'type' => 'object', 'properties' => [ 'LogSize' => ['description' => 'The size of the log file. Unit: bytes.', 'type' => 'integer', 'format' => 'int32', 'example' => '438304768', 'title' => ''], 'EndTime' => ['description' => 'The end time.', 'type' => 'string', 'example' => '2022-11-06T17:00:00Z'."\n", 'title' => ''], 'LogName' => ['description' => 'The name of the log file.', 'type' => 'string', 'example' => 'example.com_2022_11_07_000000_020000.gz.xxxxxx', 'title' => ''], 'LogPath' => ['description' => 'The log path.'."\n" ."\n" .'> Take note of the Expires field (expiration timestamp) in this parameter. If the log download URL expires, you must reobtain the URL.', 'type' => 'string', 'example' => 'example.aliyundoc.com /v1.l1cache/105252530/example.com/2022_11_07/example.com_2022_11_07_000000_020000.gz.xxxxxx?Expires=1636963354&OSSAccessKeyId=LTAIviCc6zy8****&Signature=u0V6foRfZniHE8i%2BHUdxGOhZsK****'."\n", 'title' => ''], 'StartTime' => ['description' => 'The create time.', 'type' => 'string', 'example' => '2022-11-06T16:00:00Z'."\n", 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageInfos' => [ 'description' => 'Pagination information.', 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page. Default value: **300**. Valid values: **1 to 1000**.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '47', 'title' => ''], 'PageIndex' => ['description' => 'The page number returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'InvalidStartTime.ValueNotSupported', 'errorMessage' => 'The StartTime cannot exceed 31 days before the current time.', 'description' => 'The request parameter StartTime cannot be 31 days less than the current time.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'DescribeSiteLogs', 'summary' => 'Queries the URLs from which you can download the raw access logs of a website.', 'description' => '- If you do not specify StartTime and EndTime, log data from the last 24 hours is returned by default. If you specify StartTime and EndTime, log data for the specified time range is returned.'."\n" ."\n" .'- The time granularity for data queries is one hour.'."\n" ."\n" .'- The maximum number of calls per user: 50 calls per second.'."\n" ."\n" .'- Only log records from the last month can be queried (the time span between the start time and the current time cannot exceed 31 days).', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:DescribeSiteLogs', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"SiteLogDetails\\": [\\n {\\n \\"SiteName\\": \\"example.com\\",\\n \\"SiteId\\": 0,\\n \\"LogCount\\": 300,\\n \\"LogInfos\\": [\\n {\\n \\"LogSize\\": 438304768,\\n \\"EndTime\\": \\"2022-11-06T17:00:00Z\\\\n\\",\\n \\"LogName\\": \\"example.com_2022_11_07_000000_020000.gz.xxxxxx\\",\\n \\"LogPath\\": \\"example.aliyundoc.com /v1.l1cache/105252530/example.com/2022_11_07/example.com_2022_11_07_000000_020000.gz.xxxxxx?Expires=1636963354&OSSAccessKeyId=LTAIviCc6zy8****&Signature=u0V6foRfZniHE8i%2BHUdxGOhZsK****\\\\n\\",\\n \\"StartTime\\": \\"2022-11-06T16:00:00Z\\\\n\\"\\n }\\n ],\\n \\"PageInfos\\": {\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 47,\\n \\"PageIndex\\": 1\\n }\\n }\\n ]\\n}","type":"json"}]', ], 'DescribeSiteTimeSeriesData' => [ 'summary' => 'Query traffic analysis time series data', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239272', 'abilityTreeNodes' => ['FEATUREdcdnVIK4DM', 'FEATUREdcdn2Z4HOI'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID. Obtain the site ID by calling the [ListSites](~~ListSites~~) interface.'."\n" ."\n" .'If this parameter is empty, user-level data will be queried.', 'type' => 'string', 'required' => false, 'example' => '1150376036*****', 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The start time for obtaining data.'."\n" ."\n" .'The date format follows ISO8601 notation and uses UTC+0 time, in the format yyyy-MM-ddTHH:mm:ssZ.'."\n", 'type' => 'string', 'required' => false, 'example' => '2023-04-08T16:00:00Z', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end time for obtaining data.'."\n" ."\n" .'The date format follows ISO8601 notation and uses UTC+0 time, in the format yyyy-MM-ddTHH:mm:ssZ.'."\n" ."\n" .'> The end time must be later than the start time.', 'type' => 'string', 'required' => false, 'example' => '2023-04-09T16:00:00Z', 'title' => ''], ], [ 'name' => 'Interval', 'in' => 'query', 'schema' => ['description' => 'The time granularity for querying data, in seconds.'."\n" ."\n" .'Depending on the maximum time span of a single query, this parameter supports values of 60 (1 minute), 300 (5 minutes), 3600 (1 hour), and 86400 (1 day). For details, see the **Supported Query Time Granularities**.', 'type' => 'string', 'required' => false, 'example' => '300', 'title' => ''], ], [ 'name' => 'Fields', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'Query metrics.', 'type' => 'array', 'items' => [ 'description' => 'Query metrics.', 'type' => 'object', 'properties' => [ 'FieldName' => ['description' => 'Query metric value.'."\n" ."\n" .'> For specific dimensions, see [Data Analysis Field Description](~~2878520~~).', 'type' => 'string', 'required' => false, 'example' => 'Traffic', 'title' => ''], 'Dimension' => [ 'description' => 'Query dimension.', 'type' => 'array', 'items' => ['description' => 'Query dimension.'."\n" ."\n" .'> For specific dimensions, see [Data Analysis Field Description](~~2878520~~).', 'type' => 'string', 'required' => false, 'example' => 'ALL', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => true, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Data' => [ 'description' => 'Returned data.', 'type' => 'array', 'items' => [ 'description' => 'Returned data.', 'type' => 'object', 'properties' => [ 'FieldName' => ['description' => 'Query metric value.', 'type' => 'string', 'example' => 'Traffic', 'title' => ''], 'DimensionName' => ['description' => 'Query dimension.', 'type' => 'string', 'example' => 'ALL', 'title' => ''], 'DimensionValue' => ['description' => 'Query dimension value.', 'type' => 'string', 'example' => 'ALL', 'title' => ''], 'DetailData' => [ 'description' => 'Returned data.', 'type' => 'array', 'items' => [ 'description' => 'Returned data.', 'type' => 'object', 'properties' => [ 'TimeStamp' => ['description' => 'Start timestamp of the time slice.', 'type' => 'string', 'example' => '2023-04-08T16:00:00Z', 'title' => ''], 'Value' => ['description' => 'Value.', 'type' => 'any', 'example' => '123', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'SummarizedData' => [ 'description' => 'Aggregated query data.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'FieldName' => ['description' => 'The value of the aggregated metric being queried.', 'type' => 'string', 'example' => 'Traffic', 'title' => ''], 'DimensionName' => ['description' => 'The dimension of the aggregated data being queried.', 'type' => 'string', 'example' => 'ALL', 'title' => ''], 'DimensionValue' => ['description' => 'The value of the aggregated dimension being queried.', 'type' => 'string', 'example' => 'ALL', 'title' => ''], 'AggMethod' => ['description' => 'The aggregation method used.', 'type' => 'string', 'example' => 'sum', 'title' => ''], 'Value' => ['description' => 'The aggregated value.', 'type' => 'any', 'example' => '12345', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE7****', 'title' => ''], 'StartTime' => ['description' => 'The start time for fetching the data.'."\n" ."\n" .'The date format follows ISO8601 notation and uses UTC+0, formatted as yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2023-04-08T16:00:00Z', 'title' => ''], 'EndTime' => ['description' => 'The end time for fetching the data.'."\n" ."\n" .'The date format follows ISO8601 notation and uses UTC+0, formatted as yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2023-04-09T16:00:00Z', 'title' => ''], 'Interval' => ['description' => 'The granularity of the data, in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '300', 'title' => ''], 'SamplingRate' => ['description' => 'The sampling rate, in %.', 'type' => 'number', 'format' => 'float', 'example' => '100', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.TimeRange', 'errorMessage' => 'The specified time range exceeds the limit. Adjust it and try again.', 'description' => 'The specified time range exceeds the limit. Adjust it and try again.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Parameter verification failed. Check your configurations and try again.', 'description' => 'Parameter verification failed. Check your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.Function', 'errorMessage' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.', 'description' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.'], ['errorCode' => 'InvalidParameter.Field', 'errorMessage' => 'The specified Field is invalid.', 'description' => 'The specified Field is invalid. For more information, see OpenAPI Documentation .'], ['errorCode' => 'InvalidParameter.Dimension', 'errorMessage' => 'The specified Dimension is invalid.', 'description' => 'The specified Dimension is invalid. For more information, see OpenAPI Documentation .'."\n"], ['errorCode' => 'InvalidTime.Malformed', 'errorMessage' => 'Specified start time or end time is malformed.', 'description' => 'The specified time format is incorrect. The time must conform to the yyyy-MM-ddTHH:mm:ssZ format. Please enter it correctly and try again.'], ['errorCode' => 'TooManyDimensions', 'errorMessage' => 'Too many query dimensions specified. Delete some and try again.', 'description' => 'Too many query dimensions specified. Delete some and try again.'], ], ], 'title' => 'Query Traffic Analysis Time Series Data', 'description' => '- If you do not specify `StartTime` and `EndTime`, the API returns data for the past 24 hours; if you specify `StartTime` and `EndTime`, the API returns data for the specified time period.'."\n" .'- The API returns different time granularities based on the span between `StartTime` and `EndTime`.'."\n" .' * For a span of 3 hours or less, it returns 1-minute granularity data.'."\n" .' * For a span greater than 3 hours but no more than 12 hours, it returns 5-minute granularity data.'."\n" .' * For a span greater than 12 hours but no more than 1 day, it returns 15-minute granularity data.'."\n" .' * For a span greater than 1 day but no more than 10 days, it returns hourly granularity data.'."\n" .' * For a span greater than 10 days but no more than 31 days, it returns daily granularity data.'."\n" .'- Due to the high number of accesses during the query period, the data analysis may be sampled.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '10', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeSiteTimeSeriesData'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:DescribeSiteTimeSeriesData', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"FieldName\\": \\"Traffic\\",\\n \\"DimensionName\\": \\"ALL\\",\\n \\"DimensionValue\\": \\"ALL\\",\\n \\"DetailData\\": [\\n {\\n \\"TimeStamp\\": \\"2023-04-08T16:00:00Z\\",\\n \\"Value\\": \\"123\\"\\n }\\n ]\\n }\\n ],\\n \\"SummarizedData\\": [\\n {\\n \\"FieldName\\": \\"Traffic\\",\\n \\"DimensionName\\": \\"ALL\\",\\n \\"DimensionValue\\": \\"ALL\\",\\n \\"AggMethod\\": \\"sum\\",\\n \\"Value\\": \\"12345\\"\\n }\\n ],\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE7****\\",\\n \\"StartTime\\": \\"2023-04-08T16:00:00Z\\",\\n \\"EndTime\\": \\"2023-04-09T16:00:00Z\\",\\n \\"Interval\\": 300,\\n \\"SamplingRate\\": 100\\n}","type":"json"}]', ], 'DescribeSiteTopData' => [ 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239025', 'abilityTreeNodes' => ['FEATUREdcdnVIK4DM', 'FEATUREdcdn2Z4HOI'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~ListSites~~) operation.'."\n" ."\n" .'If you do not specify this parameter, the system returns data by account.', 'type' => 'string', 'required' => false, 'example' => '1150376036*****'."\n", 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The beginning of the time range to query.'."\n" ."\n" .'Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.', 'type' => 'string', 'required' => false, 'example' => '2023-04-08T16:00:00Z'."\n", 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end of the time range to query.'."\n" ."\n" .'Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n" ."\n" .'> The end time must be later than the start time.', 'type' => 'string', 'required' => false, 'example' => '2023-04-09T16:00:00Z'."\n", 'title' => ''], ], [ 'name' => 'Interval', 'in' => 'query', 'schema' => ['description' => 'The time interval between the data entries to return. Unit: seconds.', 'type' => 'string', 'required' => false, 'example' => '300', 'title' => ''], ], [ 'name' => 'Fields', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The metrics to query.', 'type' => 'array', 'items' => [ 'description' => 'The metric to query.', 'type' => 'object', 'properties' => [ 'FieldName' => ['description' => 'The metric name.', 'type' => 'string', 'required' => false, 'example' => 'Traffic', 'title' => ''], 'Dimension' => [ 'description' => 'The dimensions at which you want to query data.', 'type' => 'array', 'items' => ['description' => 'The dimension at which you want to query data.'."\n" ."\n" .'> For more information, see the corresponding log fields.', 'type' => 'string', 'required' => false, 'example' => 'ALL', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => true, 'title' => '', 'example' => '', ], ], [ 'name' => 'Limit', 'in' => 'query', 'schema' => [ 'description' => 'The number of top-ranking data entries to query.', 'enumValueTitles' => [5 => '5', 10 => '10', 150 => '150'], 'type' => 'string', 'default' => '300', 'enum' => ['5', '10', '15', '100', '150', '999', '300'], 'required' => false, 'example' => '5', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Data' => [ 'description' => 'The returned data.', 'type' => 'array', 'items' => [ 'description' => 'The returned data.', 'type' => 'object', 'properties' => [ 'FieldName' => ['description' => 'The metric name.', 'type' => 'string', 'example' => 'Traffic', 'title' => ''], 'DimensionName' => ['description' => 'The dimension at which data was queried.', 'type' => 'string', 'example' => 'ALL', 'title' => ''], 'DetailData' => [ 'description' => 'The returned data.', 'type' => 'array', 'items' => [ 'description' => 'The returned data.', 'type' => 'object', 'properties' => [ 'DimensionValue' => ['description' => 'The dimension value.', 'type' => 'string', 'example' => 'ALL', 'title' => ''], 'Value' => ['description' => 'The queried numeric value.', 'type' => 'any', 'example' => '123', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '35C66C7B-671H-4297-9187-2C447724****', 'title' => ''], 'StartTime' => ['description' => 'The beginning of the time range during which data was queried.'."\n" ."\n" .'The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.', 'type' => 'string', 'example' => '2023-04-08T16:00:00Z', 'title' => ''], 'EndTime' => ['description' => 'The end of the time range during which data was queried.'."\n" ."\n" .'The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.', 'type' => 'string', 'example' => '2023-04-09T16:00:00Z', 'title' => ''], 'SamplingRate' => ['description' => 'The sampling rate.', 'type' => 'number', 'format' => 'float', 'example' => '100', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.TimeRange', 'errorMessage' => 'The specified time range exceeds the limit. Adjust it and try again.', 'description' => 'The specified time range exceeds the limit. Adjust it and try again.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Parameter verification failed. Check your configurations and try again.', 'description' => 'Parameter verification failed. Check your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.Function', 'errorMessage' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.', 'description' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.'], ['errorCode' => 'InvalidParameter.Field', 'errorMessage' => 'The specified Field is invalid.', 'description' => 'The specified Field is invalid. For more information, see OpenAPI Documentation .'], ['errorCode' => 'InvalidParameter.Dimension', 'errorMessage' => 'The specified Dimension is invalid.', 'description' => 'The specified Dimension is invalid. For more information, see OpenAPI Documentation .'."\n"], ['errorCode' => 'InvalidTime.Malformed', 'errorMessage' => 'Specified start time or end time is malformed.', 'description' => 'The specified time format is incorrect. The time must conform to the yyyy-MM-ddTHH:mm:ssZ format. Please enter it correctly and try again.'], ['errorCode' => 'TooManyDimensions', 'errorMessage' => 'Too many query dimensions specified. Delete some and try again.', 'description' => 'Too many query dimensions specified. Delete some and try again.'], ], ], 'title' => 'DescribeSiteTopData', 'summary' => 'Queries the top-ranking records in a traffic analytics report by website or Alibaba Cloud account.', 'description' => '- If you do not specify StartTime and EndTime, data from the last 24 hours is returned. If you specify StartTime and EndTime, data for the specified time range is returned.'."\n" ."\n" .'- Due to a large number of visits during the queried time range, the data analytics results may be sampled.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '10', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeSiteTopData'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:DescribeSiteTopData', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"FieldName\\": \\"Traffic\\",\\n \\"DimensionName\\": \\"ALL\\",\\n \\"DetailData\\": [\\n {\\n \\"DimensionValue\\": \\"ALL\\",\\n \\"Value\\": \\"123\\"\\n }\\n ]\\n }\\n ],\\n \\"RequestId\\": \\"35C66C7B-671H-4297-9187-2C447724****\\",\\n \\"StartTime\\": \\"2023-04-08T16:00:00Z\\",\\n \\"EndTime\\": \\"2023-04-09T16:00:00Z\\",\\n \\"SamplingRate\\": 100\\n}","type":"json"}]', ], 'DescribeSiteWafTimeSeriesData' => [ 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '255155', 'abilityTreeNodes' => ['FEATUREdcdnVIK4DM', 'FEATUREdcdn2Z4HOI'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~ListSites~~) operation to obtain the site ID.'."\n" ."\n" .'If this parameter is left empty, user-level data is queried.', 'type' => 'string', 'required' => false, 'example' => '11089268296****', 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The beginning of the time range to query.'."\n" ."\n" .'Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC+0.', 'type' => 'string', 'required' => false, 'example' => '2023-04-08T16:00:00Z', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end of the time range to query.'."\n" ."\n" .'Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC+0.'."\n" ."\n" .'> The end time must be later than the start time.', 'type' => 'string', 'required' => false, 'example' => '2023-04-09T16:00:00Z', 'title' => ''], ], [ 'name' => 'Interval', 'in' => 'query', 'schema' => ['description' => 'The time granularity of the queried data. Unit: seconds.'."\n" ."\n" .'Based on the maximum time span of a single query, this parameter supports the values 60 (1 minute), 300 (5 minutes), 3600 (1 hour), and 86400 (1 day). For more information, see the **supported time granularity** section above.', 'type' => 'string', 'required' => false, 'example' => '300', 'title' => ''], ], [ 'name' => 'Fields', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The query metrics.', 'type' => 'array', 'items' => [ 'description' => 'The query metrics.', 'type' => 'object', 'properties' => [ 'FieldName' => ['description' => 'The metric name.'."\n" ."\n" .'>For more information about the available dimensions, see [Data analytics field description](~~2878520~~).', 'type' => 'string', 'required' => false, 'example' => 'Traffic', 'title' => ''], 'Dimension' => [ 'description' => 'The query dimension.', 'type' => 'array', 'items' => ['description' => 'The query dimension.'."\n" ."\n" .'>For more information about the available dimensions, see [Data analytics field description](~~2878520~~).', 'type' => 'string', 'required' => false, 'example' => 'ALL', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => true, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Data' => [ 'description' => 'The returned data.', 'type' => 'array', 'items' => [ 'description' => 'The returned data.', 'type' => 'object', 'properties' => [ 'FieldName' => ['description' => 'The metric name.', 'type' => 'string', 'example' => 'Traffic', 'title' => ''], 'DimensionName' => ['description' => 'The query dimension.', 'type' => 'string', 'example' => 'ALL', 'title' => ''], 'DimensionValue' => ['description' => 'The dimension value.', 'type' => 'string', 'example' => 'ALL', 'title' => ''], 'DetailData' => [ 'description' => 'The returned data.', 'type' => 'array', 'items' => [ 'description' => 'The returned data.', 'type' => 'object', 'properties' => [ 'TimeStamp' => ['description' => 'The start time of the time slice.', 'type' => 'string', 'example' => '2023-04-08T16:00:00Z', 'title' => ''], 'Value' => ['description' => 'The value.', 'type' => 'any', 'example' => '123', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'SummarizedData' => [ 'description' => 'The summarized data.', 'type' => 'array', 'items' => [ 'description' => 'The summarized data.', 'type' => 'object', 'properties' => [ 'FieldName' => ['description' => 'The summarized metric name.', 'type' => 'string', 'example' => 'Traffic', 'title' => ''], 'DimensionName' => ['description' => 'The summarized dimension name.', 'type' => 'string', 'example' => 'ALL', 'title' => ''], 'DimensionValue' => ['description' => 'The summarized dimension value.', 'type' => 'string', 'example' => 'ALL', 'title' => ''], 'AggMethod' => ['description' => 'The aggregation method.', 'type' => 'string', 'example' => 'sum', 'title' => ''], 'Value' => ['description' => 'The aggregated value.', 'type' => 'any', 'example' => '123456', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '93652946-2687-5428-8254-533B1E6A***', 'title' => ''], 'StartTime' => ['description' => 'The beginning of the time range to query.'."\n" ."\n" .'Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC+0.', 'type' => 'string', 'example' => '2023-04-08T16:00:00Z', 'title' => ''], 'EndTime' => ['description' => 'The end of the time range for the returned data.'."\n" ."\n" .'The time is in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is in UTC+0.', 'type' => 'string', 'example' => '2023-04-09T16:00:00Z', 'title' => ''], 'Interval' => ['description' => 'The data granularity. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '300', 'title' => ''], 'SamplingRate' => ['description' => 'The sampling rate. Unit: %.', 'type' => 'number', 'format' => 'float', 'example' => '100', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.TimeRange', 'errorMessage' => 'The specified time range exceeds the limit. Adjust it and try again.', 'description' => 'The specified time range exceeds the limit. Adjust it and try again.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Parameter verification failed. Check your configurations and try again.', 'description' => 'Parameter verification failed. Check your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.Function', 'errorMessage' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.', 'description' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.'], ['errorCode' => 'InvalidParameter.Field', 'errorMessage' => 'The specified Field is invalid.', 'description' => 'The specified Field is invalid. For more information, see OpenAPI Documentation .'], ['errorCode' => 'InvalidParameter.Dimension', 'errorMessage' => 'The specified Dimension is invalid.', 'description' => 'The specified Dimension is invalid. For more information, see OpenAPI Documentation .'."\n"], ['errorCode' => 'InvalidTime.Malformed', 'errorMessage' => 'Specified start time or end time is malformed.', 'description' => 'The specified time format is incorrect. The time must conform to the yyyy-MM-ddTHH:mm:ssZ format. Please enter it correctly and try again.'], ['errorCode' => 'TooManyDimensions', 'errorMessage' => 'Too many query dimensions specified. Delete some and try again.', 'description' => 'Too many query dimensions specified. Delete some and try again.'], ], ], 'title' => 'Query site WAF analysis time series data', 'summary' => 'Retrieves time series data for WAF event analysis of a website.', 'description' => '- If you do not specify StartTime and EndTime, this operation returns data from the past 24 hours. If you specify StartTime and EndTime, this operation returns data for the specified time range.'."\n" .'- The time granularity of the returned data varies based on the time span between StartTime and EndTime.'."\n" .' * Less than or equal to 3 hours: returns data at a 1-minute granularity.'."\n" .' * Greater than 3 hours and less than or equal to 12 hours: returns data at a 5-minute granularity.'."\n" .' * Greater than 12 hours and less than or equal to 1 day: returns data at a 15-minute granularity.'."\n" .' * Greater than 1 day and less than or equal to 10 days: returns data at an hourly granularity.'."\n" .' * Greater than 10 days and less than or equal to 31 days: returns data at a daily granularity.'."\n" .'- Because the number of access requests during the query period may be large, the data analytics results may undergo sampling.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"FieldName\\": \\"Traffic\\",\\n \\"DimensionName\\": \\"ALL\\",\\n \\"DimensionValue\\": \\"ALL\\",\\n \\"DetailData\\": [\\n {\\n \\"TimeStamp\\": \\"2023-04-08T16:00:00Z\\",\\n \\"Value\\": \\"123\\"\\n }\\n ]\\n }\\n ],\\n \\"SummarizedData\\": [\\n {\\n \\"FieldName\\": \\"Traffic\\",\\n \\"DimensionName\\": \\"ALL\\",\\n \\"DimensionValue\\": \\"ALL\\",\\n \\"AggMethod\\": \\"sum\\",\\n \\"Value\\": \\"123456\\"\\n }\\n ],\\n \\"RequestId\\": \\"93652946-2687-5428-8254-533B1E6A***\\",\\n \\"StartTime\\": \\"2023-04-08T16:00:00Z\\",\\n \\"EndTime\\": \\"2023-04-09T16:00:00Z\\",\\n \\"Interval\\": 300,\\n \\"SamplingRate\\": 100\\n}","type":"json"}]', ], 'DescribeSiteWafTopData' => [ 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '254966', 'abilityTreeNodes' => ['FEATUREdcdnVIK4DM', 'FEATUREdcdn2Z4HOI'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~ListSites~~) operation to obtain the site ID.'."\n" ."\n\n" .'If this parameter is left empty, user-level data is queried.', 'type' => 'string', 'required' => false, 'example' => '1150376036*****', 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The beginning of the time range to query.'."\n" ."\n" .'Specify the time in ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC+0.', 'type' => 'string', 'required' => false, 'example' => '2023-04-08T16:00:00Z', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end of the time range to query.'."\n" ."\n" .'Specify the time in ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC+0.'."\n" ."\n" .'> The end time must be later than the start time.', 'type' => 'string', 'required' => false, 'example' => '2023-04-09T16:00:00Z', 'title' => ''], ], [ 'name' => 'Interval', 'in' => 'query', 'schema' => ['description' => 'The time granularity for querying data. Unit: seconds.', 'type' => 'string', 'required' => false, 'example' => '300', 'title' => ''], ], [ 'name' => 'Fields', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The query metrics.', 'type' => 'array', 'items' => [ 'description' => 'The query metrics.', 'type' => 'object', 'properties' => [ 'FieldName' => ['description' => 'The query metric value.'."\n" ."\n" .'> For specific dimensions, see [Data analytics field description](~~2878520~~).', 'type' => 'string', 'required' => false, 'example' => 'Requests', 'title' => ''], 'Dimension' => [ 'description' => 'The query dimension.', 'type' => 'array', 'items' => ['description' => 'The query dimension.'."\n" ."\n" .'> For specific dimensions, see [Data analytics field description](~~2878520~~).', 'type' => 'string', 'required' => false, 'example' => 'ALL', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => true, 'title' => '', 'example' => '', ], ], [ 'name' => 'Limit', 'in' => 'query', 'schema' => [ 'description' => 'The number of top data entries to query.', 'enumValueTitles' => [5 => '5', 10 => '10', 150 => '150'], 'type' => 'string', 'default' => '300', 'enum' => ['5', '10', '15', '100', '150', '999', '300'], 'required' => false, 'example' => '5', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Data' => [ 'description' => 'The returned data.', 'type' => 'array', 'items' => [ 'description' => 'The returned data.', 'type' => 'object', 'properties' => [ 'FieldName' => ['description' => 'The query metric value.', 'type' => 'string', 'example' => 'Requests', 'title' => ''], 'DimensionName' => ['description' => 'The query dimension.', 'type' => 'string', 'example' => 'ALL', 'title' => ''], 'DetailData' => [ 'description' => 'The returned data.', 'type' => 'array', 'items' => [ 'description' => 'The returned data.', 'type' => 'object', 'properties' => [ 'DimensionValue' => ['description' => 'The query dimension value.', 'type' => 'string', 'example' => 'ALL', 'title' => ''], 'Value' => ['description' => 'The value.', 'type' => 'any', 'example' => '123', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '64041D4F-B615-5DEB-AC94-F01EE433****', 'title' => ''], 'StartTime' => ['description' => 'The beginning of the time range to query.'."\n" ."\n" .'Specify the time in ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC+0.', 'type' => 'string', 'example' => '2023-04-08T16:00:00Z', 'title' => ''], 'EndTime' => ['description' => 'The end of the time range for the returned data.'."\n" ."\n" .'The time is in ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is in UTC+0.', 'type' => 'string', 'example' => '2023-04-09T16:00:00Z', 'title' => ''], 'SamplingRate' => ['description' => 'The sampling rate. Unit: %.', 'type' => 'number', 'format' => 'float', 'example' => '100', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.TimeRange', 'errorMessage' => 'The specified time range exceeds the limit. Adjust it and try again.', 'description' => 'The specified time range exceeds the limit. Adjust it and try again.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Parameter verification failed. Check your configurations and try again.', 'description' => 'Parameter verification failed. Check your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.Function', 'errorMessage' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.', 'description' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.'], ['errorCode' => 'InvalidParameter.Field', 'errorMessage' => 'The specified Field is invalid.', 'description' => 'The specified Field is invalid. For more information, see OpenAPI Documentation .'], ['errorCode' => 'InvalidParameter.Dimension', 'errorMessage' => 'The specified Dimension is invalid.', 'description' => 'The specified Dimension is invalid. For more information, see OpenAPI Documentation .'."\n"], ['errorCode' => 'InvalidTime.Malformed', 'errorMessage' => 'Specified start time or end time is malformed.', 'description' => 'The specified time format is incorrect. The time must conform to the yyyy-MM-ddTHH:mm:ssZ format. Please enter it correctly and try again.'], ['errorCode' => 'TooManyDimensions', 'errorMessage' => 'Too many query dimensions specified. Delete some and try again.', 'description' => 'Too many query dimensions specified. Delete some and try again.'], ], ], 'title' => 'Query site WAF event analysis top data', 'summary' => 'Retrieves the top data from WAF event analysis for a website.', 'description' => '- If you do not specify StartTime or EndTime, this operation returns data from the past 24 hours. If you specify StartTime and EndTime, this operation returns data for the specified time range.'."\n" ."\n" .'- Because of the high volume of access requests during the query period, data analytics may involve sampling.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"FieldName\\": \\"Requests\\",\\n \\"DimensionName\\": \\"ALL\\",\\n \\"DetailData\\": [\\n {\\n \\"DimensionValue\\": \\"ALL\\",\\n \\"Value\\": \\"123\\"\\n }\\n ]\\n }\\n ],\\n \\"RequestId\\": \\"64041D4F-B615-5DEB-AC94-F01EE433****\\",\\n \\"StartTime\\": \\"2023-04-08T16:00:00Z\\",\\n \\"EndTime\\": \\"2023-04-09T16:00:00Z\\",\\n \\"SamplingRate\\": 100\\n}","type":"json"}]', ], 'DescribeTraceDiagnoseReport' => [ 'summary' => 'Retrieves the details of a diagnostic report. 1. Call GenerateTraceDiagnose to obtain a diagnostic link. 2. Open the link in a browser to complete client-side diagnostics. 3. Call ListTraceTasks to obtain the TaskId or TraceId. 4. Call this operation to retrieve the report.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '241915', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'TaskId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The diagnostic task ID. You must specify at least one of TraceId and TaskId. If neither is specified, the API returns an error.', 'type' => 'string', 'example' => 'xxxxxxxxx-x-x-xxxxxxxxxxxxxxx', 'required' => false], ], [ 'name' => 'TraceId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The diagnostic trace ID. You must specify at least one of TraceId and TaskId. If neither is specified, the API returns an error.', 'type' => 'string', 'example' => '0000xxxxxxxxxxxxxxxxxxxxxx75e', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74'], 'ClientAddr' => ['description' => 'The IP address of the local DNS server.', 'type' => 'string', 'example' => '47.xx.112.120', 'title' => ''], 'ClientInfo' => [ 'description' => 'The client information.', 'type' => 'object', 'properties' => [ 'BrowserInfo' => ['description' => 'The browser.', 'type' => 'string', 'example' => 'Chrome', 'title' => ''], 'Os' => ['description' => 'The operating system name.', 'type' => 'string', 'example' => 'Macintosh', 'title' => ''], 'UaString' => ['description' => 'The version.', 'type' => 'string', 'example' => 'Mozilla/5.0 (Macintosh Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36', 'title' => ''], ], 'title' => '', 'example' => '', ], 'ClientIp' => ['description' => 'The client IP address.', 'type' => 'string', 'example' => '33.7.98.136', 'title' => ''], 'CreateTime' => ['description' => 'The creation time. Format: yyyy-MM-dd HH:mm:ss. Time zone: UTC+8.', 'type' => 'string', 'example' => '2024-03-11T01:23:21Z'."\n", 'title' => ''], 'DiagnoseId' => ['description' => 'The diagnostic ID.', 'type' => 'string', 'example' => 'vpndgn-hn316ixao7ut50ybl5qui', 'title' => ''], 'DiagnoseReportLink' => ['description' => 'The diagnostic report link.', 'type' => 'string', 'example' => 'https://cdnskyeye.alibaba-inc.com/#/databrain/detectionPlatformAction?module=trace&id=xxx&instance_id=xxxx&type=copy&edition_id=xxxxx', 'title' => ''], 'DiagnoseUrl' => ['description' => 'The diagnostic link.', 'type' => 'string', 'example' => 'http://cdn.dns-detect.alicdn.com/diagnose/xxxxxx', 'title' => ''], 'Domain' => ['description' => 'The diagnosed domain name.', 'type' => 'string', 'example' => 'www.pecmnr.cn', 'title' => ''], 'ExpireTime' => ['description' => 'The expiration time. Unit: seconds. The value is a UNIX timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1678701915', 'title' => ''], 'RemainDiagnoseTimes' => ['description' => 'The remaining number of available diagnostic attempts.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''], 'Report' => [ 'description' => 'The diagnostic report details.', 'type' => 'object', 'properties' => [ 'ClientInfo' => ['description' => 'The client information.', 'type' => 'string', 'example' => 'Client IP : xxx.xxx.xxx.xxx DNS_IP : xxx.xxx.xxx.xxx ', 'title' => ''], 'DiagnoseResult' => ['description' => 'The diagnostic result.', 'type' => 'string', 'example' => 'Diagnosis Result: Normal Scheduling Result: Normal Check Item Details: Exception Item: [Request Normal]', 'title' => ''], 'ResponseHeader' => ['description' => 'The response header of the client request.', 'type' => 'string', 'example' => '
connection: keep-alive
content-type: application/json', 'title' => ''], 'StaticHtml' => ['description' => 'The static snapshot page.', 'type' => 'string', 'example' => 'https://cdn.dns-detect.alicdn.com/diagnose_v2#/snapshot?data=H4sIAAAAAAACA%2B1aeW%2FcxhX%2FKgSLFkm7pGbI4bWGUSiSEqmxZMG7Tow4hjAkh1pGFLkmuVorgYE4QeI0cc7eB3IgLpIWTdO4ORzXQb6MV5b%2F6lfomyG5u1xpbUW2mwSNpAWWM2%2FmHfPm935DzTNyHm6yLKebXbkpa0gzFWQo2Gkjp4nNpm6qBJtPyA052WLpVsj6cvMZ2Y%2BzeZYzLw%2BTmD%2Fn7FwOo%2BdXWjsfvT%2B4ehXEvSRKUmj7kaF5BFP5fEOOEo9GJ9OoDerGRt18%2BfOdZy%2FcfPcCQWRw%2FbmJ4UFAfBLw4Vm42YtoziaG73z43s4r7%2Bx89srux7%2B59fyHg5devN0kfrJJw3iFbjJoH3xxZXD54s57L8lVxxxL8zAIPVDDp66cSVmWRFtsrsO8jTHVS6tb5u4H7%2B%2B8%2FcbtVAq355I45vHaCvPtceNfemPw8js3X7t44%2Bo1jNCP%2F3P90u7Xb9969o87z34wPZTcD5bTMMr4VGF3KQ4S%2Fk1oWuLriJGpYqzqRMUazBDBgvFWW1MdDZoM1YTWsHu8y1Kai8lv%2Ff7rWxcvDV584eZXb4q%2B1TTZCmNPxOnS725c%2B%2Fvg6nOiYy7pxXkKXsg3rn40%2BNNXPHhxtmeqG9feLHqmTAQ9%2B8wEiZj3wNY87bGJ2MnN08%2FIvTQC8X6%2Fr54NadxnseolmyJGPijQEKpPAU89z2NZoUpu6g15k%2Fkwcr4H1ors1bHWkCkkN11nY60azOSXjzDZac2wVQcVP5qmG1oDBqq6U%2FzYBnKchm7bKi5lMHEQPnO%2BMW4yjcLt3t1bjG17H4uxY9Ytxoah6qU1yCIGMhvYtlRz3ECtoRFDtSq%2FHBtp%2BoTRZ8%2FevcGOsY%2FBGiYTBuuQm2VAHc0gDmlgh6j2WIzBcx0T1axJTRjs0tDv3b3NJrH2i7JorlltErBxLM4NaDHHTeQtBqqtxZnzZxqym4iUTkFzCvld2sLzLqTrcZKF2XKeLvngFnjSah0r90E75OCFLTCaZhkHrCQ%2BwbJelGeFaDeM1%2BcFPhTPi%2B32am2s6cA%2BzjhOENMAAZamSTonQgUY3JBzmq6zvNq3cyvFNDBCfC2R4otP4a%2FYsWneTmmcBSxtFWEFKR7mCjl7Rewq21oszld6m0UDTRld4NMu9uhDLJS59mxjIfbbo7KELcsB7MK2AX9j4VmFyar4FDYvZd2F0tx2ktOo8FfXYYtnSS%2F12FJ3yyz6AX9aUNFYKuAS8Y2rQv7psEvGnuzSoJbwch%2BTiG3oPM8Ekon4DLGsWwZQWLTCYHC8vt4TIWPd2oqVw4XgXCeMaW0VH07STZrnrPR0kVH%2Bja%2FqDFaxBEsmrSS59DBM4j%2BZPhnDWucQYuUY6Ms7TQnxxhbLlbkk2QhZU6Jefy33jmqB5WLNZaPwIqLbJrYZ1glyYKPZpuXqtmH5gYlp4Gg6CVwMAHKkS%2FPO0Zkji3nePR5H20eW6Tlldp0d1aFzUpvnx2sZ8%2B6zxnko2U2pDXtbwo60TLclzmWkgsVoRHpkuc3FYAkhrspsFCV95XgarodxU%2FppYTJPhqa00Jrlj4%2FRdLspzUI6d3NlIQYggXGiI6RNicWZ4lGvw3SsRhpLsGkq2DoNZbeBGvOrZxrTJewG%2F8CiKVizUWN5XNZyarIYNdB4N7FUL7aww7usPYrqvRibU5QQbSRngwLu1CmlFeZMmeP9SksgZVNaXmq1eOdsFCqtfhjkyiNR4tJIaQEsctbYlEYLWc4ixEb909bDqNajGrLAIagpJbAiEmBGF7CVSeTUKUlg07iksLHUztsX6HrEQr8pTU8uLsY%2FsHmAop6g%2FXHImANGVmGGB1WkjrI64E2a9HL2i6yCsM1zWW382NYX%2FKjq5ZBIBUUWGBV4nmlBiVM8x7AU4miB4riupvgAOQwh6um%2BXZqwmrK8BNQK7IeoLOgd0AyolZpmqhrHb2FgobVCuVIIQExXsSVQ7Fw%2BsgxEBGesgHAStnOvuzcOXhWpx4GHx16HuhzM%2BmGaM45J%2B6A%2Fx6j5pB9HCfVbXcYRDBXIthzGxczyhFjRiorGE2UmjNWmKjkeSvztUQUR0R%2B8%2BhoQTLkwlBc3XRS3c93qoFIVIMCOkfJ6sasyAQKwx5s4KwOY9ZIpQQ7L%2BgNbxqUurXxbaZVhRMZYpRrlnKgu9SXXdTyqIIV7L76w%2B9YfBq9f3r34t50r%2Fx5cula6c4J5LNxi%2FrCm5vuVTsRJEKx1m69%2BUX0K6Yp%2FDCM%2F2heFQD8FbDjBzvZg0j1BAU0ZMCRe4aoaBK094CUi67Hp6Lph246t2Zhgwh2O4fRVRjKA8tZL2Qla5W%2BxWnvTohU%2BXTNurGDK5TFhvjjj3LaUQ0Bd1t7ucm2h78mjiCzT3OsUs5WuFjkNTatAATcB9OOkAFBRYwVS8kqbJlG96yT4zktTnDeluU6abLIZwxI4KooJlJsZUXAWkyxv%2BjTrZF7SZSrojMNefwPAeQyveCoXrOLLS4MX%2Fjn4%2BJ3B1eeLAxSnJSLGvqEFPtKJQm3bVQgzdMUB%2Bqn4VIeou55p0IBnbRZNrB7nzYdknwY5NPu0ze8p%2BySGrh%2BCfRIL3z%2F2iUz8HWOf0%2Br0fgSUWo5j4FHFJpquEThpMwsR2zKohjUfiqbNCDVNm3iIBpDPcBQ8NAG9fxoPSEDr9BG4GBC%2BnmMoGAE3xHtJXU3AAF5nTON1GqmJOnXuiDEAi20QHQ6sxh41o17NQA3%2B2V8HRiM5POKOB6RwExT7rkkn%2BWak8wCHgBGZnJooU09YU08Mh6SeyLpX1NOAo5QeoEDxLYKgQECpcOzAVwLPtUzX1d0AW1Opp1GnnoS%2FP4SNTxzVwVO5p%2B4AhhFVQ5ZqobsmnzwSQ%2FK52OuwDk1y9p3mnqZl3nfuORnkO5BP0z4o9xQV6x5yT%2FID9zws97wHPHM%2F%2BvrNuOfgzeuDty7tfPbXm7%2F88tvnnpp2aOr5fX3vSbCDD8E8%2BXug%2B8c8%2BTuJOzPPReYK776Nd551rmVawI%2B82NI157RO9lCgiW6g%2BvtTIBOPyRl1kqVxGmWZhnXa1vcoqHXa2rS3c%2BZQikwQrG%2FAcO74ssxyDEenLhlbT8cghqaxKVx9%2BgCsa4hgz3Cp5wfUdhAUJNMknu8xIBfOoV8W30eNt%2BfqehXFA3PQg747vi3jPTiPns5fD0k1yb1imh6jrufbQDI94ijE1XyFEuIqvh5Yhm76xKZ0GtPkuD5GNOE0BNQGEAkbqkZuxzQdWwU2ajh3zTPJGM18okPj9adCupF8t19yGkj%2FXxDNsRjf6R2nflCaKcpTjWbuXPkXOHfzzxd%2BYJf%2FR%2Bzy%2BruDf3w%2BeP39e0Ytz9Tv%2BRT%2F8YdwPMbSMNgG8Kf8tkzW63aTNF9j4nJMQKOMS4Xra%2BVtn%2BHAoqnIqrmV2eWFpvRAnMTsQQiGBCmapH7WfDKWpPF%2Fy%2FBnYsFZWVeh8GtYm2jQUb0BO059imLE6NkCbfAzVDi0QezVwpWwu0VGNxyGbebQPY9xh891YVv4E41BIO4nsbW8QI3hVTAiIauJSFPD0s%2F49QXpZHtOrk1VH2IDq6mGoL1DqnsYcpyMTDnfkDtQrIeJOfjVq4Nrvx5c%2FvTG1%2B%2FtXPh497UvBq%2F%2FdnD5k91P%2FyIXouO0HbQfd58S16oKQ0xsq5q0mXGdPClLIMQqKRq5GDDMagsC0ogNbVSD8hGHHjWDjUlWXbVKuAfL1AvjPMk6MMRNk35WbCqxWzhUUC6TPB1GEZ0xVCQ9MBxwRFoCvhoB9fCk4y3plITRGjbWrAel2W43Yo8z99EwnzF0S9VN6YFHF9vLxxpSFG4w6RHmbSQPVlsSE1tF%2FFdq0YCmYTlE0GtOqBZi6kZ8qYucEGjSyhN%2Bp2WiK4mPhTEb5sQwHUpIIevijhzEK4w3%2BCsZQNecn9kgKjlAyklx%2FYYvTNacmdl378%2F8nEbhGid4PnN762t8prXQP1oAuWHZWEHw61gYeB0KGMYscC3MgNthD3m6ZzKNIvMnfCE4Cgtw%2BtYifP6%2Fq6Vk7DkpAAA%3D', 'title' => ''], ], 'title' => '', 'example' => '', ], 'State' => ['description' => 'The report generation status. Valid values:'."\n" ."\n" .'0: succeeded.'."\n" .'1: failed.'."\n" .'2: timed out.'."\n" .'3: running.'."\n" .'4: waiting.', 'type' => 'string', 'example' => 'ok', 'title' => ''], 'Status' => ['description' => 'The status of the diagnostic link. Valid values:'."\n" ."\n" .'1: active.'."\n" .'0: expired.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 'xxxxxxx-xxxxx-xxxxx-xxxxxxxxxxx', 'title' => ''], 'TimeConsuming' => ['description' => 'The time consumed to generate the report. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''], 'TraceDisplayLink' => ['description' => 'The trace display link.', 'type' => 'string', 'example' => 'https://tracing-sk.alibaba-inc.com/trace/xxxxxxxxxxxxxx', 'title' => ''], 'TraceId' => ['description' => 'The diagnostic trace ID.', 'type' => 'string', 'example' => '0000006xxxxxxxxxxxx533427e', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Retrieve diagnostic report details', 'description' => '>Make sure that you have activated the Layer 4 acceleration service before calling this operation.>1. Call GenerateTraceDiagnose to obtain a diagnostic link. 2. Open the link in a browser to complete client-side diagnostics. 3. Call ListTraceTasks to obtain the TaskId or TraceId. 4. Call this operation to retrieve the report.', 'extraInfo' => '1. Call GenerateTraceDiagnose to obtain a diagnostic link. 2. Open the link in a browser to complete client-side diagnostics. 3. Call ListTraceTasks to obtain the TaskId or TraceId. 4. Call this operation to retrieve the report.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:DescribeTraceDiagnoseReport', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\",\\n \\"ClientAddr\\": \\"47.xx.112.120\\",\\n \\"ClientInfo\\": {\\n \\"BrowserInfo\\": \\"Chrome\\",\\n \\"Os\\": \\"Macintosh\\",\\n \\"UaString\\": \\"Mozilla/5.0 (Macintosh Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36\\"\\n },\\n \\"ClientIp\\": \\"33.7.98.136\\",\\n \\"CreateTime\\": \\"2024-03-11T01:23:21Z\\\\n\\",\\n \\"DiagnoseId\\": \\"vpndgn-hn316ixao7ut50ybl5qui\\",\\n \\"DiagnoseReportLink\\": \\"https://cdnskyeye.alibaba-inc.com/#/databrain/detectionPlatformAction?module=trace&id=xxx&instance_id=xxxx&type=copy&edition_id=xxxxx\\",\\n \\"DiagnoseUrl\\": \\"http://cdn.dns-detect.alicdn.com/diagnose/xxxxxx\\",\\n \\"Domain\\": \\"www.pecmnr.cn\\",\\n \\"ExpireTime\\": 1678701915,\\n \\"RemainDiagnoseTimes\\": 10,\\n \\"Report\\": {\\n \\"ClientInfo\\": \\"Client IP : xxx.xxx.xxx.xxx DNS_IP : xxx.xxx.xxx.xxx \\",\\n \\"DiagnoseResult\\": \\"Diagnosis Result: Normal Scheduling Result: Normal Check Item Details: Exception Item: [Request Normal]\\",\\n \\"ResponseHeader\\": \\"
connection: keep-alive
content-type: application/json\\",\\n \\"StaticHtml\\": \\"https://cdn.dns-detect.alicdn.com/diagnose_v2#/snapshot?data=H4sIAAAAAAACA%2B1aeW%2FcxhX%2FKgSLFkm7pGbI4bWGUSiSEqmxZMG7Tow4hjAkh1pGFLkmuVorgYE4QeI0cc7eB3IgLpIWTdO4ORzXQb6MV5b%2F6lfomyG5u1xpbUW2mwSNpAWWM2%2FmHfPm935DzTNyHm6yLKebXbkpa0gzFWQo2Gkjp4nNpm6qBJtPyA052WLpVsj6cvMZ2Y%2BzeZYzLw%2BTmD%2Fn7FwOo%2BdXWjsfvT%2B4ehXEvSRKUmj7kaF5BFP5fEOOEo9GJ9OoDerGRt18%2BfOdZy%2FcfPcCQWRw%2FbmJ4UFAfBLw4Vm42YtoziaG73z43s4r7%2Bx89srux7%2B59fyHg5devN0kfrJJw3iFbjJoH3xxZXD54s57L8lVxxxL8zAIPVDDp66cSVmWRFtsrsO8jTHVS6tb5u4H7%2B%2B8%2FcbtVAq355I45vHaCvPtceNfemPw8js3X7t44%2Bo1jNCP%2F3P90u7Xb9969o87z34wPZTcD5bTMMr4VGF3KQ4S%2Fk1oWuLriJGpYqzqRMUazBDBgvFWW1MdDZoM1YTWsHu8y1Kai8lv%2Ff7rWxcvDV584eZXb4q%2B1TTZCmNPxOnS725c%2B%2Fvg6nOiYy7pxXkKXsg3rn40%2BNNXPHhxtmeqG9feLHqmTAQ9%2B8wEiZj3wNY87bGJ2MnN08%2FIvTQC8X6%2Fr54NadxnseolmyJGPijQEKpPAU89z2NZoUpu6g15k%2Fkwcr4H1ors1bHWkCkkN11nY60azOSXjzDZac2wVQcVP5qmG1oDBqq6U%2FzYBnKchm7bKi5lMHEQPnO%2BMW4yjcLt3t1bjG17H4uxY9Ytxoah6qU1yCIGMhvYtlRz3ECtoRFDtSq%2FHBtp%2BoTRZ8%2FevcGOsY%2FBGiYTBuuQm2VAHc0gDmlgh6j2WIzBcx0T1axJTRjs0tDv3b3NJrH2i7JorlltErBxLM4NaDHHTeQtBqqtxZnzZxqym4iUTkFzCvld2sLzLqTrcZKF2XKeLvngFnjSah0r90E75OCFLTCaZhkHrCQ%2BwbJelGeFaDeM1%2BcFPhTPi%2B32am2s6cA%2BzjhOENMAAZamSTonQgUY3JBzmq6zvNq3cyvFNDBCfC2R4otP4a%2FYsWneTmmcBSxtFWEFKR7mCjl7Rewq21oszld6m0UDTRld4NMu9uhDLJS59mxjIfbbo7KELcsB7MK2AX9j4VmFyar4FDYvZd2F0tx2ktOo8FfXYYtnSS%2F12FJ3yyz6AX9aUNFYKuAS8Y2rQv7psEvGnuzSoJbwch%2BTiG3oPM8Ekon4DLGsWwZQWLTCYHC8vt4TIWPd2oqVw4XgXCeMaW0VH07STZrnrPR0kVH%2Bja%2FqDFaxBEsmrSS59DBM4j%2BZPhnDWucQYuUY6Ms7TQnxxhbLlbkk2QhZU6Jefy33jmqB5WLNZaPwIqLbJrYZ1glyYKPZpuXqtmH5gYlp4Gg6CVwMAHKkS%2FPO0Zkji3nePR5H20eW6Tlldp0d1aFzUpvnx2sZ8%2B6zxnko2U2pDXtbwo60TLclzmWkgsVoRHpkuc3FYAkhrspsFCV95XgarodxU%2FppYTJPhqa00Jrlj4%2FRdLspzUI6d3NlIQYggXGiI6RNicWZ4lGvw3SsRhpLsGkq2DoNZbeBGvOrZxrTJewG%2F8CiKVizUWN5XNZyarIYNdB4N7FUL7aww7usPYrqvRibU5QQbSRngwLu1CmlFeZMmeP9SksgZVNaXmq1eOdsFCqtfhjkyiNR4tJIaQEsctbYlEYLWc4ixEb909bDqNajGrLAIagpJbAiEmBGF7CVSeTUKUlg07iksLHUztsX6HrEQr8pTU8uLsY%2FsHmAop6g%2FXHImANGVmGGB1WkjrI64E2a9HL2i6yCsM1zWW382NYX%2FKjq5ZBIBUUWGBV4nmlBiVM8x7AU4miB4riupvgAOQwh6um%2BXZqwmrK8BNQK7IeoLOgd0AyolZpmqhrHb2FgobVCuVIIQExXsSVQ7Fw%2BsgxEBGesgHAStnOvuzcOXhWpx4GHx16HuhzM%2BmGaM45J%2B6A%2Fx6j5pB9HCfVbXcYRDBXIthzGxczyhFjRiorGE2UmjNWmKjkeSvztUQUR0R%2B8%2BhoQTLkwlBc3XRS3c93qoFIVIMCOkfJ6sasyAQKwx5s4KwOY9ZIpQQ7L%2BgNbxqUurXxbaZVhRMZYpRrlnKgu9SXXdTyqIIV7L76w%2B9YfBq9f3r34t50r%2Fx5cula6c4J5LNxi%2FrCm5vuVTsRJEKx1m69%2BUX0K6Yp%2FDCM%2F2heFQD8FbDjBzvZg0j1BAU0ZMCRe4aoaBK094CUi67Hp6Lph246t2Zhgwh2O4fRVRjKA8tZL2Qla5W%2BxWnvTohU%2BXTNurGDK5TFhvjjj3LaUQ0Bd1t7ucm2h78mjiCzT3OsUs5WuFjkNTatAATcB9OOkAFBRYwVS8kqbJlG96yT4zktTnDeluU6abLIZwxI4KooJlJsZUXAWkyxv%2BjTrZF7SZSrojMNefwPAeQyveCoXrOLLS4MX%2Fjn4%2BJ3B1eeLAxSnJSLGvqEFPtKJQm3bVQgzdMUB%2Bqn4VIeou55p0IBnbRZNrB7nzYdknwY5NPu0ze8p%2BySGrh%2BCfRIL3z%2F2iUz8HWOf0%2Br0fgSUWo5j4FHFJpquEThpMwsR2zKohjUfiqbNCDVNm3iIBpDPcBQ8NAG9fxoPSEDr9BG4GBC%2BnmMoGAE3xHtJXU3AAF5nTON1GqmJOnXuiDEAi20QHQ6sxh41o17NQA3%2B2V8HRiM5POKOB6RwExT7rkkn%2BWak8wCHgBGZnJooU09YU08Mh6SeyLpX1NOAo5QeoEDxLYKgQECpcOzAVwLPtUzX1d0AW1Opp1GnnoS%2FP4SNTxzVwVO5p%2B4AhhFVQ5ZqobsmnzwSQ%2FK52OuwDk1y9p3mnqZl3nfuORnkO5BP0z4o9xQV6x5yT%2FID9zws97wHPHM%2F%2BvrNuOfgzeuDty7tfPbXm7%2F88tvnnpp2aOr5fX3vSbCDD8E8%2BXug%2B8c8%2BTuJOzPPReYK776Nd551rmVawI%2B82NI157RO9lCgiW6g%2BvtTIBOPyRl1kqVxGmWZhnXa1vcoqHXa2rS3c%2BZQikwQrG%2FAcO74ssxyDEenLhlbT8cghqaxKVx9%2BgCsa4hgz3Cp5wfUdhAUJNMknu8xIBfOoV8W30eNt%2BfqehXFA3PQg747vi3jPTiPns5fD0k1yb1imh6jrufbQDI94ijE1XyFEuIqvh5Yhm76xKZ0GtPkuD5GNOE0BNQGEAkbqkZuxzQdWwU2ajh3zTPJGM18okPj9adCupF8t19yGkj%2FXxDNsRjf6R2nflCaKcpTjWbuXPkXOHfzzxd%2BYJf%2FR%2Bzy%2BruDf3w%2BeP39e0Ytz9Tv%2BRT%2F8YdwPMbSMNgG8Kf8tkzW63aTNF9j4nJMQKOMS4Xra%2BVtn%2BHAoqnIqrmV2eWFpvRAnMTsQQiGBCmapH7WfDKWpPF%2Fy%2FBnYsFZWVeh8GtYm2jQUb0BO059imLE6NkCbfAzVDi0QezVwpWwu0VGNxyGbebQPY9xh891YVv4E41BIO4nsbW8QI3hVTAiIauJSFPD0s%2F49QXpZHtOrk1VH2IDq6mGoL1DqnsYcpyMTDnfkDtQrIeJOfjVq4Nrvx5c%2FvTG1%2B%2FtXPh497UvBq%2F%2FdnD5k91P%2FyIXouO0HbQfd58S16oKQ0xsq5q0mXGdPClLIMQqKRq5GDDMagsC0ogNbVSD8hGHHjWDjUlWXbVKuAfL1AvjPMk6MMRNk35WbCqxWzhUUC6TPB1GEZ0xVCQ9MBxwRFoCvhoB9fCk4y3plITRGjbWrAel2W43Yo8z99EwnzF0S9VN6YFHF9vLxxpSFG4w6RHmbSQPVlsSE1tF%2FFdq0YCmYTlE0GtOqBZi6kZ8qYucEGjSyhN%2Bp2WiK4mPhTEb5sQwHUpIIevijhzEK4w3%2BCsZQNecn9kgKjlAyklx%2FYYvTNacmdl378%2F8nEbhGid4PnN762t8prXQP1oAuWHZWEHw61gYeB0KGMYscC3MgNthD3m6ZzKNIvMnfCE4Cgtw%2BtYifP6%2Fq6Vk7DkpAAA%3D\\"\\n },\\n \\"State\\": \\"ok\\",\\n \\"Status\\": 1,\\n \\"TaskId\\": \\"xxxxxxx-xxxxx-xxxxx-xxxxxxxxxxx\\",\\n \\"TimeConsuming\\": 10,\\n \\"TraceDisplayLink\\": \\"https://tracing-sk.alibaba-inc.com/trace/xxxxxxxxxxxxxx\\",\\n \\"TraceId\\": \\"0000006xxxxxxxxxxxx533427e\\"\\n}","type":"json"}]', ], 'DescribeUrlObservationData' => [ 'summary' => 'Queries the page monitoring data.', 'description' => '', 'path' => '/', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '255157', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~ListSites~~) operation.'."\n", 'type' => 'string', 'required' => true, 'example' => '54362329990032', 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The beginning of the time range to query.'."\n" ."\n" .'The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", 'type' => 'string', 'required' => false, 'example' => '2023-04-08T16:00:00Z', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end of the time range to query.'."\n" ."\n" .'Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC. The time must be in UTC.'."\n", 'type' => 'string', 'required' => false, 'example' => '2023-04-19T15:59:59Z', 'title' => ''], ], [ 'name' => 'Url', 'in' => 'query', 'schema' => ['description' => 'The URL of the web page to monitor.'."\n", 'type' => 'string', 'required' => false, 'example' => 'example.com/test', 'title' => ''], ], [ 'name' => 'ClientPlatform', 'in' => 'query', 'schema' => [ 'description' => 'The platform of the device. If the parameter is left empty, all devices are queried.'."\n" ."\n" .'* PC'."\n" .'* Mobile'."\n", 'type' => 'string', 'required' => false, 'enum' => ['PC', 'Mobile'], 'example' => 'PC', 'title' => '', ], ], [ 'name' => 'Metric', 'in' => 'query', 'schema' => ['description' => 'The metric data that is detected.'."\n" ."\n" .'* TTFB: Measures the time between when a resource initiates a request and when the first byte of the response starts to arrive.'."\n" .'* FCP: Measures the time between when the page is loaded and when any part of the page\'s content is rendered on the screen.'."\n" .'* LCP: Reports the rendering time of the largest image or text block visible in the viewport.'."\n" .'* CLS: A metric that measures the maximum layout mutation score for every unexpected layout change that occurs throughout the life of the page.'."\n" .'* INP: Measures the responsiveness of the page, or how long it takes for the page to respond to user input in a visible way.'."\n" .'* FID: Measures the time between when the user first interacts with the page and when the browser is actually able to start processing the event handler in response to that interaction.'."\n", 'type' => 'string', 'required' => false, 'example' => 'TTFB', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'UrlDetailData' => [ 'description' => 'The objects that are returned.'."\n", 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Url' => ['description' => 'The URL of the web page to monitor.'."\n", 'type' => 'string', 'example' => 'example.com/test', 'title' => ''], 'ClientPlatform' => ['description' => 'The platform of the device.'."\n", 'type' => 'string', 'example' => 'PC', 'title' => ''], 'Country' => ['description' => 'The country or region to which the IP address belongs.'."\n", 'type' => 'string', 'example' => 'CN', 'title' => ''], 'TTFB' => ['description' => 'This metric measures the time between when a resource initiates a request and when the first byte of the response starts to arrive. Unit: ms.'."\n", 'type' => 'number', 'format' => 'float', 'example' => '123', 'title' => ''], 'FCP' => ['description' => 'Measures the time between when the page is loaded and when any part of the page\'s content is rendered on the screen. Unit: ms.'."\n", 'type' => 'number', 'format' => 'float', 'example' => '123', 'title' => ''], 'LCP' => ['description' => 'Reports the rendering time of the largest image or text block visible in the viewport. Unit: ms.'."\n", 'type' => 'number', 'format' => 'float', 'example' => '123', 'title' => ''], 'CLS' => ['description' => 'Measures the maximum layout mutation score for every unexpected layout change that occurs throughout the life of the page.'."\n", 'type' => 'number', 'format' => 'float', 'example' => '0.5', 'title' => ''], 'FID' => ['description' => 'Measures the time between when the user first interacts with the page and when the browser is actually able to start processing an event handler in response to that interaction. Unit: ms.'."\n", 'type' => 'number', 'format' => 'float', 'example' => '123', 'title' => ''], 'INP' => ['description' => 'Measures the responsiveness of the page, or how long it takes for the page to respond to user input visibly. Unit: ms.'."\n", 'type' => 'number', 'format' => 'float', 'example' => '123', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', 'title' => ''], 'StartTime' => ['description' => 'The create time. The time is in the yyyy-MM-ddTHH:mm:ssZ format.'."\n", 'type' => 'string', 'example' => '2022-11-06T16:00:00Z', 'title' => ''], 'EndTime' => ['description' => 'The end of the time range during which data was queried.'."\n" ."\n" .'Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC. The time must be in UTC.'."\n", 'type' => 'string', 'example' => '2023-04-19T15:59:59Z', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.TimeRange', 'errorMessage' => 'The specified time range exceeds the limit. Adjust it and try again.', 'description' => 'The specified time range exceeds the limit. Adjust it and try again.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Parameter verification failed. Check your configurations and try again.', 'description' => 'Parameter verification failed. Check your configurations and try again.'], ['errorCode' => 'InvalidTime.Malformed', 'errorMessage' => 'Specified start time or end time is malformed.', 'description' => 'The specified time format is incorrect. The time must conform to the yyyy-MM-ddTHH:mm:ssZ format. Please enter it correctly and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"UrlDetailData\\": [\\n {\\n \\"Url\\": \\"example.com/test\\",\\n \\"ClientPlatform\\": \\"PC\\",\\n \\"Country\\": \\"CN\\",\\n \\"TTFB\\": 123,\\n \\"FCP\\": 123,\\n \\"LCP\\": 123,\\n \\"CLS\\": 0.5,\\n \\"FID\\": 123,\\n \\"INP\\": 123\\n }\\n ],\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"StartTime\\": \\"2022-11-06T16:00:00Z\\",\\n \\"EndTime\\": \\"2023-04-19T15:59:59Z\\"\\n}","type":"json"}]', 'title' => 'DescribeUrlObservationData', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeUrlObservationData'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:DescribeUrlObservationData', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'DescribeWafUsageData' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238819', 'abilityTreeNodes' => ['FEATUREdcdnTC7IYO'], ], 'parameters' => [ [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The beginning of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC+0.', 'type' => 'string', 'example' => '2022-08-10T00:00:00Z', 'required' => false, 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC+0.'."\n" .'>The end time must be later than the start time.', 'type' => 'string', 'example' => '2022-08-10T23:59:59Z', 'required' => false, 'title' => ''], ], [ 'name' => 'SiteId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~ListSites~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'SplitBy', 'in' => 'query', 'schema' => [ 'description' => 'The grouping key. You can set this parameter to **domain**.'."\n" ."\n" .'- **domain**: groups the data by domain name.', 'type' => 'string', 'example' => 'domain', 'enum' => [], 'required' => false, 'title' => '', ], ], [ 'name' => 'Interval', 'in' => 'query', 'schema' => ['description' => 'The time granularity for the query data, in seconds.'."\n" ."\n" .'The valid values vary based on the time range specified by **StartTime** and **EndTime**:'."\n" ."\n" .'- Less than 3 days: **300**, **3600**, or **86400**. Default value: **300**.'."\n" ."\n" .'- 3 to 31 days (excluding 31 days): **3600** or **86400**. Default value: **3600**.'."\n" ."\n" .'- 31 days or more: **86400**. Default value: **86400**.', 'type' => 'string', 'required' => false, 'example' => '300', 'title' => ''], ], [ 'name' => 'RecordName', 'in' => 'query', 'schema' => ['description' => 'The domain record name. You can call the [ListSites](~~ListSites~~) operation to obtain the domain record name.', 'type' => 'string', 'required' => false, 'example' => 'test.example.com', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'EndTime' => ['description' => 'The end of the time range for the returned data. The time is in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is in UTC+0.', 'type' => 'string', 'example' => '2022-08-10T23:59:59Z', 'title' => ''], 'StartTime' => ['description' => 'The beginning of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC+0.', 'type' => 'string', 'example' => '2022-08-10T00:00:00Z', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C370DAF1-C838-4288-A1A0-9A87633D2***', 'title' => ''], 'UsageData' => [ 'description' => 'The returned data.', 'type' => 'array', 'items' => [ 'description' => 'The returned data.', 'type' => 'object', 'properties' => [ 'ObserveCount' => ['description' => 'The number of observed requests.', 'type' => 'integer', 'format' => 'int64', 'example' => '123', 'title' => ''], 'RecordName' => ['description' => 'The domain record name.', 'type' => 'string', 'example' => 'test.example.com', 'title' => ''], 'BlockCount' => ['description' => 'The number of blocked requests.', 'type' => 'integer', 'format' => 'int64', 'example' => '123', 'title' => ''], 'AccessCount' => ['description' => 'The number of requests with normal access.', 'type' => 'integer', 'format' => 'int64', 'example' => '123', 'title' => ''], 'TimeStamp' => ['description' => 'The beginning of the time interval.', 'type' => 'string', 'example' => '2022-08-10T00:00:00Z', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Parameter verification failed. Check your configurations and try again.', 'description' => 'Parameter verification failed. Check your configurations and try again.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ['errorCode' => 'QuotaCheckFailed.Function', 'errorMessage' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.', 'description' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.'], ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'InvalidParameter.TimeRange', 'errorMessage' => 'The specified time range exceeds the limit. Adjust it and try again.', 'description' => 'The specified time range exceeds the limit. Adjust it and try again.'], ['errorCode' => 'InvalidParameter.Field', 'errorMessage' => 'The specified Field is invalid.', 'description' => 'The specified Field is invalid. For more information, see OpenAPI Documentation .'], ['errorCode' => 'InvalidTime.Malformed', 'errorMessage' => 'Specified start time or end time is malformed.', 'description' => 'The specified time format is incorrect. The time must conform to the yyyy-MM-ddTHH:mm:ssZ format. Please enter it correctly and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Query WAF usage data', 'summary' => 'Queries the usage data of WAF by calling DescribeWafUsageData.', 'description' => '* Maximum storage duration: 93 days.'."\n" .'* Maximum query time range: 31 days.'."\n" .'* Default time range: 24 hours.'."\n" ."\n" .'All times are expressed in UTC+0.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"EndTime\\": \\"2022-08-10T23:59:59Z\\",\\n \\"StartTime\\": \\"2022-08-10T00:00:00Z\\",\\n \\"RequestId\\": \\"C370DAF1-C838-4288-A1A0-9A87633D2***\\",\\n \\"UsageData\\": [\\n {\\n \\"ObserveCount\\": 123,\\n \\"RecordName\\": \\"test.example.com\\",\\n \\"BlockCount\\": 123,\\n \\"AccessCount\\": 123,\\n \\"TimeStamp\\": \\"2022-08-10T00:00:00Z\\"\\n }\\n ]\\n}","type":"json"}]', ], 'DisableCustomScenePolicy' => [ 'summary' => 'Disables a scenario-specific policy.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239134', 'abilityTreeNodes' => ['FEATUREdcdnL8HX1L'], ], 'parameters' => [ [ 'name' => 'PolicyId', 'in' => 'query', 'schema' => ['description' => 'The policy ID, which can be obtained by calling the [DescribeCustomScenePolicies](~~2850508~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'minimum' => '1', 'example' => '100001', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '9732E117-8A37-49FD-A36F-ABBB87556CA7'], 'PolicyId' => ['description' => 'The ID of the disabled policy.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '100001', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'PolicyNotExist', 'errorMessage' => 'The policy does not exist.', 'description' => 'The policy does not exist. '], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9732E117-8A37-49FD-A36F-ABBB87556CA7\\",\\n \\"PolicyId\\": 100001\\n}","type":"json"}]', 'title' => 'DisableCustomScenePolicy', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DisableCustomScenePolicy'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:DisableCustomScenePolicy', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'EditSiteWafSettings' => [ 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239647', 'abilityTreeNodes' => ['FEATUREdcdn4VDL9A'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['title' => '站点ID', 'description' => 'Site ID, which can be obtained by calling the [ListSites](~~2850189~~) API.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'required' => false], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'Site version.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'Settings', 'in' => 'formData', 'style' => 'json', 'schema' => ['title' => '站点WAF配置', 'description' => 'WAF configuration information for the site, passed in JSON format.', '$ref' => '#/components/schemas/WafSiteSettings', 'required' => false, 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Response Schema', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ], 403 => [ ['errorCode' => '%s.NotSupport', 'errorMessage' => 'The specified resource type %s is not supported.', 'description' => 'The specified resource type is not supported. To use this type of resource, please contact us.'], ['errorCode' => '%s.OverQuota', 'errorMessage' => 'The quantity of %s exceeds the quota.', 'description' => 'The amount of this resource exceeds the quota. If you need to apply for more quota, please contact us.'], ['errorCode' => '%s.WrongValueMatched', 'errorMessage' => 'The value of specified parameter %s can not pass the matching check.', 'description' => 'The value of the specified parameter can not pass the matching check. If you determine that you need to use this parameter value, please contact us.'], ['errorCode' => 'Site.NotExist', 'errorMessage' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.', 'description' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Edit WAF Configuration for a Site', 'summary' => 'Edit WAF Configuration for a Site', 'changeSet' => [ ['createdAt' => '2024-12-19T09:09:37.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-25T07:02:51.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T08:22:13.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'EditSiteWafSettings'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:EditSiteWafSettings', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\"\\n}","type":"json"}]', ], 'EnableCustomScenePolicy' => [ 'summary' => 'Enables a scenario-specific policy.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238963', 'abilityTreeNodes' => ['FEATUREdcdnL8HX1L'], ], 'parameters' => [ [ 'name' => 'PolicyId', 'in' => 'query', 'schema' => ['description' => 'The policy ID, which can be obtained by calling the [DescribeCustomScenePolicies](~~2850508~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'minimum' => '1', 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '65C66B7B-671A-8297-9187-2R5477247B76'], 'PolicyId' => ['description' => 'The policy ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'PolicyNotExist', 'errorMessage' => 'The policy does not exist.', 'description' => 'The policy does not exist. '], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"65C66B7B-671A-8297-9187-2R5477247B76\\",\\n \\"PolicyId\\": 1\\n}","type":"json"}]', 'title' => 'EnableCustomScenePolicy', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'EnableCustomScenePolicy'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:EnableCustomScenePolicy', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'ExportRecords' => [ 'summary' => 'Exports all DNS records of a website domain as a TXT file.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239639', 'abilityTreeNodes' => ['FEATUREdcdnVFT29S'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID. You can call the [ListSites](~~2850189~~) operation to obtain the ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'C69B5894-D1BA-592C-95D0-DADBE7AEAC63'], 'Content' => ['description' => 'The exported DNS records.', 'type' => 'string', 'example' => ';; site:example.com.\\n;; Exported:2024-01-24 15:54:35\\n\\n;; A Records\\na1.example.com. 30 IN A 1.1.1.1 direct\\na2.example.com. 30 IN A 1.1.1.1 direct\\na3.example.com. 30 IN A 1.1.1.1 direct\\n', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'ExportRecords', 'changeSet' => [ ['createdAt' => '2024-09-18T08:22:08.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ExportRecords'], ], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C69B5894-D1BA-592C-95D0-DADBE7AEAC63\\",\\n \\"Content\\": \\";; site:example.com.\\\\\\\\n;; Exported:2024-01-24 15:54:35\\\\\\\\n\\\\\\\\n;; A Records\\\\\\\\na1.example.com. 30 IN A 1.1.1.1 direct\\\\\\\\na2.example.com. 30 IN A 1.1.1.1 direct\\\\\\\\na3.example.com. 30 IN A 1.1.1.1 direct\\\\\\\\n\\"\\n}","type":"json"}]', ], 'GenerateTraceDiagnose' => [ 'summary' => 'Generates a diagnosis link.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '241915', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'Url', 'in' => 'query', 'schema' => ['description' => 'The URL to diagnose.', 'type' => 'string', 'required' => true, 'example' => 'http://www.example.com/xxx.jpg', 'title' => ''], ], [ 'name' => 'Source', 'in' => 'query', 'schema' => ['description' => 'The source of the request.', 'type' => 'string', 'example' => 'ai', 'title' => '', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '64D28B53-5902-409B-94F6-FD46680144FE', 'title' => ''], 'Tip' => ['description' => 'A diagnostic message.', 'type' => 'string', 'example' => 'Origin IP x.x.x.x: Test URL returned HTTP 404 (non-2xx status).'."\n" .'Origin IP x.x.x.x: DNS A record does not point to an ESA service IP.', 'title' => ''], 'Url' => ['description' => 'The generated diagnostic link.', 'type' => 'string', 'example' => 'http://cdn.dns-detect.alicdn.com/diagnose_v2?id=5d97ac9b&token=WFji65gy2mGNM11bD929%2BCMoyI6mbk2deRR9hOC6INH%2FoYbccQZQcvEn4wc%2FDPHlTshxRSAa5HokX%2BabItBpJ0FdnteROssomXqgIdjHpM46L%2BbaIeweZfsWG6QnbXT5n7O5APMyc%2Fe8d1o9PwwB429Ccks1FU1AfjNZfvBcLeo%3D', 'title' => ''], ], 'title' => '', 'description' => 'Response schema', 'example' => '', ], ], ], 'errorCodes' => [], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'GenerateTraceDiagnose', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:GenerateTraceDiagnose', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"64D28B53-5902-409B-94F6-FD46680144FE\\",\\n \\"Tip\\": \\"Origin IP x.x.x.x: Test URL returned HTTP 404 (non-2xx status).\\\\nOrigin IP x.x.x.x: DNS A record does not point to an ESA service IP.\\",\\n \\"Url\\": \\"http://cdn.dns-detect.alicdn.com/diagnose_v2?id=5d97ac9b&token=WFji65gy2mGNM11bD929%2BCMoyI6mbk2deRR9hOC6INH%2FoYbccQZQcvEn4wc%2FDPHlTshxRSAa5HokX%2BabItBpJ0FdnteROssomXqgIdjHpM46L%2BbaIeweZfsWG6QnbXT5n7O5APMyc%2Fe8d1o9PwwB429Ccks1FU1AfjNZfvBcLeo%3D\\"\\n}","type":"json"}]', ], 'GetApiSchemaUsage' => [ 'summary' => 'Retrieves usage information for an API schema validation plan.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREdcdnOKX321'], 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can obtain this ID by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1159101787****', 'title' => ''], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The site version.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The data returned for the request.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '952ea16b-1f05-4a76-bb32-420282d8****'], 'InstanceId' => ['description' => 'The plan\'s instance ID.', 'type' => 'string', 'example' => 'esa-site-agknce3n****', 'title' => ''], 'InstanceUsage' => ['description' => 'The total count of API schema files uploaded to the plan instance.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'Usages' => [ 'description' => 'The usage details for each site.', 'type' => 'array', 'items' => [ 'description' => 'The usage details for an individual site.', 'type' => 'object', 'properties' => [ 'Usage' => ['description' => 'The number of API schema files uploaded for this site.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Id' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '40000449', 'title' => ''], 'Name' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'test', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.ApiShield.Quota', 'errorMessage' => 'This website does not have the permission to view API security features.', 'description' => 'This website does not have the permission to view API security features.'], ['errorCode' => 'SiteVersion.NotExist', 'errorMessage' => 'The specified version is invalid or version management is not enabled for your website.Make sure that you specify a valid version and version management is enabled. Then, try again.', 'description' => 'The specified version is invalid or version management is not enabled for your website.Make sure that you specify a valid version and version management is enabled. Then, try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'GetApiSchemaUsage', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetApiSchemaUsage'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetApiSchemaUsage', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"952ea16b-1f05-4a76-bb32-420282d8****\\",\\n \\"InstanceId\\": \\"esa-site-agknce3n****\\",\\n \\"InstanceUsage\\": 10,\\n \\"Usages\\": [\\n {\\n \\"Usage\\": 0,\\n \\"Id\\": 40000449,\\n \\"Name\\": \\"test\\"\\n }\\n ]\\n}","type":"json"}]', ], 'GetAutomaticFrequencyControlConfig' => [ 'summary' => 'Queries the automatic frequency control configuration for a site.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '253995', 'abilityTreeNodes' => ['FEATUREdcdnUTRW1O'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The ID of the site. Call the [ListSites](~~2850189~~) operation to obtain this ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version of the site. If versioning is enabled, use this parameter to specify the site version. The default value is 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'], 'Enable' => [ 'description' => 'Indicates whether automatic frequency control is enabled. Valid values:'."\n" ."\n" .'- **on**: Enabled.'."\n" ."\n" .'- **off**: Disabled.', 'enumValueTitles' => ['off' => 'off', 'on' => 'on'], 'type' => 'string', 'example' => 'on', 'title' => '', ], 'Level' => [ 'description' => 'The protection level. Valid values:'."\n" ."\n" .'- **loose**: Loose.'."\n" ."\n" .'- **normal**: Normal.'."\n" ."\n" .'- **strict**: Strict.', 'enumValueTitles' => ['normal' => 'normal', 'loose' => 'loose', 'strict' => 'strict'], 'type' => 'string', 'example' => 'normal', 'title' => '', ], 'ActionType' => [ 'description' => 'The action to perform. Valid values:'."\n" ."\n" .'- **observe**: Monitors requests.'."\n" ."\n" .'- **deny**: Denies requests.'."\n" ."\n" .'- **js**: Issues a JavaScript challenge.', 'enumValueTitles' => ['deny' => 'deny', 'js' => 'js', 'observe' => 'observe'], 'type' => 'string', 'example' => 'js', 'title' => '', ], 'RuleId' => ['description' => 'The rule ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '11957665', 'title' => ''], 'Threshold' => ['description' => 'The threshold that triggers the action.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], 'Interval' => ['description' => 'The statistics collection interval.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'PunishTime' => ['description' => 'The duration of the penalty, in seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '20000000', 'title' => ''], ], 'title' => '', 'description' => 'The response body.', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'GetAutomaticFrequencyControlConfig', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:GetAutomaticFrequencyControlConfig', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\",\\n \\"Enable\\": \\"on\\",\\n \\"Level\\": \\"normal\\",\\n \\"ActionType\\": \\"js\\",\\n \\"RuleId\\": 11957665,\\n \\"Threshold\\": 100,\\n \\"Interval\\": 10,\\n \\"PunishTime\\": 20000000\\n}","type":"json"}]', ], 'GetCacheReserveSpecification' => [ 'summary' => 'Queries the available specifications of cache reserve instances.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239117', 'abilityTreeNodes' => ['FEATUREdcdn51XOHW'], ], 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Details of the request response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F'."\n"], 'CacheReserveRegion' => [ 'description' => 'List of cache retention region specifications.', 'type' => 'array', 'items' => ['description' => 'Details of the region.', 'type' => 'string', 'example' => 'HK', 'title' => ''], 'title' => '', 'example' => '', ], 'CacheReserveCapacity' => [ 'description' => 'List of cache retention capacity specifications.', 'type' => 'array', 'items' => ['description' => 'Details of the capacity specification. Unit: GB.', 'type' => 'string', 'example' => '512000', 'title' => ''], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\\\n\\",\\n \\"CacheReserveRegion\\": [\\n \\"HK\\"\\n ],\\n \\"CacheReserveCapacity\\": [\\n \\"512000\\"\\n ]\\n}","type":"json"}]', 'title' => 'GetCacheReserveSpecification', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetCacheReserveSpecification'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetCacheReserveSpecification', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'GetCacheRule' => [ 'summary' => 'Retrieves a single cache configuration.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257574', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. Call the [ListSites](~~2850189~~) operation to obtain this ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID. Call the [ListCacheRules](~~2866985~~) operation to obtain this ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '352816096987136', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The schema of the response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '352816096987136', 'title' => ''], 'ConfigType' => ['description' => 'Indicates whether the response contains a global or a rule configuration. Valid values:'."\n" ."\n" .'- `global`: A global configuration.'."\n" ."\n" .'- `rule`: A rule configuration.', 'type' => 'string', 'example' => 'global', 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the site configuration. For sites with version management enabled, this indicates the configuration version. The default is 0.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Sequence' => ['description' => 'The rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RuleEnable' => ['description' => 'Specifies whether the rule is enabled. This parameter applies only to rule configurations. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'The rule content, which is a conditional expression used to match user requests. This parameter applies only to rule configurations.'."\n" ."\n" .'- To match all incoming requests, use `true`.'."\n" ."\n" .'- To match specific requests, use a custom expression, such as `(http.host eq "video.example.com")`.', 'type' => 'string', 'example' => '(http.host eq \\"video.example.com\\")'."\n", 'title' => ''], 'RuleName' => ['description' => 'The name of the rule. This parameter applies only to rule configurations.', 'type' => 'string', 'example' => 'rule_example'."\n", 'title' => ''], 'BypassCache' => ['description' => 'Specifies whether to cache requests or bypass the cache. Valid values:'."\n" ."\n" .'- `cache_all`: Caches all requests.'."\n" ."\n" .'- `bypass_all`: Bypasses the cache for all requests.', 'type' => 'string', 'example' => 'cache_all', 'title' => ''], 'BrowserCacheMode' => ['description' => 'The browser cache mode. Valid values:'."\n" ."\n" .'- `no_cache`: Does not cache content.'."\n" ."\n" .'- `follow_origin`: Follows the origin cache policy.'."\n" ."\n" .'- `override_origin`: Overrides the origin cache policy.', 'type' => 'string', 'example' => 'follow_origin', 'title' => ''], 'BrowserCacheTtl' => ['description' => 'The browser cache TTL, in seconds.', 'type' => 'string', 'example' => '300', 'title' => ''], 'EdgeCacheMode' => ['description' => 'The edge cache mode. Valid values:'."\n" ."\n" .'- `follow_origin`: Uses the origin server\'s cache policy. If none is provided, the default policy applies.'."\n" ."\n" .'- `no_cache`: Does not cache content.'."\n" ."\n" .'- `override_origin`: Overrides the origin cache policy.'."\n" ."\n" .'- `follow_origin_bypass`: Uses the origin server\'s cache policy. If none is provided, content is not cached.'."\n" ."\n" .'- `follow_origin_override`: Uses the origin server\'s cache policy. If none is provided, a custom cache TTL applies.', 'type' => 'string', 'example' => 'follow_origin', 'title' => ''], 'EdgeCacheTtl' => ['description' => 'The edge cache TTL, in seconds.', 'type' => 'string', 'example' => '300', 'title' => ''], 'EdgeStatusCodeCacheTtl' => ['description' => 'The status code cache TTL, in seconds.'."\n" ."\n" .'- Set the cache TTL for a specific status code. For example, `404=10` specifies that responses with a 404 status code are cached for 10 seconds.'."\n" ."\n" .'- Set the cache TTL for status code classes, such as 4xx and 5xx. For example, `4xx=10` specifies that all responses with a 4xx status code are cached for 10 seconds.'."\n" ."\n" .'- Separate multiple entries with commas.', 'type' => 'string', 'example' => '5xx=0,404=10', 'title' => ''], 'SortQueryStringForCache' => ['description' => 'Specifies whether to sort query strings before generating the cache key. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'QueryStringMode' => ['description' => 'The mode for handling query strings when generating a cache key. Valid values:'."\n" ."\n" .'- `ignore_all`: Ignores all query strings.'."\n" ."\n" .'- `exclude_query_string`: Excludes specified query strings.'."\n" ."\n" .'- `reserve_all`: Retains all query strings. This is the default value.'."\n" ."\n" .'- `include_query_string`: Includes specified query strings.', 'type' => 'string', 'example' => 'reserve_all', 'title' => ''], 'QueryString' => ['description' => 'Specifies the query strings to include in or exclude from the cache key. Separate multiple query strings with spaces.', 'type' => 'string', 'example' => 'example', 'title' => ''], 'IncludeHeader' => ['description' => 'Specifies the headers to include in the cache key. Both the header names (case-insensitive) and their values are added to the key. Separate multiple header names with spaces. Header names can contain the following characters:'."\n" ."\n" .'- Symbols: ! # $ % & \' \\* + - . ^ \\_ | \\~'."\n" ."\n" .'- Digits: 0-9'."\n" ."\n" .'- Letters: lowercase English letters a-z', 'type' => 'string', 'example' => 'headername1 headername2', 'title' => ''], 'IncludeCookie' => ['description' => 'Specifies the cookies to include in the cache key. Both the cookie names (case-insensitive) and their values are added to the key. Separate multiple cookie names with spaces. Cookie names can contain the following characters:'."\n" ."\n" .'- Symbols: ! # $ % & \' \\* + - . ^ \\_ | \\~'."\n" ."\n" .'- Digits: 0-9'."\n" ."\n" .'- Letters: lowercase English letters a-z', 'type' => 'string', 'example' => 'cookiename1 cookiename2', 'title' => ''], 'CacheReserveEligibility' => ['description' => 'The eligibility for cache reserve. This controls whether a request bypasses the cache reserve node during an origin fetch. Valid values:'."\n" ."\n" .'- `bypass_cache_reserve`: The request bypasses the cache reserve.'."\n" ."\n" .'- `eligible_for_cache_reserve`: The request is eligible for cache reserve.', 'type' => 'string', 'example' => 'bypass_cache_reserve', 'title' => ''], 'CheckPresenceHeader' => ['description' => 'Specifies headers whose presence is checked when generating a cache key. If a specified header exists in the request, its name (case-insensitive) is added to the cache key. Separate multiple header names with spaces. Header names can contain the following characters:'."\n" ."\n" .'- Symbols: ! # $ % & \' \\* + - . ^ \\_ | \\~'."\n" ."\n" .'- Digits: 0-9'."\n" ."\n" .'- Letters: lowercase English letters a-z', 'type' => 'string', 'example' => 'headername1 headername2', 'title' => ''], 'CheckPresenceCookie' => ['description' => 'Specifies cookies whose presence is checked when generating a cache key. If a specified cookie exists in the request, its name (case-insensitive) is added to the cache key. Separate multiple cookie names with spaces. Cookie names can contain the following characters:'."\n" ."\n" .'- Symbols: ! # $ % & \' \\* + - . ^ \\_ | \\~'."\n" ."\n" .'- Digits: 0-9'."\n" ."\n" .'- Letters: lowercase English letters a-z', 'type' => 'string', 'example' => 'cookiename1 cookiename2', 'title' => ''], 'UserDeviceType' => ['description' => 'Specifies whether to include the client\'s device type in the cache key. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'UserGeo' => ['description' => 'Specifies whether to include the client\'s geographic location in the cache key. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'UserLanguage' => ['description' => 'Specifies whether to include the client\'s language in the cache key. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'ServeStale' => ['description' => 'Specifies whether to serve stale content. If enabled, edge nodes serve stale (expired) content from the cache when the origin server is unavailable. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'AdditionalCacheablePorts' => ['description' => '- Additional ports on which caching is enabled.'."\n" ."\n" .'- Valid values: `8880`, `2052`, `2082`, `2086`, `2095`, `2053`, `2083`, `2087`, `2096`.'."\n" ."\n" .'- Separate multiple ports with commas.', 'type' => 'string', 'example' => '8880,2052,2086', 'title' => ''], 'CacheDeceptionArmor' => ['description' => 'Specifies whether to enable Cache Deception Armor. This feature helps mitigate web cache deception attacks by ensuring that only validated content is cached. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'PostCache' => ['title' => 'Toggle for the Post cache feature.', 'description' => 'Specifies whether to enable the POST cache feature.', 'type' => 'string', 'example' => 'on'], 'PostBodyCacheKey' => ['title' => 'Processing pattern for the cache key.', 'description' => 'The mode for handling the body content when generating a cache key for POST requests. Valid values:'."\n" ."\n" .'- `md5`: Calculates the MD5 hash of the body content and adds the hash to the cache key.'."\n" ."\n" .'- `ignore`: Ignores the body content in the cache key.', 'type' => 'string', 'example' => 'ignore'], 'PostBodySizeLimit' => ['description' => 'The size limit (in KB) of the body content for POST caching. The value is an integer from 1 to 8. A null or empty value defaults to 8 KB.', 'type' => 'string', 'example' => '1', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"ConfigId\\": 352816096987136,\\n \\"ConfigType\\": \\"global\\",\\n \\"SiteVersion\\": 1,\\n \\"Sequence\\": 1,\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\\\\\\\\\"video.example.com\\\\\\\\\\\\\\")\\\\n\\",\\n \\"RuleName\\": \\"rule_example\\\\n\\",\\n \\"BypassCache\\": \\"cache_all\\",\\n \\"BrowserCacheMode\\": \\"follow_origin\\",\\n \\"BrowserCacheTtl\\": \\"300\\",\\n \\"EdgeCacheMode\\": \\"follow_origin\\",\\n \\"EdgeCacheTtl\\": \\"300\\",\\n \\"EdgeStatusCodeCacheTtl\\": \\"5xx=0,404=10\\",\\n \\"SortQueryStringForCache\\": \\"on\\",\\n \\"QueryStringMode\\": \\"reserve_all\\",\\n \\"QueryString\\": \\"example\\",\\n \\"IncludeHeader\\": \\"headername1 headername2\\",\\n \\"IncludeCookie\\": \\"cookiename1 cookiename2\\",\\n \\"CacheReserveEligibility\\": \\"bypass_cache_reserve\\",\\n \\"CheckPresenceHeader\\": \\"headername1 headername2\\",\\n \\"CheckPresenceCookie\\": \\"cookiename1 cookiename2\\",\\n \\"UserDeviceType\\": \\"on\\",\\n \\"UserGeo\\": \\"on\\",\\n \\"UserLanguage\\": \\"on\\",\\n \\"ServeStale\\": \\"on\\",\\n \\"AdditionalCacheablePorts\\": \\"8880,2052,2086\\",\\n \\"CacheDeceptionArmor\\": \\"on\\",\\n \\"PostCache\\": \\"on\\",\\n \\"PostBodyCacheKey\\": \\"ignore\\",\\n \\"PostBodySizeLimit\\": \\"1\\"\\n}","type":"json"}]', 'title' => 'Query Site Cache Configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetCacheRule'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetCacheRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'GetCacheTag' => [ 'summary' => 'Query Site Cache Tag Configuration', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257339', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID, which can be obtained by calling the [ListSites](~~2850189~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'Version number of the site.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => '156A6B-677B1A-4297B7-9187B7-2B44792'], 'CaseInsensitive' => [ 'description' => 'Whether to ignore case. Possible values:'."\n" .'- on: Enabled, ignores case.'."\n" .'- off: Disabled, does not ignore case.', 'type' => 'string', 'enumValueTitles' => ['off' => 'off', 'on' => 'on'], 'example' => 'on', 'title' => '', ], 'TagName' => ['description' => 'Custom CacheTag name.', 'type' => 'string', 'example' => 'example', 'title' => ''], 'SiteVersion' => ['description' => 'Version number of the site.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"156A6B-677B1A-4297B7-9187B7-2B44792\\",\\n \\"CaseInsensitive\\": \\"on\\",\\n \\"TagName\\": \\"example\\",\\n \\"SiteVersion\\": 1\\n}","type":"json"}]', 'title' => 'Query Site Cache Tag Configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetCacheTag'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetCacheTag', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'read', ], 'GetCertificate' => [ 'summary' => 'Retrieves information about a specified certificate for a site.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239130', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~ListSites~~) operation to query the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The certificate ID.', 'type' => 'string', 'required' => true, 'example' => 'babaded901474b9693acf530e0fb1d95', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com ', 'title' => ''], 'Status' => ['description' => 'The certificate status.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'Certificate' => ['description' => 'The certificate content.', 'type' => 'string', 'example' => '-----BEGIN CERTIFICATE-----', 'title' => ''], 'Result' => [ 'description' => 'The certificate information.', 'type' => 'object', 'properties' => [ 'CasId' => ['description' => 'The cloud certificate ID.', 'type' => 'string', 'example' => '30000478', 'title' => ''], 'Id' => ['description' => 'The certificate ID.', 'type' => 'string', 'example' => 'babaded901474b9693acf530e0fb1d95', 'title' => ''], 'Name' => ['description' => 'The certificate name.', 'type' => 'string', 'example' => 'yourCertName', 'title' => ''], 'Region' => ['description' => 'The region.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'Status' => ['description' => 'The certificate status.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'Type' => [ 'description' => 'The certificate type.', 'enumValueTitles' => ['cas' => 'SSL Certificates Service certificate.', 'upload' => 'custom uploaded certificate.', 'keyless' => 'Keyless certificate.', 'free' => 'free certificate.'], 'type' => 'string', 'example' => 'free', 'title' => '', ], 'CommonName' => ['description' => 'The Common Name (CN) field of the certificate.', 'type' => 'string', 'example' => 'www.example.com', 'title' => ''], 'NotBefore' => ['description' => 'The start time of the certificate validity period. The time is in the YYYY-MM-DD HH:MM:SS format in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2026-07-01 06:26:47', 'title' => ''], 'NotAfter' => ['description' => 'The end time of the certificate validity period. The time is in the YYYY-MM-DD HH:MM:SS format in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2026-09-29 06:26:46', 'title' => ''], 'Issuer' => ['description' => 'The certificate issuer.', 'type' => 'string', 'example' => 'DigiCert', 'title' => ''], 'IssuerCN' => ['description' => 'The certification authority.', 'type' => 'string', 'example' => 'DigiCert Global Root CA', 'title' => ''], 'SAN' => ['description' => 'The Subject Alternative Name (SAN) of the certificate.', 'type' => 'string', 'example' => 'www.example.com,*.example.com', 'title' => ''], 'SigAlg' => ['description' => 'The signature algorithm of the certificate.', 'type' => 'string', 'example' => 'ECDSA-SHA1', 'title' => ''], 'PubAlg' => ['description' => 'The public key algorithm of the certificate.', 'type' => 'string', 'example' => 'ECDSA', 'title' => ''], 'CreateTime' => ['description' => 'The creation time. The time is in the YYYY-MM-DD HH:MM:SS format in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2026-07-01 07:25:23', 'title' => ''], 'UpdateTime' => ['description' => 'The update time. The time is in the YYYY-MM-DD HH:MM:SS format in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2026-07-01 07:25:23', 'title' => ''], 'SerialNumber' => ['description' => 'The certificate serial number.', 'type' => 'string', 'example' => 'babaded901474b9693acf530e0fb1daa', 'title' => ''], 'FingerprintSha256' => ['description' => 'The SHA-256 fingerprint of the certificate.', 'type' => 'string', 'example' => '1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456aca66', 'title' => ''], 'DCV' => [ 'description' => 'The Domain Control Validation (DCV) information.', 'type' => 'array', 'items' => [ 'description' => 'The Domain Control Validation (DCV) information.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'DCV ID。', 'type' => 'string', 'example' => 'bababf7cdd1546a2ad04c0def1f4c980', 'title' => ''], 'Type' => [ 'description' => 'The DCV type. Valid values: DNS and HTTP.', 'enumValueTitles' => ['DNS' => 'DNS', 'HTTP' => 'HTTP'], 'type' => 'string', 'example' => 'HTTP', 'title' => '', ], 'Key' => ['description' => 'The DCV name. For the DNS type, this is the TXT record name. For the HTTP type, this is the URL.', 'type' => 'string', 'example' => 'http://www.example.com/.well-known/acme-challenge/pH20CqwS5L3ZnvkhI436DCzadKFuG7QcUcvB_4KsAow', 'title' => ''], 'Value' => ['description' => 'The DCV content.', 'type' => 'string', 'example' => 'pH20CqwS5L3ZnvkhI436DCzadKFuG7QcUcvB_4KsAow.KfzYo4LH3EgOt7a73G-RqZkbR0eYtLfEUmtmqGmr4FQ', 'title' => ''], 'Status' => ['description' => 'The validation status.', 'type' => 'string', 'example' => 'pending', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'ApplyCode' => ['description' => 'The error code of the certificate application.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''], 'ApplyMessage' => ['description' => 'The error message of the certificate application.', 'type' => 'string', 'example' => 'canceled', 'title' => ''], 'KeyServerId' => ['description' => 'The Keyless server ID. This parameter is valid only when Type is set to keyless.', 'type' => 'string', 'example' => 'baba39055622c008b90285a8838e****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Id.MissingParameter', 'errorMessage' => 'The parameter Id is required.', 'description' => 'The required parameter Id is missing.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'Certificate.NotFound', 'errorMessage' => 'The specified certificate does not exist.', 'description' => 'The specified certificate does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SiteId\\": 1234567890123,\\n \\"SiteName\\": \\"example.com \\",\\n \\"Status\\": \\"OK\\",\\n \\"Certificate\\": \\"-----BEGIN CERTIFICATE-----\\",\\n \\"Result\\": {\\n \\"CasId\\": \\"30000478\\",\\n \\"Id\\": \\"babaded901474b9693acf530e0fb1d95\\",\\n \\"Name\\": \\"yourCertName\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"Status\\": \\"OK\\",\\n \\"Type\\": \\"free\\",\\n \\"CommonName\\": \\"www.example.com\\",\\n \\"NotBefore\\": \\"2026-07-01 06:26:47\\",\\n \\"NotAfter\\": \\"2026-09-29 06:26:46\\",\\n \\"Issuer\\": \\"DigiCert\\",\\n \\"IssuerCN\\": \\"DigiCert Global Root CA\\",\\n \\"SAN\\": \\"www.example.com,*.example.com\\",\\n \\"SigAlg\\": \\"ECDSA-SHA1\\",\\n \\"PubAlg\\": \\"ECDSA\\",\\n \\"CreateTime\\": \\"2026-07-01 07:25:23\\",\\n \\"UpdateTime\\": \\"2026-07-01 07:25:23\\",\\n \\"SerialNumber\\": \\"babaded901474b9693acf530e0fb1daa\\",\\n \\"FingerprintSha256\\": \\"1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456aca66\\",\\n \\"DCV\\": [\\n {\\n \\"Id\\": \\"bababf7cdd1546a2ad04c0def1f4c980\\",\\n \\"Type\\": \\"HTTP\\",\\n \\"Key\\": \\"http://www.example.com/.well-known/acme-challenge/pH20CqwS5L3ZnvkhI436DCzadKFuG7QcUcvB_4KsAow\\",\\n \\"Value\\": \\"pH20CqwS5L3ZnvkhI436DCzadKFuG7QcUcvB_4KsAow.KfzYo4LH3EgOt7a73G-RqZkbR0eYtLfEUmtmqGmr4FQ\\",\\n \\"Status\\": \\"pending\\"\\n }\\n ],\\n \\"ApplyCode\\": 2,\\n \\"ApplyMessage\\": \\"canceled\\",\\n \\"KeyServerId\\": \\"baba39055622c008b90285a8838e****\\"\\n },\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","type":"json"}]', 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Get specified certificate information', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetCertificate'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:GetCertificate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'GetCertificateQuota' => [ 'summary' => 'Queries the quota and usage of free certificates.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238965', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~ListSites~~) operation to obtain this ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'Type', 'in' => 'query', 'schema' => ['description' => 'The certificate quota type.', 'type' => 'string', 'required' => true, 'example' => 'free', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response object.', 'type' => 'object', 'properties' => [ 'Quota' => ['description' => 'The free certificate quota.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''], 'QuotaUsage' => ['description' => 'The number of used free certificates.', 'type' => 'integer', 'format' => 'int64', 'example' => '5', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', 'title' => ''], 'Type' => ['description' => 'The certificate quota type.', 'type' => 'string', 'example' => 'free', 'title' => ''], 'SiteCount' => ['description' => 'The site count.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''], 'SiteUsage' => [ 'description' => 'Details about the certificate usage for each site.', 'type' => 'array', 'items' => [ 'description' => 'Certificate usage details for a site.', 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The site ID.', 'type' => 'string', 'example' => '165929521496928', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com ', 'title' => ''], 'SiteUsage' => ['description' => 'The number of certificates used by the site.', 'type' => 'integer', 'format' => 'int64', 'example' => '5', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'QuotaCheckFailed', 'errorMessage' => 'Failed to check free certificate Quota, please try again later.', 'description' => 'Failed to check free certificate Quota, please try again later.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'GetCertificateQuota', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetCertificateQuota'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:GetCertificateQuota', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Quota\\": 10,\\n \\"QuotaUsage\\": 5,\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"Type\\": \\"free\\",\\n \\"SiteCount\\": 2,\\n \\"SiteUsage\\": [\\n {\\n \\"SiteId\\": \\"165929521496928\\",\\n \\"SiteName\\": \\"example.com \\",\\n \\"SiteUsage\\": 5\\n }\\n ]\\n}","type":"json"}]', ], 'GetClientCaCertificate' => [ 'summary' => 'Retrieves a specified client CA certificate.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238932', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The certificate ID. You can call the [ListClientCaCertificates](~~2860651~~) operation to obtain the certificate ID.', 'type' => 'string', 'required' => true, 'example' => 'babab9db65ee5efcca9f3d41d4b5****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], 'Status' => ['description' => 'The certificate status.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'Certificate' => ['description' => 'The certificate content.', 'type' => 'string', 'example' => '-----BEGIN CERTIFICATE-----', 'title' => ''], 'Result' => [ 'description' => 'The certificate information.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'The certificate ID.', 'type' => 'string', 'example' => 'babab9db65ee5efcca9f3d41d4b5****', 'title' => ''], 'Name' => ['description' => 'The certificate name.', 'type' => 'string', 'example' => 'yourCertName', 'title' => ''], 'Status' => ['description' => 'The certificate status.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'Type' => ['description' => 'The certificate type.', 'type' => 'string', 'example' => 'upload', 'title' => ''], 'CommonName' => ['description' => 'The common name of the certificate.', 'type' => 'string', 'example' => 'www.example.com ', 'title' => ''], 'NotBefore' => ['description' => 'The start time of the certificate validity period. The time is in the YYYY-MM-DD HH:MM:SS format in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2023-03-31 02:08:00', 'title' => ''], 'NotAfter' => ['description' => 'The end time of the certificate validity period. The time is in the YYYY-MM-DD HH:MM:SS format in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-03-31 02:08:00', 'title' => ''], 'Issuer' => ['description' => 'The certificate issuer.', 'type' => 'string', 'example' => 'GlobalSign nv-sa', 'title' => ''], 'SAN' => ['description' => 'The Subject Alternative Name (SAN) of the certificate.', 'type' => 'string', 'example' => 'www.example.com,*.example.com', 'title' => ''], 'SignatureAlgorithm' => ['description' => 'The signature algorithm of the certificate.', 'type' => 'string', 'example' => 'SHA256-RSA', 'title' => ''], 'PubkeyAlgorithm' => ['description' => 'The public key algorithm of the certificate.', 'type' => 'string', 'example' => 'RSA', 'title' => ''], 'CreateTime' => ['description' => 'The creation time. The time is in the YYYY-MM-DD HH:MM:SS format in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-03-05 18:24:04', 'title' => ''], 'UpdateTime' => ['description' => 'The update time. The time is in the YYYY-MM-DD HH:MM:SS format in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-03-05 18:24:04', 'title' => ''], 'SerialNumber' => ['description' => 'The certificate serial number.', 'type' => 'string', 'example' => 'babaded901474b9693acf530e0fb1d**', 'title' => ''], 'FingerprintSha256' => ['description' => 'The SHA-256 fingerprint of the certificate.', 'type' => 'string', 'example' => '1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456a****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.', 'description' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'Id.MissingParameter', 'errorMessage' => 'The parameter Id is required.', 'description' => 'The required parameter Id is missing.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'Certificate.NotFound', 'errorMessage' => 'The specified certificate does not exist.', 'description' => 'The specified certificate does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SiteId\\": 1234567890123,\\n \\"SiteName\\": \\"example.com\\",\\n \\"Status\\": \\"OK\\",\\n \\"Certificate\\": \\"-----BEGIN CERTIFICATE-----\\",\\n \\"Result\\": {\\n \\"Id\\": \\"babab9db65ee5efcca9f3d41d4b5****\\",\\n \\"Name\\": \\"yourCertName\\",\\n \\"Status\\": \\"OK\\",\\n \\"Type\\": \\"upload\\",\\n \\"CommonName\\": \\"www.example.com \\",\\n \\"NotBefore\\": \\"2023-03-31 02:08:00\\",\\n \\"NotAfter\\": \\"2024-03-31 02:08:00\\",\\n \\"Issuer\\": \\"GlobalSign nv-sa\\",\\n \\"SAN\\": \\"www.example.com,*.example.com\\",\\n \\"SignatureAlgorithm\\": \\"SHA256-RSA\\",\\n \\"PubkeyAlgorithm\\": \\"RSA\\",\\n \\"CreateTime\\": \\"2024-03-05 18:24:04\\",\\n \\"UpdateTime\\": \\"2024-03-05 18:24:04\\",\\n \\"SerialNumber\\": \\"babaded901474b9693acf530e0fb1d**\\",\\n \\"FingerprintSha256\\": \\"1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456a****\\"\\n },\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\"\\n}","type":"json"}]', 'title' => 'Get a client CA certificate', 'changeSet' => [ ['createdAt' => '2025-03-12T03:30:13.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetClientCaCertificate'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetClientCaCertificate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'GetClientCaCertificateHostnames' => [ 'summary' => 'Retrieves the list of hostnames bound to a specified client CA certificate. If no certificate is specified, this operation returns the list of hostnames bound to the ESA CA certificate.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239234', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. To obtain this ID, call the [ListSites](~~ListSites~~) API.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The client CA certificate ID.', 'type' => 'string', 'required' => false, 'example' => 'babaded901474b9693acf530e0fb****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com ', 'title' => ''], 'Id' => ['description' => 'The client CA certificate ID.', 'type' => 'string', 'example' => 'babaded901474b9693acf530e0fb****', 'title' => ''], 'Hostnames' => [ 'type' => 'array', 'items' => ['description' => 'A domain name.', 'type' => 'string', 'example' => 'www.example.com ', 'title' => ''], 'description' => 'A list of domain names.', 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '3558df77-8a7a-4060-a900-2d7949403836', 'title' => ''], ], 'title' => '', 'description' => 'The response object.', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.', 'description' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'GetClientCaCertificateHostnames', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SiteId\\": 1234567890123,\\n \\"SiteName\\": \\"example.com \\",\\n \\"Id\\": \\"babaded901474b9693acf530e0fb****\\",\\n \\"Hostnames\\": [\\n \\"www.example.com \\"\\n ],\\n \\"RequestId\\": \\"3558df77-8a7a-4060-a900-2d7949403836\\"\\n}","type":"json"}]', ], 'GetClientCertificate' => [ 'summary' => 'Retrieves information about a specified client certificate.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238926', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The certificate ID.', 'type' => 'string', 'required' => true, 'example' => 'baba39055622c008b90285a8838ed09a', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com'."\n", 'title' => ''], 'Status' => ['description' => 'The certificate status.', 'type' => 'string', 'example' => 'active', 'title' => ''], 'Certificate' => ['description' => 'The certificate content.', 'type' => 'string', 'example' => '-----BEGIN CERTIFICATE-----', 'title' => ''], 'Result' => [ 'description' => 'The certificate information.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'The certificate ID.', 'type' => 'string', 'example' => 'baba39055622c008b90285a8838ed09a', 'title' => ''], 'Name' => ['description' => 'The certificate name.', 'type' => 'string', 'example' => 'yourCertName', 'title' => ''], 'Status' => ['description' => 'The certificate status.', 'type' => 'string', 'example' => 'active', 'title' => ''], 'Type' => ['description' => 'The certificate type.', 'type' => 'string', 'example' => 'dcdn', 'title' => ''], 'CommonName' => ['description' => 'The common name of the certificate.', 'type' => 'string', 'example' => 'www.example.com ', 'title' => ''], 'NotBefore' => ['description' => 'The start time of the certificate validity period. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2023-03-31 02:08:00', 'title' => ''], 'NotAfter' => ['description' => 'The end time of the certificate validity period. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-03-31 02:08:00', 'title' => ''], 'Issuer' => ['description' => 'The certification authority that issued the certificate.', 'type' => 'string', 'example' => 'GlobalSign nv-sa', 'title' => ''], 'SAN' => ['description' => 'The Subject Alternative Name (SAN) of the certificate.', 'type' => 'string', 'example' => 'www.example.com,*.example.com', 'title' => ''], 'SignatureAlgorithm' => ['description' => 'The signature algorithm of the certificate.', 'type' => 'string', 'example' => 'SHA256-RSA', 'title' => ''], 'PubkeyAlgorithm' => ['description' => 'The public key algorithm of the certificate.', 'type' => 'string', 'example' => 'RSA', 'title' => ''], 'CreateTime' => ['description' => 'The creation time. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-06-24 07:48:51', 'title' => ''], 'UpdateTime' => ['description' => 'The update time. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-09-22 05:33:13', 'title' => ''], 'CACertificateId' => ['description' => 'The CA certificate ID.', 'type' => 'string', 'example' => 'babab9db65ee5efcca9f3d41d4b50d66', 'title' => ''], 'SerialNumber' => ['description' => 'The certificate serial number.', 'type' => 'string', 'example' => 'babaded901474b9693acf530e0fb1d**', 'title' => ''], 'FingerprintSha256' => ['description' => 'The SHA-256 fingerprint of the certificate.', 'type' => 'string', 'example' => '1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456a****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.', 'description' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Id.MissingParameter', 'errorMessage' => 'The parameter Id is required.', 'description' => 'The required parameter Id is missing.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'Certificate.NotFound', 'errorMessage' => 'The specified certificate does not exist.', 'description' => 'The specified certificate does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Get client certificate information', 'changeSet' => [ ['createdAt' => '2025-03-12T03:30:14.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetClientCertificate'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetClientCertificate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SiteId\\": 1234567890123,\\n \\"SiteName\\": \\"example.com\\\\n\\",\\n \\"Status\\": \\"active\\",\\n \\"Certificate\\": \\"-----BEGIN CERTIFICATE-----\\",\\n \\"Result\\": {\\n \\"Id\\": \\"baba39055622c008b90285a8838ed09a\\",\\n \\"Name\\": \\"yourCertName\\",\\n \\"Status\\": \\"active\\",\\n \\"Type\\": \\"dcdn\\",\\n \\"CommonName\\": \\"www.example.com \\",\\n \\"NotBefore\\": \\"2023-03-31 02:08:00\\",\\n \\"NotAfter\\": \\"2024-03-31 02:08:00\\",\\n \\"Issuer\\": \\"GlobalSign nv-sa\\",\\n \\"SAN\\": \\"www.example.com,*.example.com\\",\\n \\"SignatureAlgorithm\\": \\"SHA256-RSA\\",\\n \\"PubkeyAlgorithm\\": \\"RSA\\",\\n \\"CreateTime\\": \\"2024-06-24 07:48:51\\",\\n \\"UpdateTime\\": \\"2024-09-22 05:33:13\\",\\n \\"CACertificateId\\": \\"babab9db65ee5efcca9f3d41d4b50d66\\",\\n \\"SerialNumber\\": \\"babaded901474b9693acf530e0fb1d**\\",\\n \\"FingerprintSha256\\": \\"1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456a****\\"\\n },\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\"\\n}","type":"json"}]', 'translator' => 'machine', ], 'GetClientCertificateHostnames' => [ 'summary' => 'Retrieves the list of hostnames bound to a specified client CA certificate. If you do not specify a certificate, the operation returns the list of hostnames for the ESA CA certificate.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239234', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The certificate ID.', 'type' => 'string', 'required' => false, 'example' => 'baba39055622c008b90285a8838ed09a', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response object.', 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com'."\n", 'title' => ''], 'Id' => ['description' => 'The client CA certificate ID.', 'type' => 'string', 'example' => 'baba39055622c008b90285a8838ed09a', 'title' => ''], 'Hostnames' => [ 'description' => 'The list of bound hostnames.', 'type' => 'array', 'items' => ['description' => 'The hostname.', 'type' => 'string', 'example' => 'www.example.com ', 'title' => ''], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F'."\n", 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.', 'description' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SiteId\\": 1234567890123,\\n \\"SiteName\\": \\"example.com\\\\n\\",\\n \\"Id\\": \\"baba39055622c008b90285a8838ed09a\\",\\n \\"Hostnames\\": [\\n \\"www.example.com \\"\\n ],\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\\\n\\"\\n}","type":"json"}]', 'title' => 'GetClientCertificateHostnames', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetClientCertificateHostnames'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetClientCertificateHostnames', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'GetCnameFlattening' => [ 'summary' => 'Queries the CNAME flattening configuration of a website', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257388', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'F61CDR30-E83C-4FDA-BF73-9A94CDD44229'], 'FlattenMode' => [ 'description' => 'The CNAME flattening mode. Valid values:'."\n" ."\n" .'* flatten_all: flattens all CNAMEs.'."\n" .'* flatten_all (default): flattens only the root domain.'."\n", 'type' => 'string', 'enumValueTitles' => ['flatten_at_root' => 'flatten_at_root', 'flatten_all' => 'flatten_all'], 'example' => 'flatten_all', 'title' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F61CDR30-E83C-4FDA-BF73-9A94CDD44229\\",\\n \\"FlattenMode\\": \\"flatten_all\\"\\n}","type":"json"}]', 'title' => 'GetCnameFlattening', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetCnameFlattening'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetCnameFlattening', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'read', ], 'GetCompressionRule' => [ 'summary' => 'Query Compression Rule Details', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257665', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID, which can be obtained by calling the [ListSites](~~2850189~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '34003500310****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'Configuration ID, which can be obtained by calling the [ListCompressionRules](~~2867498~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '35281609698****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Request response result.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => '186C6DF2-D96A-5102-B04E-FB92C16C9867'], 'ConfigId' => ['description' => 'Configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '35281609698****', 'title' => ''], 'ConfigType' => ['description' => 'Configuration type. Possible values:'."\n" .'- global: Global configuration.'."\n" .'- rule: Rule-based configuration.', 'type' => 'string', 'example' => 'rule', 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the site configuration. For sites with version management enabled, this parameter can specify the effective version of the configuration, defaulting to version 0.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Sequence' => ['description' => 'Rule execution order. The smaller the value, the higher the priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RuleEnable' => ['description' => 'Rule switch. This parameter is not required when adding a global configuration. Possible values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'Rule content, using conditional expressions to match user requests. This parameter is not required when adding a global configuration. There are two usage scenarios:'."\n" .'- Match all incoming requests: Set the value to true'."\n" .'- Match specific requests: Set the value to a custom expression, for example: (http.host eq \\"video.example.com\\")', 'type' => 'string', 'example' => '(http.host eq "video.example.com")', 'title' => ''], 'RuleName' => ['description' => 'Rule name. This parameter is not required when adding a global configuration.', 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'Gzip' => ['description' => 'Gzip compression. Possible values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Brotli' => ['description' => 'Brotli compression. Possible values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Zstd' => ['description' => 'Zstd compression. Value range: '."\n" .'- on: enabled. '."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"186C6DF2-D96A-5102-B04E-FB92C16C9867\\",\\n \\"ConfigId\\": 0,\\n \\"ConfigType\\": \\"rule\\",\\n \\"SiteVersion\\": 0,\\n \\"Sequence\\": 1,\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\"video.example.com\\\\\\")\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"Gzip\\": \\"on\\",\\n \\"Brotli\\": \\"on\\",\\n \\"Zstd\\": \\"on\\"\\n}","type":"json"}]', 'title' => 'Query Compression Rule Configuration Details', 'changeSet' => [ ['createdAt' => '2025-02-12T02:25:41.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetCompressionRule'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetCompressionRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'read', ], 'GetCrossBorderOptimization' => [ 'summary' => 'Queries the configuration of Chinese mainland access optimization.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257426', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '340035003106221', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'CF521A24-633F-5350-A6A5-42AD503D0D20'], 'Enable' => [ 'description' => 'Whether to enable Chinese mainland network access optimization. By default, it is disabled. Valid values:'."\n" ."\n" .'* on'."\n" .'* off'."\n", 'type' => 'string', 'enumValueTitles' => ['off' => 'off', 'on' => 'on'], 'example' => 'on', 'title' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CF521A24-633F-5350-A6A5-42AD503D0D20\\",\\n \\"Enable\\": \\"on\\"\\n}","type":"json"}]', 'title' => 'GetCrossBorderOptimization', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetCrossBorderOptimization'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetCrossBorderOptimization', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'read', ], 'GetCustomHostname' => [ 'summary' => 'Retrieves the detailed configuration of a single SaaS domain name, including the domain verification TXT name, domain verification TXT content, and certificate expiration time (when SSL is enabled).', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239656', 'abilityTreeNodes' => ['FEATUREdcdn4DMKZ4'], ], 'parameters' => [ [ 'name' => 'HostnameId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The ID of the SaaS domain name. You can obtain this value by calling the [ListCustomHostnames](~~3018667~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID, which is a unique identifier generated by Alibaba Cloud for this request.', 'type' => 'string', 'example' => '7C414690-9D7B-5D66-9CD9-AD0B3F25ED49'], 'CustomHostnameModel' => [ 'description' => 'The information about the queried SaaS domain name.', 'type' => 'object', 'properties' => [ 'HostnameId' => ['title' => '', 'description' => 'The ID of the SaaS domain name.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123'], 'Hostname' => ['title' => '', 'description' => 'The SaaS domain name.', 'type' => 'string', 'example' => 'custom.site.com'], 'SiteId' => ['title' => '', 'description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '890601022130656'], 'SiteName' => ['title' => '', 'description' => 'The site name.', 'type' => 'string', 'example' => 'example.com'], 'RecordId' => ['title' => '', 'description' => 'The record ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '4042843419650112'], 'RecordName' => ['title' => '', 'description' => 'The record name.', 'type' => 'string', 'example' => 'origin.example.com'], 'Status' => [ 'title' => '', 'description' => 'The status of the SaaS domain name. Valid values:'."\n" .'- **pending**: Pending verification.'."\n" .'- **active**: Activated.'."\n" .'- **conflicted**: Occupied.'."\n" .'- **offline**: Offline.'."\n" .'- **configuring**: Being configured.', 'enumValueTitles' => ['conflicted' => 'Occupied.', 'offline' => 'Offline.', 'configuring' => 'Being configured.', 'pending' => 'Pending verification.', 'active' => 'Activated.'], 'type' => 'string', 'enum' => ['pending', 'active', 'conflicted', 'offline', 'configuring'], 'example' => 'active', ], 'VerifyHost' => ['title' => '', 'description' => 'The TXT name for domain verification.', 'type' => 'string', 'example' => '_esa_custom_hostname.custom.site.com'], 'VerifyCode' => ['title' => '', 'description' => 'The TXT content for domain verification.', 'type' => 'string', 'example' => 'verify_16ab7f4d389d4dff6655f995c6a997bd'], 'SslFlag' => [ 'title' => '', 'description' => 'The SSL switch. Valid values:'."\n" .'- **on**: SSL is enabled.'."\n" .'- **off**: SSL is disabled.', 'enumValueTitles' => ['off' => 'SSL is disabled.', 'on' => 'SSL is enabled.'], 'type' => 'string', 'enum' => ['on', 'off'], 'example' => 'on', ], 'CertType' => [ 'title' => '', 'description' => 'The certificate type. Valid values:'."\n" .'- **free**: Free certificate.'."\n" .'- **upload**: Uploaded certificate.'."\n" .'- **cas**: SSL Certificates Service certificate.', 'enumValueTitles' => ['cas' => 'SSL Certificates Service certificate.', 'upload' => 'Uploaded certificate.', 'free' => 'Free certificate.'], 'type' => 'string', 'enum' => ['free', 'upload', 'cas'], 'example' => 'free', ], 'CasId' => ['title' => '', 'description' => 'The SSL Certificates Service certificate ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '30000478'], 'CertId' => ['title' => '', 'description' => 'The certificate ID.', 'type' => 'string', 'example' => 'baba2c9e90e840b3b55698cedf02b308'], 'Certificate' => ['title' => '', 'description' => 'The certificate content.', 'type' => 'string', 'example' => '-----BEGIN CERTIFICATE-----'], 'CertStatus' => [ 'title' => '', 'description' => 'The certificate status. Valid values:'."\n" .'- **OK**: Normal.'."\n" .'- **Applying**: Being applied.'."\n" .'- **ApplyFailed**: Application failed.'."\n" .'- **Expiring**: About to expire.'."\n" .'- **Expired**: Expired.', 'enumValueTitles' => ['Expiring' => 'About to expire.', 'ApplyFailed' => 'Application failed.', 'Expired' => 'Expired.', 'Applying' => 'Being applied.', 'OK' => 'Normal.'], 'type' => 'string', 'enum' => ['OK', 'Expired', 'Expiring', 'Applying', 'ApplyFailed'], 'example' => 'OK', ], 'CertTxtKey' => ['title' => '', 'description' => 'The TXT name for certificate verification.', 'type' => 'string', 'example' => '_acme-challenge.custom.site.com'], 'CertTxtValue' => ['title' => '', 'description' => 'The TXT content for certificate verification.', 'type' => 'string', 'example' => 'lcKYad3UQXgrZLvMm_6TBUYKK4xTkGmninV0Mzx4gjM'], 'CertHttpKey' => ['title' => '', 'description' => 'The HTTP address for certificate verification.', 'type' => 'string', 'example' => 'http://custom.site.com/.well-known/acme-challenge/jLmMHlEaZ3jb352Qo3ciaSoAC8KZ5Hk0F-4_1xLQtgc'], 'CertHttpValue' => ['title' => '', 'description' => 'The HTTP content for certificate verification.', 'type' => 'string', 'example' => 'jLmMHlEaZ3jb352Qo3ciaSoAC8KZ5Hk0F-4_1xLQtgc.GridYdfJJB5PgFEL-t89XfaFvMPB4f2-I9fwLpKl6e0'], 'CertNotAfter' => ['title' => '', 'description' => 'The certificate expiration time, in ISO 8601 format with UTC time. The format is yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2026-04-19T11:15:20Z'], 'CertApplyMessage' => ['title' => '', 'description' => 'The error message for the free certificate application.', 'type' => 'string', 'example' => 'canceled'], 'CertApplyCode' => ['title' => '', 'description' => 'The error code for the free certificate application.', 'type' => 'integer', 'format' => 'int64', 'example' => '2'], 'CreateTime' => ['title' => '', 'description' => 'The time when the SaaS domain name was created, in ISO 8601 format with UTC time. The format is yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2026-04-19T11:15:20Z'], 'UpdateTime' => ['title' => '', 'description' => 'The time when the SaaS domain name was last updated, in ISO 8601 format with UTC time. The format is yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2026-04-19T11:15:20Z'], 'OfflineReason' => [ 'title' => '', 'description' => 'The reason why the SaaS domain name was taken offline. Valid values:'."\n" .'- **expiration_arrears**: The subscription plan expired or the account has an overdue payment.'."\n" .'- **internally_disabled**: Disabled by the system.'."\n" .'- **missing_icp**: The domain name does not have an ICP filing.'."\n" .'- **content_violation**: Content violation.'."\n" .'- **proactively_disabled**: You proactively disabled the domain name or the usage cap you configured was reached.', 'enumValueTitles' => ['expiration_arrears' => 'The subscription plan expired or the account has an overdue payment.', 'proactively_disabled' => 'Proactively disabled or usage cap reached.', 'content_violation' => 'Content violation.', 'internally_disabled' => 'Disabled by the system.', 'missing_icp' => 'The domain name does not have an ICP filing.'], 'type' => 'string', 'enum' => ['proactively_disabled', 'content_violation', 'internally_disabled', 'missing_icp', 'expiration_arrears'], 'example' => 'missing_icp', ], 'ConflictWith' => [ 'title' => '', 'description' => 'The reason why the SaaS domain name is occupied. Valid values:'."\n" .'- **existing_custom_hostname**: Conflicts with an existing SaaS domain name.'."\n" .'- **existing_record**: Conflicts with an existing site record.'."\n" .'- **existing_load_balancer**: Conflicts with an existing load balancing instance.'."\n" .'- **existing_origin_pool**: Conflicts with an existing origin IPAM pool.'."\n" .'- **existing_site**: Conflicts with an existing site.', 'enumValueTitles' => ['existing_load_balancer' => 'Conflicts with an existing load balancing instance.', 'existing_custom_hostname' => 'Conflicts with an existing SaaS domain name.', 'existing_site' => 'Conflicts with an existing site.', 'existing_record' => 'Conflicts with an existing site record.', 'existing_origin_pool' => 'Conflicts with an existing origin pool.'], 'type' => 'string', 'enum' => ['existing_custom_hostname', 'existing_site', 'existing_record', 'existing_load_balancer', 'existing_origin_pool'], 'example' => 'existing_custom_hostname', ], 'PrivateKey' => ['description' => 'The private key of the certificate.', 'type' => 'string', 'example' => '-----BEGIN RSA PRIVATE KEY-----', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ], 404 => [ ['errorCode' => 'CustomHostname.NotFound', 'errorMessage' => 'The custom hostname does not exist. Modify it and try again.', 'description' => 'The custom hostname does not exist. Modify it and try again.'], ['errorCode' => 'CustomHostname.ApplyCertFailed', 'errorMessage' => 'Fail to apply a free cert for custom hostname. Please try again later.', 'description' => ''], ['errorCode' => 'CustomHostname.SetCertFailed', 'errorMessage' => 'Fail to deploy a cert for custom hostname. Please try again later.', 'description' => ''], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'Query saaS domain name details', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetCustomHostname'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetCustomHostname', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7C414690-9D7B-5D66-9CD9-AD0B3F25ED49\\",\\n \\"CustomHostnameModel\\": {\\n \\"HostnameId\\": 1234567890123,\\n \\"Hostname\\": \\"custom.site.com\\",\\n \\"SiteId\\": 890601022130656,\\n \\"SiteName\\": \\"example.com\\",\\n \\"RecordId\\": 4042843419650112,\\n \\"RecordName\\": \\"origin.example.com\\",\\n \\"Status\\": \\"active\\",\\n \\"VerifyHost\\": \\"_esa_custom_hostname.custom.site.com\\",\\n \\"VerifyCode\\": \\"verify_16ab7f4d389d4dff6655f995c6a997bd\\",\\n \\"SslFlag\\": \\"on\\",\\n \\"CertType\\": \\"free\\",\\n \\"CasId\\": 30000478,\\n \\"CertId\\": \\"baba2c9e90e840b3b55698cedf02b308\\",\\n \\"Certificate\\": \\"-----BEGIN CERTIFICATE-----\\",\\n \\"CertStatus\\": \\"OK\\",\\n \\"CertTxtKey\\": \\"_acme-challenge.custom.site.com\\",\\n \\"CertTxtValue\\": \\"lcKYad3UQXgrZLvMm_6TBUYKK4xTkGmninV0Mzx4gjM\\",\\n \\"CertHttpKey\\": \\"http://custom.site.com/.well-known/acme-challenge/jLmMHlEaZ3jb352Qo3ciaSoAC8KZ5Hk0F-4_1xLQtgc\\",\\n \\"CertHttpValue\\": \\"jLmMHlEaZ3jb352Qo3ciaSoAC8KZ5Hk0F-4_1xLQtgc.GridYdfJJB5PgFEL-t89XfaFvMPB4f2-I9fwLpKl6e0\\",\\n \\"CertNotAfter\\": \\"2026-04-19T11:15:20Z\\",\\n \\"CertApplyMessage\\": \\"canceled\\",\\n \\"CertApplyCode\\": 2,\\n \\"CreateTime\\": \\"2026-04-19T11:15:20Z\\",\\n \\"UpdateTime\\": \\"2026-04-19T11:15:20Z\\",\\n \\"OfflineReason\\": \\"missing_icp\\",\\n \\"ConflictWith\\": \\"existing_custom_hostname\\",\\n \\"PrivateKey\\": \\"-----BEGIN RSA PRIVATE KEY-----\\"\\n }\\n}","type":"json"}]', ], 'GetCustomResponseCodeRule' => [ 'summary' => 'Retrieve details about a site\'s custom response code configuration.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257648', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID. For more information, see [ListSites](~~2850189~~).', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '775724064754208', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'Configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '424022244554752', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'Request ID.', 'type' => 'string', 'title' => '', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'ConfigId' => ['description' => 'Configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '352816096987136', 'title' => ''], 'ConfigType' => ['description' => 'The configuration type. Valid values:'."\n" ."\n" .'- global: Global configuration.'."\n" ."\n" .'- rule: Rule configuration.', 'type' => 'string', 'example' => 'global', 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the site configuration. For sites with version control enabled, use this parameter to specify the site version where the configuration takes effect. The default is version 0.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Sequence' => ['description' => 'The rule execution order. A smaller value indicates higher execution priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RuleEnable' => ['description' => 'The rule switch. Do not set this parameter when adding a global configuration. Valid values:'."\n" ."\n" .'- on: Enable.'."\n" ."\n" .'- off: Disable.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'The rule content. Use conditional expressions to match user requests. Do not set this parameter when adding a global configuration. There are two scenarios:'."\n" ."\n" .'- Match all incoming requests: Set the value to true.'."\n" ."\n" .'- Match specific requests: Set the value to a custom expression, such as (http.host eq "video.example.com").', 'type' => 'string', 'example' => '(http.host eq "video.example.com")'."\n", 'title' => ''], 'RuleName' => ['description' => 'The rule name. Do not set this parameter when adding a global configuration.', 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'ReturnCode' => ['description' => 'The response code.', 'type' => 'string', 'example' => '200', 'title' => ''], 'PageId' => ['description' => 'The response page.', 'type' => 'string', 'example' => '0', 'title' => ''], ], 'title' => '', 'description' => 'The request response result.', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'title' => 'GetCustomResponseCodeRule', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetCustomResponseCodeRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"ConfigId\\": 352816096987136,\\n \\"ConfigType\\": \\"global\\",\\n \\"SiteVersion\\": 0,\\n \\"Sequence\\": 1,\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\"video.example.com\\\\\\")\\\\n\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"ReturnCode\\": \\"200\\",\\n \\"PageId\\": \\"0\\"\\n}","type":"json"}]', ], 'GetDcvDelegation' => [ 'summary' => 'Retrieves the delegated DCV information.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '265856', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can obtain the site ID by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74'], 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456****', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com ', 'title' => ''], 'DelegationDomain' => ['description' => 'The DCV managed domain name.', 'type' => 'string', 'example' => '123456****.dcv.aliyun-esa.com', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], ], 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Retrieve managed DCV information', 'requestParamsDescription' => 'If no site exists, first call PurchaseRatePlan to obtain the InstanceId, and then call CreateSite to create a site.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\",\\n \\"SiteId\\": 0,\\n \\"SiteName\\": \\"example.com \\",\\n \\"DelegationDomain\\": \\"123456****.dcv.aliyun-esa.com\\"\\n}","type":"json"}]', 'translator' => 'machine', ], 'GetDevelopmentMode' => [ 'summary' => 'Query Site Developer Mode Configuration', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257406', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID, which can be obtained by calling the [ListSites](~~2850189~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '5407498413****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => '156A6B-677B1A-4297B7-9187B7-2B44792'], 'Enable' => [ 'description' => 'Switch. Values:'."\n" ."\n" .'- **on**: Enabled.'."\n" .'- **off**: Disabled.', 'type' => 'string', 'enumValueTitles' => ['off' => 'off', 'on' => 'on'], 'example' => 'on', 'title' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"156A6B-677B1A-4297B7-9187B7-2B44792\\",\\n \\"Enable\\": \\"on\\"\\n}","type":"json"}]', 'title' => 'GetDevelopmentMode', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetDevelopmentMode'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetDevelopmentMode', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'read', ], 'GetEdgeContainer' => [ 'summary' => 'Retrieves the details of an edge container plan instance.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '261519', 'abilityTreeNodes' => ['FEATUREdcdnGMYWU5'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '9BEB8659-9CDE-5F2C-83E9-50F55277E844'], 'BillingMode' => [ 'description' => 'The billing mode.', 'enumValueTitles' => ['container_95' => 'monthly 95th percentile metering method.'], 'type' => 'string', 'example' => 'container_95', 'title' => '', ], 'Status' => [ 'description' => 'The plan instance status.', 'enumValueTitles' => ['Creating' => 'Being created.', 'Running' => 'Running.', 'NotOpened' => 'Not activated.'], 'type' => 'string', 'example' => 'Running', 'title' => '', ], 'InstanceId' => ['description' => 'The plan instance ID.', 'type' => 'string', 'example' => 'esa-cn-jea67jfbs0x', 'title' => ''], ], 'example' => '', ], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Retrieve edge container plan instance details', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:GetEdgeContainer', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9BEB8659-9CDE-5F2C-83E9-50F55277E844\\",\\n \\"BillingMode\\": \\"container_95\\",\\n \\"Status\\": \\"Running\\",\\n \\"InstanceId\\": \\"esa-cn-jea67jfbs0x\\"\\n}","type":"json"}]', ], 'GetEdgeContainerApp' => [ 'summary' => 'Queries the information about a containerized application, including basic application configurations and health check configurations.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239322', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', 'schema' => ['description' => 'The application ID, which can be obtained by calling the [ListEdgeContainerApps](~~ListEdgeContainerApps~~) operation.'."\n", 'type' => 'string', 'required' => true, 'example' => 'app-88068867578379****', 'maxLength' => 64, 'minLength' => 20, 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '156A6B-677B1A-4297B7-9187B7-2B44792', 'title' => ''], 'App' => [ 'description' => 'The basic information about the application.'."\n", 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status of the application. Valid values:'."\n" ."\n" .'* creating: The application is being created.'."\n" .'* failed: The application failed to be created.'."\n" .'* created: The application is created.'."\n", 'type' => 'string', 'example' => 'created', 'title' => ''], 'GatewayType' => ['description' => 'The type of the gateway. Valid values:'."\n" ."\n" .'* l7: Layer 7 gateway.'."\n" .'* l4: Layer 4 gateway.'."\n", 'type' => 'string', 'example' => 'l7', 'title' => ''], 'CreateTime' => ['description' => 'The time when the application was created.'."\n", 'type' => 'string', 'example' => '2023-07-25T05:58:05Z', 'title' => ''], 'VersionCount' => ['description' => 'The number of versions of the application.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'DomainName' => ['description' => 'The domain name that is associated with the application. If no domain name is associated with the application, the value is an empty string.'."\n", 'type' => 'string', 'example' => 'www.1feel.cn', 'title' => ''], 'Remarks' => ['description' => 'The remarks about the application.'."\n", 'type' => 'string', 'example' => 'test app', 'title' => ''], 'ServicePort' => ['description' => 'The server port. Valid values: 1 to 65535.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '80', 'title' => ''], 'AppId' => ['description' => 'The application ID.'."\n", 'type' => 'string', 'example' => 'app-88068867578379****', 'title' => ''], 'TargetPort' => ['description' => 'The backend port, which is also the service port of the application. Valid values: 1 to 65535.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '80', 'title' => ''], 'QuicCid' => ['description' => 'Indicates whether QUIC is enabled.'."\n", 'type' => 'string', 'example' => 'false', 'title' => ''], 'Name' => ['description' => 'The application name.'."\n", 'type' => 'string', 'example' => 'test-app1', 'title' => ''], 'UpdateTime' => ['description' => 'The time when the application was last modified. The time follows the ISO 8601 standard in the YYYY-MM-DDThh:mm:ss format. The time is displayed in UTC.'."\n", 'type' => 'string', 'example' => '2023-03-26T02:35:58Z', 'title' => ''], 'HealthCheck' => [ 'description' => 'The information about health checks.'."\n", 'type' => 'object', 'properties' => [ 'Timeout' => ['description' => 'The timeout period of the health check. Unit: seconds.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '60', 'title' => ''], 'Type' => ['description' => 'The health check type. Valid values:'."\n" ."\n" .'* l7'."\n" .'* l4'."\n", 'type' => 'string', 'example' => 'l7', 'title' => ''], 'Host' => ['description' => 'The domain name that is used for health checks.'."\n", 'type' => 'string', 'example' => 'test.com', 'title' => ''], 'Interval' => ['description' => 'The interval between health checks. Unit: seconds.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], 'SuccTimes' => ['description' => 'The number of consecutive successful health checks required for an application to be considered as healthy.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''], 'Method' => ['description' => 'The HTTP method that the health check request uses.'."\n", 'type' => 'string', 'example' => 'HEAD', 'title' => ''], 'HttpCode' => ['description' => 'The range of health check status codes that indicate successful health checks.'."\n", 'type' => 'string', 'example' => 'http_2xx', 'title' => ''], 'FailTimes' => ['description' => 'The number of consecutive failed health checks required for an application to be considered as unhealthy.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], 'Port' => ['description' => 'The health check port.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '80', 'title' => ''], 'Uri' => ['description' => 'The health check URL.'."\n", 'type' => 'string', 'example' => '/health_check', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"156A6B-677B1A-4297B7-9187B7-2B44792\\",\\n \\"App\\": {\\n \\"Status\\": \\"created\\",\\n \\"GatewayType\\": \\"l7\\",\\n \\"CreateTime\\": \\"2023-07-25T05:58:05Z\\",\\n \\"VersionCount\\": 1,\\n \\"DomainName\\": \\"www.1feel.cn\\",\\n \\"Remarks\\": \\"test app\\",\\n \\"ServicePort\\": 80,\\n \\"AppId\\": \\"app-88068867578379****\\",\\n \\"TargetPort\\": 80,\\n \\"QuicCid\\": \\"false\\",\\n \\"Name\\": \\"test-app1\\",\\n \\"UpdateTime\\": \\"2023-03-26T02:35:58Z\\",\\n \\"HealthCheck\\": {\\n \\"Timeout\\": 60,\\n \\"Type\\": \\"l7\\",\\n \\"Host\\": \\"test.com\\",\\n \\"Interval\\": 5,\\n \\"SuccTimes\\": 3,\\n \\"Method\\": \\"HEAD\\",\\n \\"HttpCode\\": \\"http_2xx\\",\\n \\"FailTimes\\": 5,\\n \\"Port\\": 80,\\n \\"Uri\\": \\"/health_check\\"\\n }\\n }\\n}","type":"json"}]', 'title' => 'GetEdgeContainerApp', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEdgeContainerApp'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:GetEdgeContainerApp', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'GetEdgeContainerAppLogRiver' => [ 'summary' => 'Retrieves the log collection configuration of an edge container application.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '249444', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', 'schema' => ['description' => 'The application ID. You can call the [ListEdgeContainerApps](~~ListEdgeContainerApps~~) operation to obtain the application ID.'."\n" .'AppId is a required parameter. If this parameter is not specified, the API returns InvalidParameter.appid (400). You can call the ListEdgeContainerApps operation to obtain a valid AppId..', 'type' => 'string', 'required' => false, 'example' => 'app-880688675****88', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9'], 'Stdout' => ['description' => 'Indicates whether standard output collection is enabled for the container.', 'type' => 'boolean', 'title' => '', 'example' => ''], 'Path' => ['description' => 'The log file path of the container. The path must be an absolute path that starts with a forward slash (/). Asterisks (*) and question marks (?) can be used as wildcards.', 'type' => 'string', 'example' => '/root/hello.log', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Invalid parameter. Check the parameter configuration.', 'description' => 'Invalid parameter. Check the parameter configuration.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"Stdout\\": false,\\n \\"Path\\": \\"/root/hello.log\\"\\n}","type":"json"}]', 'title' => 'Retrieve edge container log collection configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEdgeContainerAppLogRiver'], ], ], 'ramActions' => [], ], 'GetEdgeContainerAppResourceCapacity' => [ 'summary' => 'Get the resource capacity of an edge container application', 'path' => '', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', 'schema' => ['description' => 'The application ID. You can call the [ListEdgeContainerApps](~~ListEdgeContainerApps~~) API operation to obtain the application ID.'."\n" ."\n" .'>If ListEdgeContainerApps returns an empty list, call CreateEdgeContainerApp first to create an application and use the returned AppId.', 'type' => 'string', 'required' => true, 'example' => 'app-88068867578379****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '50423A7F-A83D-1E24-B80E-86DD25790759'."\n"], 'Regions' => [ 'description' => 'The available regions.'."\n" ."\n", 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Region' => ['description' => 'Chinese mainland:'."\n" .'- East China: huadong'."\n" .'- South China: huanan'."\n" .'- Central China: huazhong'."\n" .'- North China: huabei'."\n" .'- Northwest China: xibei'."\n" .'- Southwest China: xinan'."\n" .'- Northeast China: dongbei'."\n" ."\n" .'Special administrative regions and overseas:'."\n" ."\n" .'- Taiwan (China): tw'."\n" .'- Macao (China): mo'."\n" .'- Hong Kong (China): hk'."\n" .'- Japan: jp'."\n" .'- United States: us'."\n" .'- Thailand: th'."\n" .'- South Korea: kr'."\n" .'- Russia: ru'."\n" .'- Singapore: sg'."\n" .'- France: fr'."\n" .'- Spain: es'."\n" .'- Italy: it'."\n" .'- Sweden: se'."\n" .'- United Arab Emirates: ae'."\n" .'- Indonesia: id'."\n" .'- Chile: cl'."\n" .'- Philippines: ph'."\n" .'- Malaysia: my'."\n" .'- Vietnam: vn'."\n" .'- Argentina: ar'."\n" .'- Australia: au'."\n" .'- Brazil: br'."\n" .'- Colombia: co'."\n" .'- Germany: de'."\n" .'- United Kingdom: gb'."\n" .'- Peru: pe'."\n" .'- Saudi Arabia: sa'."\n" .'- Netherlands: nl'."\n" .'- South Africa: za', 'type' => 'string', 'example' => 'huadong', 'title' => ''], 'Isp' => ['description' => 'The following Internet service providers (ISPs) are supported. This field is not returned for regions outside the Chinese mainland.'."\n" .'ISPs:'."\n" ."\n" .'- China Mobile: cmcc'."\n" .'- China Telecom: chinanet'."\n" .'- China Unicom: unicom', 'type' => 'string', 'example' => 'unicom', 'title' => ''], 'Replicas' => ['description' => 'The number of container replicas that can be deployed.', 'type' => 'integer', 'format' => 'int32', 'example' => '16', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Invalid parameter. Check the parameter configuration.', 'description' => 'Invalid parameter. Check the parameter configuration.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'InvalidParameter.Appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the input application ID is incorrect. You can use the ListEdgeContainerApps API to obtain the application ID.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Get the resource capacity of an edge container application', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEdgeContainerAppResourceCapacity'], ], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"50423A7F-A83D-1E24-B80E-86DD25790759\\\\n\\",\\n \\"Regions\\": [\\n {\\n \\"Region\\": \\"huadong\\",\\n \\"Isp\\": \\"unicom\\",\\n \\"Replicas\\": 16\\n }\\n ]\\n}","type":"json"}]', ], 'GetEdgeContainerAppResourceReserve' => [ 'summary' => 'Retrieves the resource reservation configuration of an edge container application.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '265068', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', 'schema' => ['description' => 'The application ID. You can call the [ListEdgeContainerApps](~~ListEdgeContainerApps~~) operation to obtain the application ID.'."\n" .'>This parameter is required. If this parameter is not specified, the service returns InvalidParameter.Appid (400).'."\n" .'If no applications exist under your account, call CreateEdgeContainerApp to create an application first, and then call ListEdgeContainerApps to obtain the AppId.'."\n" .'.', 'type' => 'string', 'required' => false, 'example' => 'app-88068867578379****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'."\n"], 'Enable' => ['description' => 'Indicates whether resource reservation is enabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Forever' => ['description' => 'Indicates whether the reservation is permanently enabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'DurationTime' => ['description' => 'The reservation expiration time. This parameter uses UTC time. To convert from UTC+8, add 8 hours. For example, if the current UTC+8 time is 2006-01-02 06:04:05, enter "2006-01-02T14:04:05Z".', 'type' => 'string', 'example' => '2006-01-02T15:04:05Z', 'title' => ''], 'ReserveSet' => [ 'description' => 'The list of reserved resources.', 'type' => 'array', 'items' => [ 'description' => 'The reserved region object.', 'type' => 'object', 'properties' => [ 'Region' => ['description' => 'The Chinese mainland:'."\n" .'- East China: huadong'."\n" .'- South China: huanan'."\n" .'- Central China: huazhong'."\n" .'- North China: huabei'."\n" .'- Northwest China: xibei'."\n" .'- Southwest China: xinan'."\n" .'- Northeast China: dongbei'."\n" ."\n" .'Special administrative regions and outside China:'."\n" .'- Taiwan (China): tw'."\n" .'- Macao (China): mo'."\n" .'- Hong Kong (China): hk'."\n" .'- Japan: jp'."\n" .'- United States: us'."\n" .'- Thailand: th'."\n" .'- South Korea: kr'."\n" .'- Russia: ru'."\n" .'- Singapore: sg'."\n" .'- France: fr'."\n" .'- Spain: es'."\n" .'- Italy: it'."\n" .'- Sweden: se'."\n" .'- United Arab Emirates: ae'."\n" .'- Indonesia: id'."\n" .'- Chile: cl'."\n" .'- Philippines: ph'."\n" .'- Malaysia: my'."\n" .'- Vietnam: vn'."\n" .'- Argentina: ar'."\n" .'- Australia: au'."\n" .'- Brazil: br'."\n" .'- Colombia: co'."\n" .'- Germany: de'."\n" .'- United Kingdom: gb'."\n" .'- Peru: pe'."\n" .'- Saudi Arabia: sa'."\n" .'- Netherlands: nl'."\n" .'- South Africa: za.', 'type' => 'string', 'example' => 'huazhong', 'title' => ''], 'Isp' => ['description' => 'The following Internet service providers (ISPs) are supported. This parameter is not required for regions outside the Chinese mainland.'."\n" .'Valid values:'."\n" .'- cmcc: China Mobile'."\n" .'- chinanet: China Telecom'."\n" .'- unicom: China Unicom.', 'type' => 'string', 'example' => 'cmcc', 'title' => ''], 'Replicas' => ['description' => 'The number of container replicas.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Invalid parameter. Check the parameter configuration.', 'description' => 'Invalid parameter. Check the parameter configuration.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'InvalidParameter.Appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the input application ID is incorrect. You can use the ListEdgeContainerApps API to obtain the application ID.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\\\n\\",\\n \\"Enable\\": true,\\n \\"Forever\\": true,\\n \\"DurationTime\\": \\"2006-01-02T15:04:05Z\\",\\n \\"ReserveSet\\": [\\n {\\n \\"Region\\": \\"huazhong\\",\\n \\"Isp\\": \\"cmcc\\",\\n \\"Replicas\\": 1\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Get edge container application resource reservation configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEdgeContainerAppResourceReserve'], ], ], 'ramActions' => [], ], 'GetEdgeContainerAppResourceStatus' => [ 'summary' => 'Obtains the distribution of edge container application resources.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '267316', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', 'schema' => ['description' => 'The application ID, which can be obtained by calling the [ListEdgeContainerApps](~~ListEdgeContainerApps~~) operation.'."\n", 'type' => 'string', 'required' => true, 'example' => 'app-96253477062511****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74'], 'Regions' => [ 'description' => 'Queries the regions of deployment.'."\n", 'type' => 'array', 'items' => [ 'description' => 'Deployment regions.'."\n", 'type' => 'object', 'properties' => [ 'Region' => ['description' => 'Chinese mainland:'."\n" ."\n" .'* East China: huadong'."\n" .'* South China: huanan'."\n" .'* Central China: huazhong'."\n" .'* North China: huabei'."\n" .'* Northwest China: xibei'."\n" .'* Southwest China: xinan'."\n" .'* Northeast China: dongbei'."\n" ."\n" .'Special Administrative Regions and Overseas:'."\n" ."\n" .'* Taiwan, China: tw'."\n" .'* Macau, China: mo'."\n" .'* Hong Kong, China: hk'."\n" .'* Japan: jp'."\n" .'* United States: us'."\n" .'* Thailand: th'."\n" .'* Korea: kr'."\n" .'* Russia: ru'."\n" .'* Singapore: sg'."\n" .'* France: fr'."\n" .'* Spain: es'."\n" .'* Italy: it'."\n" .'* Sweden: se'."\n" .'* UAE: ae'."\n" .'* Indonesia: id'."\n" .'* Chile: cl'."\n" .'* Philippines: ph'."\n" .'* Malaysia: my'."\n" .'* Vietnam: vn'."\n" .'* Argentina: AR'."\n" .'* Australia: au'."\n" .'* Brazil: br'."\n" .'* Colombia: co'."\n" .'* Germany: de'."\n" .'* UK: GB'."\n" .'* Peru: pe'."\n" .'* Saudi Arabia: sa'."\n" .'* Netherlands: nl'."\n" .'* South Africa: za'."\n", 'type' => 'string', 'example' => 'huadong', 'title' => ''], 'Isp' => ['description' => 'Supported ISPs are as follows. The parameter is left empty for regions outside the Chinese mainland. ISP:'."\n" ."\n" .'* China Mobile: cmcc'."\n" .'* China Telecom: chinanet'."\n" .'* China Unicom: unicom'."\n", 'type' => 'string', 'example' => 'unicom', 'title' => ''], 'Total' => ['description' => 'The number of replicas that are deployed.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Ready' => ['description' => 'The number of ready replicas.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'IsStaging' => ['description' => 'Whether it is a test environment.'."\n", 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'IsOffline' => ['description' => 'Whether smooth offline is being used.'."\n", 'type' => 'boolean', 'example' => 'false', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Invalid parameter. Check the parameter configuration.', 'description' => 'Invalid parameter. Check the parameter configuration.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'InvalidParameter.Appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the input application ID is incorrect. You can use the ListEdgeContainerApps API to obtain the application ID.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\",\\n \\"Regions\\": [\\n {\\n \\"Region\\": \\"huadong\\",\\n \\"Isp\\": \\"unicom\\",\\n \\"Total\\": 1,\\n \\"Ready\\": 1,\\n \\"IsStaging\\": false,\\n \\"IsOffline\\": false\\n }\\n ]\\n}","type":"json"}]', 'title' => 'GetEdgeContainerAppResourceStatus', 'changeSet' => [ ['createdAt' => '2025-07-09T17:07:02.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEdgeContainerAppResourceStatus'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetEdgeContainerAppResourceStatus', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'GetEdgeContainerAppStatus' => [ 'summary' => 'Queries the status information about a containerized application, including the deployment, release, and rollback of the application.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238718', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', 'schema' => ['description' => 'The application ID, which can be obtained by calling the [ListEdgeContainerApps](~~ListEdgeContainerApps~~) operation.'."\n", 'type' => 'string', 'required' => true, 'example' => 'app-88068867578379****', 'maxLength' => 64, 'minLength' => 20, 'title' => ''], ], [ 'name' => 'PublishEnv', 'in' => 'query', 'schema' => ['description' => 'The release environment. Valid values: prod and staging.'."\n", 'type' => 'string', 'required' => false, 'example' => 'staging', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247B78', 'title' => ''], 'AppStatus' => [ 'description' => 'The status of the application.'."\n", 'type' => 'object', 'properties' => [ 'PublishPercentage' => ['description' => 'The release percentage of the application.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '50%', 'title' => ''], 'RollbackTime' => ['description' => 'The time when the last rollback was performed.'."\n", 'type' => 'string', 'example' => '2024-07-25T05:58:05Z'."\n", 'title' => ''], 'PublishEnv' => ['description' => 'The environment to which the application was released. Valid values:'."\n" ."\n" .'* **prod**: the production environment.'."\n" .'* **staging**: the staging environment.'."\n", 'type' => 'string', 'example' => 'prod', 'title' => ''], 'PublishingVersion' => ['description' => 'The release version of the application.'."\n", 'type' => 'string', 'example' => 'ver-123123123123****'."\n", 'title' => ''], 'BaseLineVersion' => ['description' => 'The base version of the application.'."\n", 'type' => 'string', 'example' => 'ver-123123123123****'."\n", 'title' => ''], 'PublishStatus' => ['description' => 'The release status of the application. Valid values:'."\n" ."\n" .'* **publishing**'."\n" .'* **published**'."\n" .'* **rollbacking**'."\n" .'* **rollbacked**'."\n", 'type' => 'string', 'example' => 'pubishing', 'title' => ''], 'DeployTime' => ['description' => 'The time when the application was deployed. The time follows the ISO 8601 standard in the YYYY-MM-DDThh:mm:ssZ format. The time is displayed in UTC.'."\n", 'type' => 'string', 'example' => '2024-07-25T05:58:05Z'."\n", 'title' => ''], 'PublishTime' => ['description' => 'The time when the application was released. The time follows the ISO 8601 standard in the YYYY-MM-DDThh:mm:ssZ format. The time is displayed in UTC.'."\n", 'type' => 'string', 'example' => '2024-07-25T05:58:05Z'."\n", 'title' => ''], 'DeployedVersion' => ['description' => 'The release version of the application.'."\n", 'type' => 'string', 'example' => 'ver-123123123123****', 'title' => ''], 'ExpectPercentage' => ['description' => 'The expected release percentage of the application.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '50%', 'title' => ''], 'DeployStatus' => ['description' => 'The deployment status of the application.'."\n" ."\n" .'* **undeploy**: The application is not deployed.'."\n" .'* **deploying**: The application is being deployed.'."\n" .'* **deployed**: The application is deployed.'."\n" .'* **undeploying**: The deployment is being canceled.'."\n", 'type' => 'string', 'example' => 'undeploy', 'title' => ''], 'UnDeployTime' => ['description' => 'The time when the application deployment was canceled. The time follows the ISO 8601 standard in the YYYY-MM-DDThh:mm:ssZ format. The time is displayed in UTC.'."\n", 'type' => 'string', 'example' => '2024-07-25T05:58:05Z'."\n", 'title' => ''], 'PublishType' => ['description' => 'Specifies how the version is released. Valid values:'."\n" ."\n" .'* percentage: releases the version by percentage.'."\n" .'* region: releases the version by region.'."\n" ."\n" .'If you do not specify this parameter, the version is released by percentage by default.'."\n", 'type' => 'string', 'example' => 'percentage', 'title' => ''], 'Regions' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Region' => [ 'description' => 'The regions to which the version is released.'."\n", 'type' => 'array', 'items' => ['description' => 'The region name.'."\n", 'type' => 'string', 'example' => 'jiangsu', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'FullRelease' => ['description' => 'Specifies whether to fully release the version. This parameter takes effect only when PublishType is set to region.'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Invalid parameter. Check the parameter configuration.', 'description' => 'Invalid parameter. Check the parameter configuration.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247B78\\",\\n \\"AppStatus\\": {\\n \\"PublishPercentage\\": 0,\\n \\"RollbackTime\\": \\"2024-07-25T05:58:05Z\\\\n\\",\\n \\"PublishEnv\\": \\"prod\\",\\n \\"PublishingVersion\\": \\"ver-123123123123****\\\\n\\",\\n \\"BaseLineVersion\\": \\"ver-123123123123****\\\\n\\",\\n \\"PublishStatus\\": \\"pubishing\\",\\n \\"DeployTime\\": \\"2024-07-25T05:58:05Z\\\\n\\",\\n \\"PublishTime\\": \\"2024-07-25T05:58:05Z\\\\n\\",\\n \\"DeployedVersion\\": \\"ver-123123123123****\\",\\n \\"ExpectPercentage\\": 0,\\n \\"DeployStatus\\": \\"undeploy\\",\\n \\"UnDeployTime\\": \\"2024-07-25T05:58:05Z\\\\n\\",\\n \\"PublishType\\": \\"percentage\\",\\n \\"Regions\\": {\\n \\"Region\\": [\\n \\"jiangsu\\"\\n ]\\n },\\n \\"FullRelease\\": true\\n }\\n}","type":"json"}]', 'title' => 'GetEdgeContainerAppStatus', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEdgeContainerAppStatus'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:GetEdgeContainerAppStatus', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'GetEdgeContainerAppVersion' => [ 'summary' => 'Queries the information about a version of a containerized application. You can select an application version to release based on the version information.', 'methods' => ['get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238877', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', 'schema' => ['description' => 'The application ID, which can be obtained by calling the [ListEdgeContainerApps](~~ListEdgeContainerApps~~) operation.', 'type' => 'string', 'required' => true, 'maxLength' => 64, 'minLength' => 20, 'example' => 'app-88068867578379****', 'title' => ''], ], [ 'name' => 'VersionId', 'in' => 'query', 'schema' => ['description' => 'The version ID, which can be obtained by calling the [ListEdgeContainerAppVersions](~~ListEdgeContainerAppVersions~~) operation.', 'type' => 'string', 'required' => true, 'maxLength' => 64, 'minLength' => 20, 'example' => 'ver-87962637161651****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', 'title' => ''], 'Version' => [ 'description' => 'The information about the version.', 'type' => 'object', 'properties' => [ 'LastPublishTime' => ['description' => 'The time when the version was last released. The time follows the ISO 8601 standard in the YYYY-MM-DDThh:mm:ss format. The time is displayed in UTC.', 'type' => 'string', 'example' => '2023-07-25T04:58:05Z', 'title' => ''], 'PublishTime' => ['description' => 'The time when the version was released. The time follows the ISO 8601 standard in the YYYY-MM-DDThh:mm:ss format. The time is displayed in UTC.', 'type' => 'string', 'example' => '2022-11-14T02:04:03Z', 'title' => ''], 'Status' => ['description' => 'The status of the current version. Valid values:'."\n" ."\n" .'- created: The version is created.'."\n" ."\n" .'- failed: The version failed to be created.'."\n" ."\n" .'- creating: The version is being created.', 'type' => 'string', 'example' => 'created', 'title' => ''], 'CreateTime' => ['description' => 'The time when the version was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.', 'type' => 'string', 'example' => '2022-07-01T09:32:33Z', 'title' => ''], 'AppId' => ['description' => 'The application ID.', 'type' => 'string', 'example' => 'app-88068867578379****', 'title' => ''], 'VersionId' => ['description' => 'The ID of the created version.', 'type' => 'string', 'example' => 'ver-87962637161651****', 'title' => ''], 'Name' => ['description' => 'The version name.', 'type' => 'string', 'example' => 'test', 'title' => ''], 'UpdateTime' => ['description' => 'The time when the version was last modified. The time follows the ISO 8601 standard in the YYYY-MM-DDThh:mm:ss format. The time is displayed in UTC.', 'type' => 'string', 'example' => '2021-12-03T10:52:52Z', 'title' => ''], 'Remarks' => ['description' => 'The remarks.', 'type' => 'string', 'example' => 'aaa', 'title' => ''], 'Containers' => [ 'description' => 'The container images deployed for this version.', 'type' => 'array', 'items' => [ 'description' => 'The details of the container image deployed for this version.', 'type' => 'object', 'properties' => [ 'EnvVariables' => ['description' => 'The environment variables.', 'type' => 'string', 'example' => 'ENV=prod', 'title' => ''], 'Args' => ['description' => 'The arguments that are passed to the container startup command.', 'type' => 'string', 'example' => '-c /path/config.toml', 'title' => ''], 'Spec' => ['description' => 'The compute specification.', 'type' => 'string', 'example' => '1C2G', 'title' => ''], 'Storage' => ['description' => 'The storage capacity of the container. Valid values: 0.5G, 10G, 20G, and 30G.', 'type' => 'string', 'example' => '0.5G, 标识存储空间,取值范围(0.5G | 10G | 20G | 30G)', 'title' => ''], 'IsACRImage' => ['description' => 'Indicates whether the image is a Container Registry image.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'ACRImageInfo' => [ 'description' => 'The information about the Container Registry image.', 'type' => 'object', 'properties' => [ 'Domain' => ['description' => 'The domain name of the Container Registry image.', 'type' => 'string', 'example' => '*.mooc.seewo.com', 'title' => ''], 'InstanceId' => ['description' => 'The ID of the Container Registry instance.', 'type' => 'string', 'example' => 'xcdn-9ak2thl14z5s', 'title' => ''], 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'RepoId' => ['description' => 'The ID of the image repository.', 'type' => 'string', 'example' => 'crr-zeu0xyk28alyxozh', 'title' => ''], 'RepoName' => ['description' => 'The name of the image repository.', 'type' => 'string', 'example' => 'test_1', 'title' => ''], 'RepoNamespace' => ['description' => 'The namespace to which the image repository belongs.', 'type' => 'string', 'example' => 'wpy1', 'title' => ''], 'Tag' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'test-healthy-100-soa-1710987653', 'title' => ''], 'TagUrl' => ['description' => 'The URL of the Container Registry image tag.', 'type' => 'string', 'example' => 'registry-vpc.cn-shenzhen.aliyuncs.com/lihetech/easywits_server_exam:3.40.2', 'title' => ''], 'IsEnterpriseRegistry' => ['description' => 'Indicates whether the image is an enterprise-level image.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], ], 'title' => '', 'example' => '', ], 'Image' => ['description' => 'The image address.', 'type' => 'string', 'example' => 'nginx:1.14.0', 'title' => ''], 'Command' => ['description' => 'The command that is used to start the container.', 'type' => 'string', 'example' => 'sh abc.sh 1 2 3', 'title' => ''], 'ProbeType' => ['description' => 'The probe type.', 'type' => 'string', 'example' => 'httpGet', 'title' => ''], 'Name' => ['description' => 'The version name.', 'type' => 'string', 'example' => 'version01', 'title' => ''], 'PreStop' => ['description' => 'The command that is run before the container is stopped.', 'type' => 'string', 'example' => 'sh prestop.sh "echo hello world" ', 'title' => ''], 'PostStart' => ['description' => 'The command that is run before the container is started. Format: `{"exec":{"command":\\["cat","/etc/group"\\]}}`. If you want to cancel this configuration, set the parameter value to `""` or `{}`. If you do not specify this parameter, this configuration is ignored.', 'type' => 'string', 'example' => 'sh poststart.sh "echo hello world" ', 'title' => ''], 'ProbeContent' => [ 'description' => 'The probe content.', 'type' => 'object', 'properties' => [ 'SuccessThreshold' => ['description' => 'The number of consecutive successful health checks required for a container to be considered as healthy.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Host' => ['description' => 'The domain name that is used for health checks.', 'type' => 'string', 'example' => 'test.com', 'title' => ''], 'HttpHeaders' => ['description' => 'The request headers that are included in the container health check request.', 'type' => 'string', 'example' => '[{\\"Content-Type\\":\\"application/json', 'title' => ''], 'Scheme' => ['description' => 'The protocol that the container health check request uses.', 'type' => 'string', 'example' => 'http', 'title' => ''], 'InitialDelaySeconds' => ['description' => 'The latency for container probe initialization.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'Command' => ['description' => 'The probe command.', 'type' => 'string', 'example' => 'sh test.sh', 'title' => ''], 'FailureThreshold' => ['description' => 'The number of consecutive failed health checks required for a container to be considered as unhealthy.', 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''], 'TimeoutSeconds' => ['description' => 'The timeout period of the container health check.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], 'Path' => ['description' => 'The path of the container health check.', 'type' => 'string', 'example' => '/health_check', 'title' => ''], 'Port' => ['description' => 'The port of the container health check. Valid values: **1** to **65535**.', 'type' => 'integer', 'format' => 'int32', 'example' => '80', 'title' => ''], 'PeriodSeconds' => ['description' => 'The interval between container health checks.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidParameter.appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.'], ['errorCode' => 'InvalidVersion.NotFound', 'errorMessage' => 'The version does not exist.', 'description' => 'This version number does not exist.'."\n"], ['errorCode' => 'InvalidParameter.VersionId', 'errorMessage' => 'The specified VersionId is invalid.  Please check the VersionId parameter. You may not have entered the parameter or the parameter does not start with ver-string. Please modify it and call the interface again.', 'description' => 'The VersionId parameter is invalid. Please check the VersionId parameter. You may not have entered the parameter or the parameter does not start with ver-string. Please modify it and call the interface again.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'title' => 'GetEdgeContainerAppVersion', 'changeSet' => [ ['createdAt' => '2024-11-12T02:06:26.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEdgeContainerAppVersion'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetEdgeContainerAppVersion', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\",\\n \\"Version\\": {\\n \\"LastPublishTime\\": \\"2023-07-25T04:58:05Z\\",\\n \\"PublishTime\\": \\"2022-11-14T02:04:03Z\\",\\n \\"Status\\": \\"created\\",\\n \\"CreateTime\\": \\"2022-07-01T09:32:33Z\\",\\n \\"AppId\\": \\"app-88068867578379****\\",\\n \\"VersionId\\": \\"ver-87962637161651****\\",\\n \\"Name\\": \\"test\\",\\n \\"UpdateTime\\": \\"2021-12-03T10:52:52Z\\",\\n \\"Remarks\\": \\"aaa\\",\\n \\"Containers\\": [\\n {\\n \\"EnvVariables\\": \\"ENV=prod\\",\\n \\"Args\\": \\"-c /path/config.toml\\",\\n \\"Spec\\": \\"1C2G\\",\\n \\"Storage\\": \\"0.5G, 标识存储空间,取值范围(0.5G | 10G | 20G | 30G)\\",\\n \\"IsACRImage\\": false,\\n \\"ACRImageInfo\\": {\\n \\"Domain\\": \\"*.mooc.seewo.com\\",\\n \\"InstanceId\\": \\"xcdn-9ak2thl14z5s\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"RepoId\\": \\"crr-zeu0xyk28alyxozh\\",\\n \\"RepoName\\": \\"test_1\\",\\n \\"RepoNamespace\\": \\"wpy1\\",\\n \\"Tag\\": \\"test-healthy-100-soa-1710987653\\",\\n \\"TagUrl\\": \\"registry-vpc.cn-shenzhen.aliyuncs.com/lihetech/easywits_server_exam:3.40.2\\",\\n \\"IsEnterpriseRegistry\\": false\\n },\\n \\"Image\\": \\"nginx:1.14.0\\",\\n \\"Command\\": \\"sh abc.sh 1 2 3\\",\\n \\"ProbeType\\": \\"httpGet\\",\\n \\"Name\\": \\"version01\\",\\n \\"PreStop\\": \\"sh prestop.sh \\\\\\"echo hello world\\\\\\" \\",\\n \\"PostStart\\": \\"sh poststart.sh \\\\\\"echo hello world\\\\\\" \\",\\n \\"ProbeContent\\": {\\n \\"SuccessThreshold\\": 1,\\n \\"Host\\": \\"test.com\\",\\n \\"HttpHeaders\\": \\"[{\\\\\\\\\\\\\\"Content-Type\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"application/json\\",\\n \\"Scheme\\": \\"http\\",\\n \\"InitialDelaySeconds\\": 20,\\n \\"Command\\": \\"sh test.sh\\",\\n \\"FailureThreshold\\": 3,\\n \\"TimeoutSeconds\\": 5,\\n \\"Path\\": \\"/health_check\\",\\n \\"Port\\": 80,\\n \\"PeriodSeconds\\": 5\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'GetEdgeContainerDeployRegions' => [ 'summary' => 'Retrieves the deployment regions of an edge container application by application ID.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238476', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', 'schema' => ['description' => 'The application ID. You can call the [ListEdgeContainerApps](~~ListEdgeContainerApps~~) operation to obtain the application ID.>This parameter is required. If this parameter is not specified, the service returns InvalidParameter.appid (400). The valid format is app-{18-digit number}. You can call the ListEdgeContainerApps operation to obtain the application ID. Example: app-880****75783794688. If you have not activated the Edge Container service, activate it first and then call the CreateEdgeContainerApp operation to create an application and obtain the AppId..', 'type' => 'string', 'required' => false, 'example' => 'GetEdgeContainerDeployRegions', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395'], 'Regions' => [ 'description' => 'The list of regions.', 'type' => 'array', 'items' => ['description' => 'The available region.', 'type' => 'string', 'example' => 'zhejiang', 'title' => ''], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395\\",\\n \\"Regions\\": [\\n \\"zhejiang\\"\\n ]\\n}","type":"json"}]', 'title' => 'Get edge container application deployment regions', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEdgeContainerDeployRegions'], ], ], 'ramActions' => [], ], 'GetEdgeContainerLogs' => [ 'summary' => 'Retrieves log information for an edge container. You can specify the number of output lines.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238630', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', 'schema' => ['description' => 'The application ID. You can call the [ListEdgeContainerApps](~~ListEdgeContainerApps~~) operation to obtain the application ID.', 'type' => 'string', 'required' => true, 'example' => 'app-88068867578379****', 'title' => ''], ], [ 'name' => 'Lines', 'in' => 'query', 'schema' => [ 'description' => 'The number of log lines to output.>Valid values: 1 to 5000. If the value exceeds the upper limit, an error is returned..', 'enumValueTitles' => [], 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '500', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247B78'], 'Items' => [ 'description' => 'The log list.', 'type' => 'array', 'items' => ['description' => 'The log content.', 'type' => 'string', 'example' => 'hello world.', 'title' => ''], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247B78\\",\\n \\"Items\\": [\\n \\"hello world.\\"\\n ]\\n}","type":"json"}]', 'title' => 'Retrieve edge container log information', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEdgeContainerLogs'], ], ], 'ramActions' => [], ], 'GetEdgeContainerStagingDeployStatus' => [ 'summary' => 'Retrieves the staging environment deployment status of an application by application ID.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238416', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', 'schema' => ['description' => 'The application ID. You can call [ListEdgeContainerApps](~~ListEdgeContainerApps~~) to obtain the application ID.'."\n" .'>AppId is required. If AppId is not specified, the API returns InvalidParameter.appid (400). You can call ListEdgeContainerApps to obtain the application ID. '."\n" .'The AppId format is the prefix app- followed by 18 or more digits (at least 20 characters in total). You can obtain the actual value from the AppId field in the ListEdgeContainerApps response.'."\n" .'Complete call chain example: CreateEdgeContainerApp → Call ListEdgeContainerApps to obtain AppId → GetEdgeContainerStagingDeployStatus.', 'type' => 'string', 'required' => false, 'example' => 'GetEdgeContainerStagingDeployStatus', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'Phase' => ['description' => 'The status of the container in the staging environment. Valid values:'."\n" .'- NoContainer: no container.'."\n" .'- Pending: pending deployment.'."\n" .'- ContainerCreating: the container is being created.'."\n" .'- Running: running.'."\n" .'- Succeeded: completed.'."\n" .'- ImagePullBackOff: image pull failed.'."\n" .'- CrashLoopBackOff: abnormal container startup.'."\n" .'- Failed: failed.'."\n" .'- Unknown: unknown.', 'type' => 'string', 'example' => 'Running', 'title' => ''], 'CreationTimestamp' => ['description' => 'The creation time (UNIX timestamp).', 'type' => 'string', 'example' => '2024-09-24T06:46:35Z', 'title' => ''], 'Initialized' => ['description' => 'The container initialization status. Valid values:'."\n" ."\n" .'- **ok**: Succeeded.'."\n" ."\n" .'- **unready**: Not completed.', 'type' => 'string', 'example' => 'ok', 'title' => ''], 'Scheduled' => ['description' => 'The container scheduling status. Valid values:'."\n" ."\n" .'- **ok**: Succeeded.'."\n" ."\n" .'- **unready**: Not completed.', 'type' => 'string', 'example' => 'ok', 'title' => ''], 'Ready' => ['description' => 'Indicates whether the container is ready to receive traffic. Valid values:'."\n" ."\n" .'- **ok**: Ready.'."\n" ."\n" .'- **unready**: Not ready.', 'type' => 'string', 'example' => 'ok', 'title' => ''], 'ContainersReady' => ['description' => 'Indicates whether the container status is ready. Valid values:'."\n" ."\n" .'- **ok**: Ready.'."\n" ."\n" .'- **unready**: Not ready.', 'type' => 'string', 'example' => 'ok', 'title' => ''], 'PodRestartState' => [ 'description' => 'The container restart status.', 'type' => 'object', 'properties' => [ 'RestartCount' => ['description' => 'The number of restarts.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'LastTerminatedReason' => ['description' => 'The reason for the last restart.', 'type' => 'string', 'example' => 'OOMKilled', 'title' => ''], ], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '2F2C992B-3FE2-5EBB-A61F-F9DD4EB257DA', 'title' => ''], 'VIPs' => [ 'description' => 'The list of VIPs.', 'type' => 'array', 'items' => ['description' => 'VIP', 'type' => 'string', 'example' => '1.1.1.1', 'title' => ''], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Phase\\": \\"Running\\",\\n \\"CreationTimestamp\\": \\"2024-09-24T06:46:35Z\\",\\n \\"Initialized\\": \\"ok\\",\\n \\"Scheduled\\": \\"ok\\",\\n \\"Ready\\": \\"ok\\",\\n \\"ContainersReady\\": \\"ok\\",\\n \\"PodRestartState\\": {\\n \\"RestartCount\\": 1,\\n \\"LastTerminatedReason\\": \\"OOMKilled\\"\\n },\\n \\"RequestId\\": \\"2F2C992B-3FE2-5EBB-A61F-F9DD4EB257DA\\",\\n \\"VIPs\\": [\\n \\"1.1.1.1\\"\\n ]\\n}","type":"json"}]', 'title' => 'Get application staging environment deployment status', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEdgeContainerStagingDeployStatus'], ], ], 'ramActions' => [], ], 'GetEdgeContainerTerminal' => [ 'summary' => 'Retrieves terminal information of an edge container application.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238310', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', 'schema' => ['description' => 'The application ID. You can call the [ListEdgeContainerApps](~~ListEdgeContainerApps~~) operation to obtain the application ID.'."\n" .'This parameter is required. If this parameter is not specified, the API returns InvalidParameter.appid(400).'."\n" .'Full dependency chain: CreateEdgeContainerApp → CreateEdgeContainerAppVersion → PublishEdgeContainerAppVersion → Wait for the container status to become Running → Call this API..', 'type' => 'string', 'required' => false, 'example' => 'app-88068867578379****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '9732E117-8A37-49FD-A36F-ABBB87556CA7'], 'Pod' => ['description' => 'The pod name.', 'type' => 'string', 'example' => '1775b9e0-8463-457e-89e8-fb7b6d125b2e', 'title' => ''], 'Cluster' => ['description' => 'The cluster name.', 'type' => 'string', 'example' => 'c497b44c2a59f4ae0bd2826edc40a2c6e', 'title' => ''], 'Namespace' => ['description' => 'The namespace name.', 'type' => 'string', 'example' => 'ns1', 'title' => ''], 'Container' => ['description' => 'The container name.', 'type' => 'string', 'example' => 'worker0', 'title' => ''], 'SessionId' => ['description' => 'The session ID.', 'type' => 'string', 'example' => 'af22f4xxxxxxxxxxxxxxxxxx', 'title' => ''], 'Token' => ['description' => 'The sharing token information.', 'type' => 'string', 'example' => 'af22f4-xxxxx-xxxx-xxxx-xxxx', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9732E117-8A37-49FD-A36F-ABBB87556CA7\\",\\n \\"Pod\\": \\"1775b9e0-8463-457e-89e8-fb7b6d125b2e\\",\\n \\"Cluster\\": \\"c497b44c2a59f4ae0bd2826edc40a2c6e\\",\\n \\"Namespace\\": \\"ns1\\",\\n \\"Container\\": \\"worker0\\",\\n \\"SessionId\\": \\"af22f4xxxxxxxxxxxxxxxxxx\\",\\n \\"Token\\": \\"af22f4-xxxxx-xxxx-xxxx-xxxx\\"\\n}","type":"json"}]', 'title' => 'Retrieve edge container application terminal information', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEdgeContainerTerminal'], ], ], 'ramActions' => [], ], 'GetErService' => [ 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239198', 'abilityTreeNodes' => ['FEATUREdcdnGMYWU5'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-A198-72F8FD6DA2FE'], 'PlanName' => ['description' => 'The billing mode. Valid values:'."\n" ."\n" .'* er_paymode: billed for customers on the China site.'."\n" .'* er_freemode: free for customers on the China site.'."\n" .'* er_paymodeintl: billed for customers on the International site.'."\n" .'* err_freemodeintl: free for customers on the International site'."\n", 'type' => 'string', 'example' => 'er_paymode', 'title' => ''], 'Status' => ['description' => 'The service status. Valid values:'."\n" ."\n" .'* Creating'."\n" .'* Running'."\n" .'* NotOpened'."\n", 'type' => 'string', 'example' => 'Running', 'title' => ''], ], 'example' => '', ], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'GetErService', 'summary' => 'Checks the status of Edge Routine.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetErService'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:GetErService', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-A198-72F8FD6DA2FE\\",\\n \\"PlanName\\": \\"er_paymode\\",\\n \\"Status\\": \\"Running\\"\\n}","type":"json"}]', ], 'GetFailFile' => [ 'summary' => 'Downloads the failed file for a specified upload task.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238908', 'abilityTreeNodes' => ['FEATUREdcdnBCJPGN', 'FEATUREdcdnRELTJV', 'FEATUREdcdnEWYS3A', 'FEATUREdcdn4TTNAL'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can obtain this by calling the [ListSites](~~ListSites~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'UploadId', 'in' => 'query', 'schema' => ['description' => 'The file upload task ID. You can obtain this by calling the [UploadFile](~~2850466~~) operation to create an upload task, or by calling the [ListUploadTasks](~~2851127~~) operation to query existing tasks.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1593805857882113', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'], 'DownloadLink' => ['description' => 'The download link for the failed task file.', 'type' => 'string', 'example' => 'https://****.oss-cn-shenzhen.aliyuncs.com/fail-1593805857882113?Expires=1708659191&OSSAccessKeyId=**********&Signature=**********', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingTimeParameter', 'errorMessage' => 'The StartTime and EndTime must be both specified.', 'description' => 'Please provide both a start time and an end time.'], ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'DomainNameOverLimit', 'errorMessage' => 'A maximum of 500 domains are supported for each request.', 'description' => 'Only 500 domain names are supported at a time. Please reduce the number of domain names to request again.'], ['errorCode' => 'InvalidTime', 'errorMessage' => 'The query time cannot exceed the last 3 days.', 'description' => 'The query time cannot exceed the last 3 days.'], ['errorCode' => 'MissingParameter.ObjectType', 'errorMessage' => 'The ObjectType parameter is required if DomainName or ObjectType is specified.', 'description' => 'Specify the ObjectType parameter.'], ['errorCode' => 'InvalidStationParameter', 'errorMessage' => 'The specified Station is invalid.', 'description' => 'The specified node parameter is invalid.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ['errorCode' => 'InvalidTaskId.Malformed', 'errorMessage' => 'The specified taskId is invalid.', 'description' => 'The specified task ID is invalid.'], ['errorCode' => 'InvalidParameters.InvalidUrls', 'errorMessage' => 'The specified urls are invalid.', 'description' => 'The requested URL parameter is invalid.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\",\\n \\"DownloadLink\\": \\"https://****.oss-cn-shenzhen.aliyuncs.com/fail-1593805857882113?Expires=1708659191&OSSAccessKeyId=**********&Signature=**********\\"\\n}","type":"json"}]', 'title' => 'Get failed file download link', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetFailFile', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'GetHttpIncomingRequestHeaderModificationRule' => [ 'summary' => 'Queries the configuration details of an HTTP request header modification rule for a website.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257648', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '608665779308176', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The ID of the configuration. You can call the ListHttpIncomingRequestHeaderModificationRules operation to query the ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '433045006266368', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '5CC228B4-7A67-4016-9C9F-4A4133494A91'], 'ConfigId' => ['description' => 'The ID of the configuration.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '402411533580288', 'title' => ''], 'ConfigType' => ['description' => 'The type of the configuration. Valid values:'."\n" ."\n" .'* global: the global configuration.'."\n" .'* rule: the rule configuration.'."\n", 'type' => 'string', 'example' => 'global', 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the website configurations. You can use this parameter to specify a version of your website to apply the feature settings. By default, version 0 is used.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Sequence' => ['description' => 'The order in which the rule is executed. A smaller value gives priority to the rule.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RuleEnable' => ['description' => 'Specifies whether to enable the rule. Valid values: You do not need to set this parameter when you add global configuration. Valid values:'."\n" ."\n" .'* on'."\n" .'* off'."\n", 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'The content of the rule. A conditional expression is used to match a user request. You do not need to set this parameter when you add global configuration. Use cases:'."\n" ."\n" .'* true: Match all incoming requests.'."\n" .'* Set the value to a custom expression, for example: (http.host eq "video.example.com"): Match the specified request.'."\n", 'type' => 'string', 'example' => '(http.host eq "video.example.com")', 'title' => ''], 'RuleName' => ['description' => 'The rule name. You do not need to set this parameter when you add global configuration.'."\n", 'type' => 'string', 'example' => 'rule_example'."\n", 'title' => ''], 'RequestHeaderModification' => [ 'description' => 'The configurations for modifying request headers. You can add, delete, or edit a request header.'."\n", 'type' => 'array', 'items' => [ 'description' => 'The configuration of modifying a request header.'."\n", 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the request header.'."\n", 'type' => 'string', 'example' => 'headerName', 'title' => ''], 'Operation' => ['description' => 'The action. Valid values:'."\n" ."\n" .'* add: adds a response header.'."\n" .'* del: deletes a response header.'."\n" .'* modify: modifies a response header.'."\n", 'type' => 'string', 'example' => 'add', 'title' => ''], 'Value' => ['description' => 'The value of the request header.'."\n", 'type' => 'string', 'example' => 'headValue', 'title' => ''], 'Type' => ['description' => 'The value type. Valid values:'."\n" ."\n" .'* static'."\n" .'* dynamic'."\n", 'type' => 'string', 'example' => 'static', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"5CC228B4-7A67-4016-9C9F-4A4133494A91\\",\\n \\"ConfigId\\": 402411533580288,\\n \\"ConfigType\\": \\"global\\",\\n \\"SiteVersion\\": 0,\\n \\"Sequence\\": 1,\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\"video.example.com\\\\\\")\\",\\n \\"RuleName\\": \\"rule_example\\\\n\\",\\n \\"RequestHeaderModification\\": [\\n {\\n \\"Name\\": \\"headerName\\",\\n \\"Operation\\": \\"add\\",\\n \\"Value\\": \\"headValue\\",\\n \\"Type\\": \\"static\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'GetHttpIncomingRequestHeaderModificationRule', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetHttpIncomingRequestHeaderModificationRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'read', ], 'GetHttpIncomingResponseHeaderModificationRule' => [ 'summary' => 'Queries the configuration details of an incoming HTTP response header modification rule for a website.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257653', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '347168101647504', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID. You can call the ListHttpIncomingResponseHeaderModificationRules operation to query the ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '430509230649344', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395'], 'ConfigId' => ['description' => 'The configuration ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '432637955352576', 'title' => ''], 'ConfigType' => ['description' => 'The configuration type. Valid values:'."\n" ."\n" .'* global: global configurations.'."\n" .'* rule: rule configurations.'."\n", 'type' => 'string', 'example' => 'rule', 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the configurations. You can use this parameter to specify a version of your website to apply the feature settings. By default, version 0 is used.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Sequence' => ['description' => 'The order in which the rule is executed. A smaller value gives priority to the rule.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RuleEnable' => ['description' => 'Specifies whether to enable the rule. Valid values: You do not need to set this parameter when you add global configuration. Specifies whether to check the image used by the instance supports hot migration. Valid values:'."\n" ."\n" .'* on'."\n" .'* off'."\n", 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'The content of the rule. A conditional expression is used to match a user request. You do not need to set this parameter when you add global configuration. Use cases:'."\n" ."\n" .'* true: Match all incoming requests.'."\n" .'* Set the value to a custom expression, for example, (http.host eq "video.example.com"): Match the specified request.'."\n", 'type' => 'string', 'example' => '(http.host eq "video.example.com")'."\n", 'title' => ''], 'RuleName' => ['description' => 'The rule name. You do not need to set this parameter when you add global configuration.'."\n", 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'ResponseHeaderModification' => [ 'description' => 'The configurations of modifying response headers. You can add, delete, or modify a response header.'."\n", 'type' => 'array', 'items' => [ 'description' => 'The configuration of modifying a response header.'."\n", 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the response header.'."\n", 'type' => 'string', 'example' => 'headerName', 'title' => ''], 'Operation' => ['description' => 'The action. Valid values:'."\n" ."\n" .'* add: adds a response header.'."\n" .'* del: deletes a response header.'."\n" .'* modify: modifies a response header.'."\n", 'type' => 'string', 'example' => 'add', 'title' => ''], 'Value' => ['description' => 'The value of the response header.'."\n", 'type' => 'string', 'example' => 'headerValue', 'title' => ''], 'Type' => ['description' => 'The value type. Valid values:'."\n" ."\n" .'* static'."\n" .'* dynamic'."\n", 'type' => 'string', 'example' => 'static', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395\\",\\n \\"ConfigId\\": 432637955352576,\\n \\"ConfigType\\": \\"rule\\",\\n \\"SiteVersion\\": 0,\\n \\"Sequence\\": 1,\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\"video.example.com\\\\\\")\\\\n\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"ResponseHeaderModification\\": [\\n {\\n \\"Name\\": \\"headerName\\",\\n \\"Operation\\": \\"add\\",\\n \\"Value\\": \\"headerValue\\",\\n \\"Type\\": \\"static\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'GetHttpIncomingResponseHeaderModificationRule', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetHttpIncomingResponseHeaderModificationRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'read', ], 'GetHttpRequestHeaderModificationRule' => [ 'summary' => 'Retrieves the details of an HTTP request header modification rule for a site.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257648', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The ID of the site. You can obtain this ID by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID. You can obtain this ID by calling the [ListHttpRequestHeaderModificationRules](~~2867483~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '3528160969****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response to the request.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74'], 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '3528160969****'."\n", 'title' => ''], 'ConfigType' => ['description' => 'The configuration type. Valid values:'."\n" ."\n" .'- global: A global configuration.'."\n" ."\n" .'- rule: A rule-based configuration.', 'type' => 'string', 'example' => 'global', 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the site configuration. For sites with version management enabled, this parameter specifies the site version to which the configuration applies. The default value is 0.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Sequence' => ['description' => 'The execution order of the rule. Rules with smaller values are executed first.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RuleEnable' => ['description' => 'Specifies whether the rule is enabled. This parameter is not required for global configurations. Valid values:'."\n" ."\n" .'- on: The rule is enabled.'."\n" ."\n" .'- off: The rule is disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'The content of the rule, which uses a conditional expression to match user requests. This parameter is not required for global configurations. There are two scenarios:'."\n" ."\n" .'- To match all incoming requests, set the value to true.'."\n" ."\n" .'- To match specific requests, set the value to a custom expression, such as (http.host eq "video.example.com").', 'type' => 'string', 'example' => '(http.host eq "video.example.com")', 'title' => ''], 'RuleName' => ['description' => 'The name of the rule. This parameter is not required for global configurations.', 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'RequestHeaderModification' => [ 'description' => 'The request header modifications. The add, delete, and modify operations are supported.', 'type' => 'array', 'items' => [ 'description' => 'The details of the request header modification.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the request header.', 'type' => 'string', 'example' => 'headerName', 'title' => ''], 'Operation' => ['description' => 'The operation to perform. Valid values:'."\n" ."\n" .'- add: Adds a header.'."\n" ."\n" .'- del: Deletes a header.'."\n" ."\n" .'- modify: Modifies a header.', 'type' => 'string', 'example' => 'add', 'title' => ''], 'Value' => ['description' => 'The value of the request header.', 'type' => 'string', 'example' => 'headValue', 'title' => ''], 'Type' => ['description' => 'The type of the value. Valid values:'."\n" ."\n" .'- static: A static value.'."\n" ."\n" .'- dynamic: A dynamic value.', 'type' => 'string', 'example' => 'static', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'title' => 'Query HTTP Request Header Configuration Details', 'changeSet' => [ ['createdAt' => '2025-04-10T07:02:39.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetHttpRequestHeaderModificationRule'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetHttpRequestHeaderModificationRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\",\\n \\"ConfigId\\": 0,\\n \\"ConfigType\\": \\"global\\",\\n \\"SiteVersion\\": 0,\\n \\"Sequence\\": 1,\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\"video.example.com\\\\\\")\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"RequestHeaderModification\\": [\\n {\\n \\"Name\\": \\"headerName\\",\\n \\"Operation\\": \\"add\\",\\n \\"Value\\": \\"headValue\\",\\n \\"Type\\": \\"static\\"\\n }\\n ]\\n}","type":"json"}]', ], 'GetHttpResponseHeaderModificationRule' => [ 'summary' => 'Queries the details of an HTTP response header modification rule for a site.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257653', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can obtain the site ID by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID. You can obtain the configuration ID by calling the [ListHttpResponseHeaderModificationRules](~~2867483~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '35281609698****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The data returned.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395'], 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '35281609698****', 'title' => ''], 'ConfigType' => ['description' => 'The configuration type. Valid values:'."\n" ."\n" .'- `global`: global configuration.'."\n" ."\n" .'- `rule`: rule configuration.', 'type' => 'string', 'example' => 'rule', 'title' => ''], 'SiteVersion' => ['description' => 'The version of the site configuration. If configuration versioning is enabled for the site, this parameter specifies the version to which this configuration applies. The default value is 0.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Sequence' => ['description' => 'The rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RuleEnable' => ['description' => 'The rule switch. This parameter applies only to rule configurations. Valid values:'."\n" ."\n" .'- `on`: The rule is enabled.'."\n" ."\n" .'- `off`: The rule is disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'The rule content, a conditional expression used to match user requests. This parameter applies only to rule configurations. The expression can be:'."\n" ."\n" .'- `true`: Matches all incoming requests.'."\n" ."\n" .'- A custom expression, such as `(http.host eq "video.example.com")`: Matches specific requests.', 'type' => 'string', 'example' => '(http.host eq "video.example.com")', 'title' => ''], 'RuleName' => ['description' => 'The rule name. This parameter applies only to rule configurations.', 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'ResponseHeaderModification' => [ 'description' => 'A list of modifications to apply to the response header.', 'type' => 'array', 'items' => [ 'description' => 'The details of a single response header modification.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The response header name.', 'type' => 'string', 'example' => 'headerName', 'title' => ''], 'Operation' => ['description' => 'The operation. Valid values:'."\n" ."\n" .'- `add`: Adds a header.'."\n" ."\n" .'- `del`: Deletes a header.'."\n" ."\n" .'- `modify`: Modifies a header.', 'type' => 'string', 'example' => 'add', 'title' => ''], 'Value' => ['description' => 'The response header value.', 'type' => 'string', 'example' => 'headerValue', 'title' => ''], 'Type' => ['description' => 'The value type. Valid values:'."\n" ."\n" .'- `static`: static mode.'."\n" ."\n" .'- `dynamic`: dynamic mode.', 'type' => 'string', 'example' => 'static', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'title' => 'Query HTTP Response Header Configuration Details', 'changeSet' => [ ['createdAt' => '2025-04-10T07:02:38.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetHttpResponseHeaderModificationRule'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetHttpResponseHeaderModificationRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395\\",\\n \\"ConfigId\\": 0,\\n \\"ConfigType\\": \\"rule\\",\\n \\"SiteVersion\\": 0,\\n \\"Sequence\\": 1,\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\"video.example.com\\\\\\")\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"ResponseHeaderModification\\": [\\n {\\n \\"Name\\": \\"headerName\\",\\n \\"Operation\\": \\"add\\",\\n \\"Value\\": \\"headerValue\\",\\n \\"Type\\": \\"static\\"\\n }\\n ]\\n}","type":"json"}]', ], 'GetHttpsApplicationConfiguration' => [ 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257600', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can obtain this ID by calling the [ListSites](~~ListSites~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID. You can obtain this ID by calling the [listHttpsApplicationConfigurations](~~2869087~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '352816096987136', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response schema.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'A3790430-3A06-535F-A424-0998BD9A6C9F'], 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '352816096987136', 'title' => ''], 'ConfigType' => ['description' => 'The configuration type. You can query for a global or rule configuration based on this parameter. Valid values:'."\n" ."\n" .'- `global`: a global configuration.'."\n" ."\n" .'- `rule`: a rule configuration.', 'type' => 'string', 'example' => 'global', 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the site configuration. For sites with configuration versioning enabled, this parameter specifies the applicable site version. The default is version `0`.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Sequence' => ['description' => 'The rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RuleEnable' => ['description' => 'Specifies whether to enable the rule. This parameter is not required for a global configuration. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'The conditional expression used to match user requests. This parameter is not required for a global configuration. There are two scenarios:'."\n" ."\n" .'- To match all incoming requests, set the value to `true`.'."\n" ."\n" .'- To match specific requests, set the value to a custom expression, such as `(http.host eq "video.example.com")`.', 'type' => 'string', 'example' => '(http.host eq \\"video.example.com\\")', 'title' => ''], 'RuleName' => ['description' => 'The rule name. This parameter is not required for a global configuration.', 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'HttpsForce' => ['description' => 'Specifies whether to enable force HTTPS, which is disabled by default. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'HttpsForceCode' => ['description' => 'The status code for the force HTTPS redirect. Valid values:'."\n" ."\n" .'- `301`'."\n" ."\n" .'- `302`'."\n" ."\n" .'- `307`'."\n" ."\n" .'- `308`', 'type' => 'string', 'example' => '301', 'title' => ''], 'AltSvc' => ['description' => 'Specifies whether to enable the Alt-Svc feature, which is disabled by default. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'AltSvcClear' => ['description' => 'Specifies whether to include the `clear` parameter in the Alt-Svc header, which is disabled by default. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'AltSvcPersist' => ['description' => 'Specifies whether to include the `persist` parameter in the Alt-Svc header, which is disabled by default. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'AltSvcMa' => ['description' => 'The Alt-Svc max-age, in seconds. Default: `86400`.', 'type' => 'string', 'example' => '86400', 'title' => ''], 'Hsts' => ['description' => 'Specifies whether to enable HSTS, which is disabled by default. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'HstsMaxAge' => ['description' => 'The value of the `max-age` directive for HSTS, in seconds.', 'type' => 'string', 'example' => '3600', 'title' => ''], 'HstsIncludeSubdomains' => ['description' => 'Specifies whether to include subdomains in the HSTS policy, which is disabled by default. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'HstsPreload' => ['description' => 'Specifies whether to enable HSTS preload, which is disabled by default. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'HttpsSniVerify' => ['description' => 'Specifies whether to enable SNI verification, which is disabled by default. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'HttpsNoSniDeny' => ['description' => 'Specifies whether to deny TLS handshakes that lack an SNI, which is disabled by default. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'HttpsSniWhitelist' => ['description' => 'The SNI allowlist. Separate multiple values with a space.', 'type' => 'string', 'example' => 'abc edf', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Query Site HTTPS Application Configuration', 'summary' => 'Retrieves a single HTTPS application configuration.', 'changeSet' => [ ['createdAt' => '2025-06-03T07:09:13.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetHttpsApplicationConfiguration'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetHttpsApplicationConfiguration', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A3790430-3A06-535F-A424-0998BD9A6C9F\\",\\n \\"ConfigId\\": 352816096987136,\\n \\"ConfigType\\": \\"global\\",\\n \\"SiteVersion\\": 1,\\n \\"Sequence\\": 1,\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\\\\\\\\\"video.example.com\\\\\\\\\\\\\\")\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"HttpsForce\\": \\"on\\",\\n \\"HttpsForceCode\\": \\"301\\",\\n \\"AltSvc\\": \\"on\\",\\n \\"AltSvcClear\\": \\"on\\",\\n \\"AltSvcPersist\\": \\"on\\",\\n \\"AltSvcMa\\": \\"86400\\",\\n \\"Hsts\\": \\"on\\",\\n \\"HstsMaxAge\\": \\"3600\\",\\n \\"HstsIncludeSubdomains\\": \\"on\\",\\n \\"HstsPreload\\": \\"on\\",\\n \\"HttpsSniVerify\\": \\"on\\",\\n \\"HttpsNoSniDeny\\": \\"on\\",\\n \\"HttpsSniWhitelist\\": \\"abc edf\\"\\n}","type":"json"}]', ], 'GetHttpsBasicConfiguration' => [ 'summary' => 'Query a Single HTTPS Basic Configuration', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257602', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID, which can be obtained by calling the [ListSites](~~ListSites~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'ConfigId of the configuration, which can be obtained by calling the [ListHttpsBasicConfigurations](~~2867470~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '352816096987136', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => 'C370DAF1-C838-4288-A1A0-9A87633D2***'], 'ConfigId' => ['description' => 'Configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '352816096987136', 'title' => ''], 'ConfigType' => ['description' => 'Configuration type, which can be used to query global or rule configurations. Value range:'."\n" .'- global: Query global configuration;'."\n" .'- rule: Query rule configuration;', 'type' => 'string', 'example' => 'global', 'title' => ''], 'Sequence' => ['description' => 'Rule execution sequence.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RuleEnable' => ['description' => 'Rule switch. Value range:'."\n" ."\n" .'- on: Enable.'."\n" .'- off: Disable.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'Matching rule content.', 'type' => 'string', 'example' => '(http.host eq \\"video.example.com\\")'."\n", 'title' => ''], 'RuleName' => ['description' => 'Rule name.', 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'Https' => ['description' => 'Whether to enable HTTPS, default is enabled. Value range:'."\n" ."\n" .'- on: Enable.'."\n" .'- off: Disable.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Tls10' => ['description' => 'Whether to enable TLS1.0, default is disabled. Value range:'."\n" .'- on: Enable.'."\n" .'- off: Disable.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Tls11' => ['description' => 'Whether to enable TLS1.1, default is disabled. Value range:'."\n" .'- on: Enable.'."\n" .'- off: Disable.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Tls12' => ['description' => 'Whether to enable TLS1.2, default is disabled. Value range:'."\n" .'- on: Enable.'."\n" .'- off: Disable.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Tls13' => ['description' => 'Whether to enable TLS1.3, default is disabled. Value range:'."\n" .'- on: Enable.'."\n" .'- off: Disable.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'CiphersuiteGroup' => ['description' => 'Cipher suite group, default is all cipher suites. Value range:'."\n" ."\n" .'- all: All cipher suites.'."\n" .'- strict: Strong cipher suites.'."\n" .'- custom: Custom cipher suites.', 'type' => 'string', 'example' => 'all', 'title' => ''], 'Ciphersuite' => ['description' => 'Custom cipher suite, indicating the specific encryption algorithm selected when CiphersuiteGroup is set to custom.', 'type' => 'string', 'example' => 'TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256', 'title' => ''], 'OcspStapling' => ['description' => 'Whether to enable OCSP, default is disabled. Value range:'."\n" ."\n" .'- on: Enable.'."\n" .'- off: Disable.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Http2' => ['description' => 'Whether to enable HTTP2, default is enabled. Value range:'."\n" ."\n" .'- on: Enable.'."\n" .'- off: Disable.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Http3' => ['description' => 'Whether to enable HTTP3, which is enabled by default. The value can be:'."\n" .'- on: Enabled. '."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C370DAF1-C838-4288-A1A0-9A87633D2***\\",\\n \\"ConfigId\\": 352816096987136,\\n \\"ConfigType\\": \\"global\\",\\n \\"Sequence\\": 1,\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\\\\\\\\\"video.example.com\\\\\\\\\\\\\\")\\\\n\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"Https\\": \\"on\\",\\n \\"Tls10\\": \\"on\\",\\n \\"Tls11\\": \\"on\\",\\n \\"Tls12\\": \\"on\\",\\n \\"Tls13\\": \\"on\\",\\n \\"CiphersuiteGroup\\": \\"all\\",\\n \\"Ciphersuite\\": \\"TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256\\",\\n \\"OcspStapling\\": \\"on\\",\\n \\"Http2\\": \\"on\\",\\n \\"Http3\\": \\"on\\"\\n}","type":"json"}]', 'title' => 'Query Site HTTPS Basic Configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetHttpsBasicConfiguration'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetHttpsBasicConfiguration', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'read', ], 'GetIPv6' => [ 'summary' => 'Queries the IPv6 configuration for a site.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257435', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The ID of the site. To obtain this ID, call the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The data returned.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.', 'type' => 'string', 'example' => '156A6B-677B1A-4297B7-9187B7-2B44792'], 'Enable' => [ 'description' => 'Specifies whether IPv6 is enabled. Valid values:'."\n" ."\n" .'- **on**: Enabled.'."\n" ."\n" .'- **off**: Disabled.', 'enumValueTitles' => ['off' => 'off', 'on' => 'on'], 'type' => 'string', 'example' => 'on', 'title' => '', ], 'Region' => [ 'description' => 'The region where IPv6 is enabled. The default value is `x.x`. Valid values:'."\n" ."\n" .'- `x.x`: Global.'."\n" ."\n" .'- `cn.cn`: Chinese mainland.', 'enumValueTitles' => ['x.x' => 'x.x', 'cn.cn' => 'cn.cn'], 'type' => 'string', 'example' => 'x.x', 'title' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'title' => 'Query Site IPv6 Configuration', 'changeSet' => [ ['createdAt' => '2025-03-27T02:33:21.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetIPv6'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetIPv6', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"156A6B-677B1A-4297B7-9187B7-2B44792\\",\\n \\"Enable\\": \\"on\\",\\n \\"Region\\": \\"x.x\\"\\n}","type":"json"}]', ], 'GetImageTransform' => [ 'summary' => 'Queries a single site image transformation configuration.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257356', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID. You can call the [ListImageTransforms](~~2869056~~) operation to obtain the configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '352816096987136', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-280B-72F8FD6DA2FE'], 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '352816096987136', 'title' => ''], 'ConfigType' => [ 'description' => 'The configuration type. Valid values:'."\n" .'- global: global configuration.'."\n" .'- rule: rule configuration.', 'enumValueTitles' => ['rule' => 'Rule configuration.', 'global' => 'Global configuration.'], 'type' => 'string', 'example' => 'global', 'title' => '', ], 'SiteVersion' => ['description' => 'The version number of the site configuration. For sites with version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. The default value is version 0.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Sequence' => ['description' => 'The rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'Enable' => [ 'description' => 'Specifies whether to enable image transformation. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'example' => 'on', 'title' => '', ], 'RuleEnable' => [ 'description' => 'The rule switch. This parameter does not need to be set when you add a global configuration. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'example' => 'on', 'title' => '', ], 'Rule' => ['description' => 'The rule content, which uses a conditional expression to match user requests. This parameter does not need to be set when you add a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: Set the value to true.'."\n" .'- Match specified requests: Set the value to a custom expression, such as (http.host eq \\"video.example.com\\").', 'type' => 'string', 'example' => '(http.request.uri.path.file_name eq \\"jpg\\")', 'title' => ''], 'RuleName' => ['description' => 'The rule name. This parameter does not need to be set when you add a global configuration.', 'type' => 'string', 'example' => 'test', 'title' => ''], 'AutoWebp' => ['title' => '', 'description' => 'Specifies whether to enable adaptive WebP. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on'], 'AutoAvif' => ['title' => '', 'description' => 'Specifies whether to enable adaptive AVIF. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-280B-72F8FD6DA2FE\\",\\n \\"ConfigId\\": 352816096987136,\\n \\"ConfigType\\": \\"global\\",\\n \\"SiteVersion\\": 0,\\n \\"Sequence\\": 2,\\n \\"Enable\\": \\"on\\",\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.request.uri.path.file_name eq \\\\\\\\\\\\\\"jpg\\\\\\\\\\\\\\")\\",\\n \\"RuleName\\": \\"test\\",\\n \\"AutoWebp\\": \\"on\\",\\n \\"AutoAvif\\": \\"on\\"\\n}","type":"json"}]', 'title' => 'Query a single site image transformation configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetImageTransform'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetImageTransform', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'GetKeylessServer' => [ 'summary' => 'Retrieves the configuration of a Keyless server.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239130', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '5407498413****', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'Keyless server ID。', 'type' => 'string', 'required' => true, 'example' => 'baba39055622c008b90285a8838e****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456****', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], 'Id' => ['description' => 'Keyless server ID。', 'type' => 'string', 'example' => 'baba39055622c008b90285a8838e****', 'title' => ''], 'Name' => ['description' => 'The Keyless server name.', 'type' => 'string', 'example' => 'example', 'title' => ''], 'Host' => ['description' => 'The Keyless server hostname.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], 'Port' => ['description' => 'The Keyless server port. Valid values: **1** to **65535**.', 'type' => 'integer', 'format' => 'int64', 'example' => '443', 'title' => ''], 'Verify' => [ 'description' => 'Indicates whether to verify the Keyless server certificate. Default value: false.', 'enumValueTitles' => ['true' => 'true', 'false' => 'false'], 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => '', ], 'CaCertificate' => ['description' => 'The CA certificate used to verify the Keyless server certificate. This parameter takes effect only when Verify is set to true.', 'type' => 'string', 'example' => '-----BEGIN CERTIFICATE-----****', 'title' => ''], 'ClientCertificate' => ['description' => 'The client certificate. This parameter must be used together with the client private key.', 'type' => 'string', 'example' => '-----BEGIN CERTIFICATE-----****', 'title' => ''], 'ClientPrivateKey' => ['description' => 'The client private key. This parameter must be used together with the client certificate.', 'type' => 'string', 'example' => '-----BEGIN RSA PRIVATE KEY-----****', 'title' => ''], 'CreateTime' => ['description' => 'The creation time. The time follows the format YYYY-MM-DDTHH:MM:SS+08:00 in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2025-07-18T20:33:31+08:00', 'title' => ''], 'UpdateTime' => ['description' => 'The modification time. The time follows the format YYYY-MM-DDTHH:MM:SS+08:00 in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2025-07-18T20:33:31+08:00', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '3558df77-8a7a-4060-a900-2d794940****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Id.MissingParameter', 'errorMessage' => 'The parameter Id is required.', 'description' => 'The required parameter Id is missing.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'Certificate.NotFound', 'errorMessage' => 'The specified certificate does not exist.', 'description' => 'The specified certificate does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Get keyless server configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetKeylessServer'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetKeylessServer', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SiteId\\": 0,\\n \\"SiteName\\": \\"example.com\\",\\n \\"Id\\": \\"baba39055622c008b90285a8838e****\\",\\n \\"Name\\": \\"example\\",\\n \\"Host\\": \\"example.com\\",\\n \\"Port\\": 443,\\n \\"Verify\\": true,\\n \\"CaCertificate\\": \\"-----BEGIN CERTIFICATE-----****\\",\\n \\"ClientCertificate\\": \\"-----BEGIN CERTIFICATE-----****\\",\\n \\"ClientPrivateKey\\": \\"-----BEGIN RSA PRIVATE KEY-----****\\",\\n \\"CreateTime\\": \\"2025-07-18T20:33:31+08:00\\",\\n \\"UpdateTime\\": \\"2025-07-18T20:33:31+08:00\\",\\n \\"RequestId\\": \\"3558df77-8a7a-4060-a900-2d794940****\\"\\n}","type":"json"}]', ], 'GetKv' => [ 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239214', 'abilityTreeNodes' => ['FEATUREdcdnGMYWU5'], ], 'parameters' => [ [ 'name' => 'Namespace', 'in' => 'query', 'schema' => ['description' => 'The name specified when you call the [CreateKvNamespace](~~2850317~~) operation.', 'type' => 'string', 'required' => true, 'example' => 'test_namespace', 'title' => ''], ], [ 'name' => 'Key', 'in' => 'query', 'schema' => ['description' => 'The name of the key to query.', 'type' => 'string', 'required' => true, 'example' => 'test_key', 'title' => ''], ], [ 'name' => 'Base64', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to Base64-decode the value. If you set the base64 parameter to true when you called the [PutKv](~~2850482~~) operation, set this parameter to true to read the original content.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Value' => ['description' => 'The value of the key.', 'type' => 'string', 'example' => 'test_value', 'title' => ''], 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidAccount.Malformed', 'errorMessage' => 'The specified account is invalid.', 'description' => 'The account number is not entered correctly, for example, the input is empty.'], ['errorCode' => 'InvalidNameSpace.Malformed', 'errorMessage' => 'The specified namespace is invalid.', 'description' => 'The bucket name is entered incorrectly, such as an empty string.'], ['errorCode' => 'InvalidKey.Malformed', 'errorMessage' => 'The specified key is invalid.', 'description' => 'Key name input error, such as entering an empty string.'], ['errorCode' => 'InvalidKey.ExceedsMaximum', 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', 'description' => 'The length of the requested key is too large.'], ['errorCode' => 'InvalidValue.ExceedsMaximum', 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', 'description' => 'The value deposited is too large.'], ['errorCode' => 'InvalidParameters', 'errorMessage' => 'The specified parameters are invalid.', 'description' => 'Parameter is illegal.'], ], 403 => [ ['errorCode' => 'InvalidKey.ExceedsCapacity', 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', 'description' => 'The capacity of the storage space exceeds the limit.'], ['errorCode' => 'Unauthorized.InvalidParameters', 'errorMessage' => 'The specified authentication parameters are invalid.', 'description' => 'Authentication parameter input error.'], ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'InvalidAccount.NotFound', 'errorMessage' => 'The specified account does not exist.', 'description' => 'The specified account does not exist.'], ['errorCode' => 'InvalidNameSpace.NotFound', 'errorMessage' => 'The specified namespace does not exist.', 'description' => ''], ['errorCode' => 'InvalidKey.NotFound', 'errorMessage' => 'The specified key does not exist.', 'description' => 'The specified key-value pair does not exist.'], ], 406 => [ ['errorCode' => 'InvalidNameSpace.Duplicate', 'errorMessage' => 'The specified namespace already exists.', 'description' => 'Specified storage space'], ['errorCode' => 'InvalidNameSpace.QuotaFull', 'errorMessage' => 'The maximum number of namespaces is exceeded.', 'description' => 'The number of storage spaces exceeds the capacity limit.'], ], 429 => [ ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests are submitted.', 'description' => 'Submissions are too frequent, please try again later'], ['errorCode' => 'TooQuickRequests', 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', 'description' => 'The modification or deletion of key-value pairs is too frequent.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'GetKv', 'summary' => 'Retrieves the value of a specified key.', 'changeSet' => [ ['createdAt' => '2024-11-26T03:43:35.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetKv'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:GetKv', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Value\\": \\"test_value\\",\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\"\\n}","type":"json"}]', ], 'GetKvAccount' => [ 'summary' => 'Retrieves usage information for an account in the KV service, including a list of all namespaces.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239142', 'abilityTreeNodes' => ['FEATUREdcdnGMYWU5'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status of the account.'."\n" ."\n" .'- **online**: The account is active.'."\n" ."\n" .'- **offline**: The account is shut down.', 'type' => 'string', 'example' => 'online', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F', 'title' => ''], 'NamespaceUsed' => ['description' => 'The number of namespaces created for the account.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'NamespaceQuota' => ['description' => 'The quota on the number of KV storage spaces that you can request for the account.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'CapacityString' => ['description' => 'The total available capacity of all namespaces for the account.', 'type' => 'string', 'example' => '1 GB', 'title' => ''], 'CapacityUsedString' => ['description' => 'The total used capacity of all namespaces for the account.', 'type' => 'string', 'example' => '100 MB', 'title' => ''], 'Capacity' => ['description' => 'The total available capacity of all namespaces for the account, in bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '1073741824', 'title' => ''], 'CapacityUsed' => ['description' => 'The total used capacity of all namespaces for the account, in bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '10048576', 'title' => ''], 'NamespaceList' => [ 'description' => 'The list of namespaces for the account.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status of the namespace. Valid values:'."\n" ."\n" .'- **online**: Normal.'."\n" ."\n" .'- **delete**: Pending deletion.'."\n" ."\n" .'- **deleting**: Being deleted.'."\n" ."\n" .'- **deleted**: Deleted.', 'type' => 'string', 'example' => 'online', 'title' => ''], 'Namespace' => ['description' => 'The name of the namespace.', 'type' => 'string', 'example' => 'test_namespace', 'title' => ''], 'NamespaceId' => ['description' => 'The ID of the namespace.', 'type' => 'string', 'example' => '643355322374688768', 'title' => ''], 'Description' => ['description' => 'The description of the namespace.', 'type' => 'string', 'example' => 'the first namespace', 'title' => ''], 'Capacity' => ['description' => 'The available capacity of the namespace, in bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '1073741824', 'title' => ''], 'CapacityUsed' => ['description' => 'The used capacity of the namespace, in bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '100048576', 'title' => ''], 'CapacityString' => ['description' => 'The available capacity of the namespace.', 'type' => 'string', 'example' => '1 GB', 'title' => ''], 'CapacityUsedString' => ['description' => 'The used capacity of the namespace.', 'type' => 'string', 'example' => '100 MB', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidAccount.Malformed', 'errorMessage' => 'The specified account is invalid.', 'description' => 'The account number is not entered correctly, for example, the input is empty.'], ['errorCode' => 'InvalidNameSpace.Malformed', 'errorMessage' => 'The specified namespace is invalid.', 'description' => 'The bucket name is entered incorrectly, such as an empty string.'], ['errorCode' => 'InvalidKey.Malformed', 'errorMessage' => 'The specified key is invalid.', 'description' => 'Key name input error, such as entering an empty string.'], ['errorCode' => 'InvalidKey.ExceedsMaximum', 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', 'description' => 'The length of the requested key is too large.'], ['errorCode' => 'InvalidValue.ExceedsMaximum', 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', 'description' => 'The value deposited is too large.'], ], 403 => [ ['errorCode' => 'InvalidKey.ExceedsCapacity', 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', 'description' => 'The capacity of the storage space exceeds the limit.'], ['errorCode' => 'Unauthorized.InvalidParameters', 'errorMessage' => 'The specified authentication parameters are invalid.', 'description' => 'Authentication parameter input error.'], ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'InvalidAccount.NotFound', 'errorMessage' => 'The specified account does not exist.', 'description' => 'The specified account does not exist.'], ['errorCode' => 'InvalidNameSpace.NotFound', 'errorMessage' => 'The specified namespace does not exist.', 'description' => ''], ['errorCode' => 'InvalidKey.NotFound', 'errorMessage' => 'The specified key does not exist.', 'description' => 'The specified key-value pair does not exist.'], ], 406 => [ ['errorCode' => 'InvalidNameSpace.Duplicate', 'errorMessage' => 'The specified namespace already exists.', 'description' => 'Specified storage space'], ['errorCode' => 'InvalidNameSpace.QuotaFull', 'errorMessage' => 'The maximum number of namespaces is exceeded.', 'description' => 'The number of storage spaces exceeds the capacity limit.'], ], 429 => [ ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests are submitted.', 'description' => 'Submissions are too frequent, please try again later'], ['errorCode' => 'TooQuickRequests', 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', 'description' => 'The modification or deletion of key-value pairs is too frequent.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'GetKvAccount', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetKvAccount'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetKvAccount', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Status\\": \\"online\\",\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\",\\n \\"NamespaceUsed\\": 1,\\n \\"NamespaceQuota\\": 10,\\n \\"CapacityString\\": \\"1 GB\\",\\n \\"CapacityUsedString\\": \\"100 MB\\",\\n \\"Capacity\\": 1073741824,\\n \\"CapacityUsed\\": 10048576,\\n \\"NamespaceList\\": [\\n {\\n \\"Status\\": \\"online\\",\\n \\"Namespace\\": \\"test_namespace\\",\\n \\"NamespaceId\\": \\"643355322374688768\\",\\n \\"Description\\": \\"the first namespace\\",\\n \\"Capacity\\": 1073741824,\\n \\"CapacityUsed\\": 100048576,\\n \\"CapacityString\\": \\"1 GB\\",\\n \\"CapacityUsedString\\": \\"100 MB\\"\\n }\\n ]\\n}","type":"json"}]', ], 'GetKvDetail' => [ 'summary' => 'Queries the value and time to live (TTL) of a key.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239214', 'abilityTreeNodes' => ['FEATUREdcdnGMYWU5'], ], 'parameters' => [ [ 'name' => 'Namespace', 'in' => 'query', 'schema' => ['description' => 'The name of the namespace that you specify when you call the [CreateKvNamespace](~~2850317~~) operation.'."\n", 'type' => 'string', 'required' => true, 'title' => '', 'example' => 'test_namespace'], ], [ 'name' => 'Key', 'in' => 'query', 'schema' => ['description' => 'The key name for the query.'."\n", 'type' => 'string', 'required' => true, 'title' => '', 'example' => 'test_key'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => '', 'type' => 'object', 'properties' => [ 'Value' => ['description' => 'The value of the key. The value of the root node.'."\n", 'type' => 'string', 'title' => '', 'example' => 'test_value'], 'RequestId' => ['description' => 'The expiration time of the key. Unit: seconds.'."\n", 'type' => 'string', 'title' => '', 'example' => 'CB1A380B-09F0-41BB-280B-72F8FD6DA2FE'], 'ExpirationTtl' => ['description' => 'The expiration time of the key. Unit: seconds.'."\n", 'type' => 'string', 'title' => '', 'example' => '3600'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidAccount.Malformed', 'errorMessage' => 'The specified account is invalid.', 'description' => 'The account number is not entered correctly, for example, the input is empty.'], ['errorCode' => 'InvalidNameSpace.Malformed', 'errorMessage' => 'The specified namespace is invalid.', 'description' => 'The bucket name is entered incorrectly, such as an empty string.'], ['errorCode' => 'InvalidKey.Malformed', 'errorMessage' => 'The specified key is invalid.', 'description' => 'Key name input error, such as entering an empty string.'], ['errorCode' => 'InvalidKey.ExceedsMaximum', 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', 'description' => 'The length of the requested key is too large.'], ['errorCode' => 'InvalidValue.ExceedsMaximum', 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', 'description' => 'The value deposited is too large.'], ['errorCode' => 'InvalidParameters', 'errorMessage' => 'The specified parameters are invalid.', 'description' => 'Parameter is illegal.'], ], 403 => [ ['errorCode' => 'InvalidKey.ExceedsCapacity', 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', 'description' => 'The capacity of the storage space exceeds the limit.'], ['errorCode' => 'Unauthorized.InvalidParameters', 'errorMessage' => 'The specified authentication parameters are invalid.', 'description' => 'Authentication parameter input error.'], ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'InvalidAccount.NotFound', 'errorMessage' => 'The specified account does not exist.', 'description' => 'The specified account does not exist.'], ['errorCode' => 'InvalidNameSpace.NotFound', 'errorMessage' => 'The specified namespace does not exist.', 'description' => ''], ['errorCode' => 'InvalidKey.NotFound', 'errorMessage' => 'The specified key does not exist.', 'description' => 'The specified key-value pair does not exist.'], ], 406 => [ ['errorCode' => 'InvalidNameSpace.Duplicate', 'errorMessage' => 'The specified namespace already exists.', 'description' => 'Specified storage space'], ['errorCode' => 'InvalidNameSpace.QuotaFull', 'errorMessage' => 'The maximum number of namespaces is exceeded.', 'description' => 'The number of storage spaces exceeds the capacity limit.'], ], 429 => [ ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests are submitted.', 'description' => 'Submissions are too frequent, please try again later'], ['errorCode' => 'TooQuickRequests', 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', 'description' => 'The modification or deletion of key-value pairs is too frequent.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'GetKvDetail', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Value\\": \\"test_value\\",\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-280B-72F8FD6DA2FE\\",\\n \\"ExpirationTtl\\": \\"3600\\"\\n}","type":"json"}]', ], 'GetKvNamespace' => [ 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239017', 'abilityTreeNodes' => ['FEATUREdcdnGMYWU5'], ], 'parameters' => [ [ 'name' => 'Namespace', 'in' => 'query', 'schema' => ['description' => 'The name of the namespace. You specify this name when calling the [CreateKvNamespace](~~2850317~~) operation.', 'type' => 'string', 'required' => true, 'maxLength' => 64, 'pattern' => '^[0-9a-zA-Z_-]+$', 'example' => 'test_namespace', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status of the namespace. Valid values:'."\n" ."\n" .'- **online**: The namespace is active.'."\n" ."\n" .'- **delete**: The namespace is marked for deletion.'."\n" ."\n" .'- **deleting**: The namespace is being deleted.'."\n" ."\n" .'- **deleted**: The namespace has been deleted.', 'type' => 'string', 'example' => 'online', 'title' => ''], 'Namespace' => ['description' => 'The name of the namespace.', 'type' => 'string', 'example' => 'test_namespace', 'title' => ''], 'NamespaceId' => ['description' => 'The ID of the namespace.', 'type' => 'string', 'example' => '643355322374688768', 'title' => ''], 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F', 'title' => ''], 'Description' => ['description' => 'The description of the namespace.', 'type' => 'string', 'example' => 'this is a test namespace.', 'title' => ''], 'CapacityString' => ['description' => 'The available capacity of the namespace, formatted as a human-readable string.', 'type' => 'string', 'example' => '1 GB', 'title' => ''], 'CapacityUsedString' => ['description' => 'The used capacity of the namespace, formatted as a human-readable string.', 'type' => 'string', 'example' => '100 MB', 'title' => ''], 'Capacity' => ['description' => 'The available capacity of the namespace, in bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '1073741824', 'title' => ''], 'CapacityUsed' => ['description' => 'The used capacity of the namespace, in bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '10048576', 'title' => ''], ], 'description' => 'The response parameters.', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidAccount.Malformed', 'errorMessage' => 'The specified account is invalid.', 'description' => 'The account number is not entered correctly, for example, the input is empty.'], ['errorCode' => 'InvalidNameSpace.Malformed', 'errorMessage' => 'The specified namespace is invalid.', 'description' => 'The bucket name is entered incorrectly, such as an empty string.'], ['errorCode' => 'InvalidKey.Malformed', 'errorMessage' => 'The specified key is invalid.', 'description' => 'Key name input error, such as entering an empty string.'], ['errorCode' => 'InvalidKey.ExceedsMaximum', 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', 'description' => 'The length of the requested key is too large.'], ['errorCode' => 'InvalidValue.ExceedsMaximum', 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', 'description' => 'The value deposited is too large.'], ], 403 => [ ['errorCode' => 'InvalidKey.ExceedsCapacity', 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', 'description' => 'The capacity of the storage space exceeds the limit.'], ['errorCode' => 'Unauthorized.InvalidParameters', 'errorMessage' => 'The specified authentication parameters are invalid.', 'description' => 'Authentication parameter input error.'], ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'InvalidAccount.NotFound', 'errorMessage' => 'The specified account does not exist.', 'description' => 'The specified account does not exist.'], ['errorCode' => 'InvalidNameSpace.NotFound', 'errorMessage' => 'The specified namespace does not exist.', 'description' => ''], ['errorCode' => 'InvalidKey.NotFound', 'errorMessage' => 'The specified key does not exist.', 'description' => 'The specified key-value pair does not exist.'], ], 406 => [ ['errorCode' => 'InvalidNameSpace.Duplicate', 'errorMessage' => 'The specified namespace already exists.', 'description' => 'Specified storage space'], ['errorCode' => 'InvalidNameSpace.QuotaFull', 'errorMessage' => 'The maximum number of namespaces is exceeded.', 'description' => 'The number of storage spaces exceeds the capacity limit.'], ], 429 => [ ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests are submitted.', 'description' => 'Submissions are too frequent, please try again later'], ['errorCode' => 'TooQuickRequests', 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', 'description' => 'The modification or deletion of key-value pairs is too frequent.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'GetKvNamespace', 'summary' => 'Retrieves information about a specific namespace.', 'changeSet' => [ ['createdAt' => '2025-04-03T01:43:47.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-09-20T13:49:20.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetKvNamespace'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetKvNamespace', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Status\\": \\"online\\",\\n \\"Namespace\\": \\"test_namespace\\",\\n \\"NamespaceId\\": \\"643355322374688768\\",\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\",\\n \\"Description\\": \\"this is a test namespace.\\",\\n \\"CapacityString\\": \\"1 GB\\",\\n \\"CapacityUsedString\\": \\"100 MB\\",\\n \\"Capacity\\": 1073741824,\\n \\"CapacityUsed\\": 10048576\\n}","type":"json"}]', ], 'GetList' => [ 'summary' => 'Retrieves the details of a specific custom list. You can use this operation to query the properties of a specific list, including the name, description, kind, and list items.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239602', 'abilityTreeNodes' => ['FEATUREdcdnL8HX1L'], ], 'parameters' => [ [ 'name' => 'Id', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The ID of the custom list. You can obtain the ID by calling the [ListLists](~~2850217~~) operation.', 'type' => 'integer', 'format' => 'int64', 'example' => '40000001', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'UpdateTime' => ['title' => '', 'description' => 'The last update time of the custom list.'."\n" ."\n" .'Format: RFC 3339 / ISO 8601, UTC time zone (ending with Z).'."\n" ."\n" .'Example: 2026-06-10T14:23:45Z', 'type' => 'string', 'example' => '2024-01-01T00:00:00Z'], 'Id' => ['title' => '', 'description' => 'The ID of the custom list. You can obtain the ID by calling the [ListLists](~~2850217~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '40000001', 'pattern' => '', 'default' => ''], 'Name' => ['title' => '', 'description' => 'The name of the custom list.', 'type' => 'string', 'required' => true, 'example' => 'example', 'maxLength' => 128, 'pattern' => '', 'default' => ''], 'Description' => ['title' => '', 'description' => 'The description of the custom list.', 'type' => 'string', 'required' => false, 'example' => 'a custom list', 'maxLength' => 1024, 'pattern' => '', 'default' => ''], 'Kind' => ['title' => '', 'description' => 'The kind of the custom list.', 'type' => 'string', 'example' => 'ip'], 'Items' => [ 'title' => '', 'description' => 'The items of the custom list, displayed as an array.', 'type' => 'array', 'items' => ['title' => '', 'description' => 'The custom list item.', 'type' => 'string', 'example' => '10.1.1.1'], 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"UpdateTime\\": \\"2024-01-01T00:00:00Z\\",\\n \\"Id\\": 40000001,\\n \\"Name\\": \\"example\\",\\n \\"Description\\": \\"a custom list\\",\\n \\"Kind\\": \\"ip\\",\\n \\"Items\\": [\\n \\"10.1.1.1\\"\\n ]\\n}","type":"json"}]', 'title' => 'Get custom list details', 'changeSet' => [ ['createdAt' => '2024-09-25T07:02:49.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T08:22:02.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetList'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetList', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'GetLoadBalancer' => [ 'summary' => 'Retrieves the details of a specific load balancer based on the specified site ID and load balancer ID.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238515', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'Id', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The load balancer ID, which uniquely identifies the load balancer to query. This ID is returned when the load balancer is created. You can also call the [ListLoadBalancers](~~2868897~~) operation to obtain all load balancers under a site.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '99867648760****'], ], [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~ListSites~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1159101787****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The data structure returned upon a successful response, which contains the detailed configuration of the load balancer.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F'], 'Id' => ['description' => 'The unique ID of the load balancer.', 'type' => 'integer', 'format' => 'int64', 'example' => '99867648760****', 'title' => ''], 'Name' => ['description' => 'The name of the load balancer.', 'type' => 'string', 'example' => 'lb.example.com', 'title' => ''], 'SiteId' => ['description' => 'The ID of the site to which the load balancer belongs.', 'type' => 'integer', 'format' => 'int64', 'example' => '11591017874****', 'title' => ''], 'Enabled' => ['description' => 'Indicates whether the load balancer is enabled.'."\n" ."\n" .'- true: Enabled.'."\n" .'- false: Not enabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Ttl' => ['description' => 'The TTL value, which specifies the time-to-live of the DNS record. Default value: 30 seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '60', 'title' => ''], 'SessionAffinity' => ['description' => 'The session persistence setting. Valid values:'."\n" .'- off: disabled.'."\n" .'- ip: IP-based session persistence.'."\n" .'- cookie: cookie-based session persistence.'."\n" .'- http_header: HTTP header-based session persistence.', 'type' => 'string', 'example' => 'ip', 'title' => ''], 'FallbackPool' => ['description' => 'The fallback pool ID. When all other pools are unavailable, traffic is redirected to this pool.', 'type' => 'integer', 'format' => 'int64', 'example' => '96228666776****', 'title' => ''], 'SteeringPolicy' => ['description' => 'The load balancing policy.', 'type' => 'string', 'example' => 'order', 'title' => ''], 'Description' => ['description' => 'The description of the load balancer.', 'type' => 'string', 'example' => 'test', 'title' => ''], 'AdaptiveRouting' => [ 'description' => 'The cross-origin pool back-to-origin configuration.', 'type' => 'object', 'properties' => [ 'FailoverAcrossPools' => ['description' => 'Indicates whether failover across origin pools is enabled.'."\n" ."\n" .'- true: Enabled.'."\n" .'- false: Not enabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'OriginLevelRetry' => ['description' => 'Specifies whether to retry the next IP address when back-to-origin fails and the origin server is a domain name that resolves to multiple IP addresses.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], ], 'title' => '', 'example' => '', ], 'DefaultPools' => [ 'description' => 'The list of default pool IDs.', 'type' => 'array', 'items' => ['description' => 'The default pool.', 'type' => 'integer', 'format' => 'int64', 'example' => '96228666776****', 'title' => ''], 'title' => '', 'example' => '', ], 'RandomSteering' => [ 'description' => 'The weighted round-robin configuration, which controls the traffic distribution weight across different pools.', 'type' => 'object', 'properties' => [ 'DefaultWeight' => ['description' => 'The default round-robin weight applied to all pools that do not have an individually specified weight. Valid values: 0 to 100.', 'type' => 'integer', 'format' => 'int32', 'example' => '50', 'title' => ''], 'PoolWeights' => [ 'description' => 'The weight configuration for each backend server pool. The key is the pool ID and the value is the weight coefficient. The weight coefficient represents the relative proportion of traffic distribution.', 'type' => 'object', 'additionalProperties' => ['description' => 'The weight of a single origin pool. Valid values: 0 to 100. A value of 0 indicates that no traffic is routed to this origin pool.', 'type' => 'integer', 'format' => 'int32', 'example' => '50', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'Rules' => [ 'description' => 'The list of rule configurations that define behaviors under specific conditions.', 'type' => 'array', 'items' => [ 'description' => 'The rule configuration in the rule set.', 'type' => 'object', 'properties' => [ 'FixedResponse' => [ 'description' => 'The fixed response content returned when the rule is matched.', 'type' => 'object', 'properties' => [ 'ContentType' => ['description' => 'The Content-Type field in the HTTP header.', 'type' => 'string', 'example' => 'application/json', 'title' => ''], 'Location' => ['description' => 'The location field in the HTTP response.', 'type' => 'string', 'example' => 'http://www.example.com/index.html', 'title' => ''], 'MessageBody' => ['description' => 'The response body value.', 'type' => 'string', 'example' => 'Hello World.', 'title' => ''], 'StatusCode' => ['description' => 'The status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], ], 'title' => '', 'example' => '', ], 'Overrides' => ['description' => 'The load balancing configuration overrides applied to matching requests. The configured fields override the corresponding fields in the load balancer configuration.', 'type' => 'any', 'example' => '{'."\n" .' "adaptive_routing": {'."\n" .' "failover_across_pools": true'."\n" .' },'."\n" .' "sub_region_pools": {'."\n" .' "GB": ['."\n" .' 96228666776****'."\n" .' ],'."\n" .' "US": ['."\n" .' 96228666776****'."\n" .' ]'."\n" .' },'."\n" .' "default_pools": ['."\n" .' 96228666776****,'."\n" .' 96228666776****'."\n" .' ],'."\n" .' "fallback_pool": 96228666776****,'."\n" .' "location_strategy": {'."\n" .' "mode": "resolver_ip",'."\n" .' "prefer_ecs": "always"'."\n" .' },'."\n" .' "random_steering": {'."\n" .' "default_weight": 30,'."\n" .' "pool_weights": {'."\n" .' "96228666776****": 70,'."\n" .' "96228666776****": 80'."\n" .' }'."\n" .' },'."\n" .' "region_pools": {'."\n" .' "ENAM": ['."\n" .' 96228666776****,'."\n" .' 92843536908****'."\n" .' ],'."\n" .' "WNAM": ['."\n" .' 92843536908****'."\n" .' ]'."\n" .' },'."\n" .' "session_affinity": "cookie",'."\n" .' "session_affinity_attributes": {'."\n" .' "drain_duration": 100,'."\n" .' "headers": ["none"],'."\n" .' "require_all_headers": false,'."\n" .' "samesite": "Auto",'."\n" .' "secure": "Auto",'."\n" .' "zero_downtime_failover": "sticky"'."\n" .' },'."\n" .' "session_affinity_ttl": 1800,'."\n" .' "steering_policy": "dynamic_latency",'."\n" .' "ttl": 30'."\n" .' }', 'title' => ''], 'Rule' => ['description' => 'The rule content, which uses conditional expressions to match user requests. This parameter is not required when you add a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: Set the value to true.'."\n" .'- Match specific requests: Set the value to a custom expression, such as (http.host eq \\"video.example.com\\").', 'type' => 'string', 'example' => 'http.request.uri.path contains "/testing"', 'title' => ''], 'RuleName' => ['description' => 'The rule name. This parameter is not required when you add a global configuration.', 'type' => 'string', 'example' => 'r2', 'title' => ''], 'RuleEnable' => ['description' => 'The rule switch. This parameter is not required when you add a global configuration. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'off', 'title' => ''], 'Sequence' => ['description' => 'The rule execution order. A larger value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Terminates' => ['description' => 'Indicates whether to terminate the execution of subsequent rules.'."\n" ."\n" .'- true: Yes.'."\n" .'- false: No. This is the default value.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'Monitor' => [ 'description' => 'The monitor configuration.', 'type' => 'object', 'properties' => [ 'Type' => ['description' => 'The monitor protocol type, such as HTTP, used for health checks. A value of off indicates that no health check is performed.', 'type' => 'string', 'example' => 'HTTP', 'title' => ''], 'Method' => ['description' => 'The health check method.', 'type' => 'string', 'example' => 'GET', 'title' => ''], 'Port' => ['description' => 'The target port.', 'type' => 'integer', 'format' => 'int32', 'example' => '80', 'title' => ''], 'Path' => ['description' => 'The path.', 'type' => 'string', 'example' => '/', 'title' => ''], 'Interval' => ['description' => 'The health check interval. Unit: seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '60', 'title' => ''], 'ExpectedCodes' => ['description' => 'The expected status codes for a successful HTTP response, such as 200,202.', 'type' => 'string', 'example' => '200,202', 'title' => ''], 'FollowRedirects' => ['description' => 'Indicates whether to follow redirects.'."\n" ."\n" .'- true: Yes.'."\n" .'- false: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'ConsecutiveUp' => ['description' => 'The number of consecutive successful probes required to consider the check successful, such as `3`.', 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''], 'ConsecutiveDown' => ['description' => 'The number of consecutive failed probes required to consider the check failed, such as `5`.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], 'Header' => ['description' => 'The HTTP header information included in the probe request.', 'type' => 'any', 'example' => '{'."\n" .' "host": ['."\n" .' "example1.com",'."\n" .' "example2.com"'."\n" .' ]'."\n" .' }', 'title' => ''], 'Timeout' => ['description' => 'The health check timeout period. Unit: seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], 'MonitoringRegion' => ['description' => 'The region where the probe nodes are located. Default value: Global.'."\n" ."\n" .'- Global: worldwide.'."\n" .'- ChineseMainland: the Chinese mainland.'."\n" .'- OutsideChineseMainland: worldwide (excluding the Chinese mainland).', 'type' => 'string', 'example' => 'Global', 'title' => ''], ], 'title' => '', 'example' => '', ], 'Status' => ['description' => 'The status of the load balancer.', 'type' => 'string', 'example' => 'healthy', 'title' => ''], 'SubRegionPools' => ['description' => 'The pools mapped to secondary regions. When multiple secondary regions share the same set of pools, you can concatenate multiple secondary regions with commas as the key.', 'type' => 'any', 'example' => '{"AL,MO": [92298024898****],"CN-SH,CN-SX,CN-SC":[92304347804****,92843536908****]}', 'title' => ''], 'RegionPools' => ['description' => 'The pools mapped to primary regions.', 'type' => 'any', 'example' => '{'."\n" .' "ENAM": ['."\n" .' 12345678****'."\n" .' ],'."\n" .' "WNAM": ['."\n" .' 23456789****,'."\n" .' 23456789****'."\n" .' ]'."\n" .'}', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'LoadBalancerNotExist', 'errorMessage' => 'The specified load balancer name is invalid or load balancing is not enabled for your website.Make sure that you specify a valid load balancer name and load balancing is enabled. Then, try again.', 'description' => 'The specified load balancer name is invalid or load balancing is not enabled for your website.Make sure that you specify a valid load balancer name and load balancing is enabled. Then, try again.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\",\\n \\"Id\\": 0,\\n \\"Name\\": \\"lb.example.com\\",\\n \\"SiteId\\": 0,\\n \\"Enabled\\": true,\\n \\"Ttl\\": 60,\\n \\"SessionAffinity\\": \\"ip\\",\\n \\"FallbackPool\\": 0,\\n \\"SteeringPolicy\\": \\"order\\",\\n \\"Description\\": \\"test\\",\\n \\"AdaptiveRouting\\": {\\n \\"FailoverAcrossPools\\": true,\\n \\"OriginLevelRetry\\": false\\n },\\n \\"DefaultPools\\": [\\n 0\\n ],\\n \\"RandomSteering\\": {\\n \\"DefaultWeight\\": 50,\\n \\"PoolWeights\\": {\\n \\"key\\": 50\\n }\\n },\\n \\"Rules\\": [\\n {\\n \\"FixedResponse\\": {\\n \\"ContentType\\": \\"application/json\\",\\n \\"Location\\": \\"http://www.example.com/index.html\\",\\n \\"MessageBody\\": \\"Hello World.\\",\\n \\"StatusCode\\": 200\\n },\\n \\"Overrides\\": \\"{\\\\n \\\\\\"adaptive_routing\\\\\\": {\\\\n \\\\\\"failover_across_pools\\\\\\": true\\\\n },\\\\n \\\\\\"sub_region_pools\\\\\\": {\\\\n \\\\\\"GB\\\\\\": [\\\\n 96228666776****\\\\n ],\\\\n \\\\\\"US\\\\\\": [\\\\n 96228666776****\\\\n ]\\\\n },\\\\n \\\\\\"default_pools\\\\\\": [\\\\n 96228666776****,\\\\n 96228666776****\\\\n ],\\\\n \\\\\\"fallback_pool\\\\\\": 96228666776****,\\\\n \\\\\\"location_strategy\\\\\\": {\\\\n \\\\\\"mode\\\\\\": \\\\\\"resolver_ip\\\\\\",\\\\n \\\\\\"prefer_ecs\\\\\\": \\\\\\"always\\\\\\"\\\\n },\\\\n \\\\\\"random_steering\\\\\\": {\\\\n \\\\\\"default_weight\\\\\\": 30,\\\\n \\\\\\"pool_weights\\\\\\": {\\\\n \\\\\\"96228666776****\\\\\\": 70,\\\\n \\\\\\"96228666776****\\\\\\": 80\\\\n }\\\\n },\\\\n \\\\\\"region_pools\\\\\\": {\\\\n \\\\\\"ENAM\\\\\\": [\\\\n 96228666776****,\\\\n 92843536908****\\\\n ],\\\\n \\\\\\"WNAM\\\\\\": [\\\\n 92843536908****\\\\n ]\\\\n },\\\\n \\\\\\"session_affinity\\\\\\": \\\\\\"cookie\\\\\\",\\\\n \\\\\\"session_affinity_attributes\\\\\\": {\\\\n \\\\\\"drain_duration\\\\\\": 100,\\\\n \\\\\\"headers\\\\\\": [\\\\\\"none\\\\\\"],\\\\n \\\\\\"require_all_headers\\\\\\": false,\\\\n \\\\\\"samesite\\\\\\": \\\\\\"Auto\\\\\\",\\\\n \\\\\\"secure\\\\\\": \\\\\\"Auto\\\\\\",\\\\n \\\\\\"zero_downtime_failover\\\\\\": \\\\\\"sticky\\\\\\"\\\\n },\\\\n \\\\\\"session_affinity_ttl\\\\\\": 1800,\\\\n \\\\\\"steering_policy\\\\\\": \\\\\\"dynamic_latency\\\\\\",\\\\n \\\\\\"ttl\\\\\\": 30\\\\n }\\",\\n \\"Rule\\": \\"http.request.uri.path contains \\\\\\"/testing\\\\\\"\\",\\n \\"RuleName\\": \\"r2\\",\\n \\"RuleEnable\\": \\"off\\",\\n \\"Sequence\\": 1,\\n \\"Terminates\\": true\\n }\\n ],\\n \\"Monitor\\": {\\n \\"Type\\": \\"HTTP\\",\\n \\"Method\\": \\"GET\\",\\n \\"Port\\": 80,\\n \\"Path\\": \\"/\\",\\n \\"Interval\\": 60,\\n \\"ExpectedCodes\\": \\"200,202\\",\\n \\"FollowRedirects\\": true,\\n \\"ConsecutiveUp\\": 3,\\n \\"ConsecutiveDown\\": 5,\\n \\"Header\\": \\"{\\\\n \\\\\\"host\\\\\\": [\\\\n \\\\\\"example1.com\\\\\\",\\\\n \\\\\\"example2.com\\\\\\"\\\\n ]\\\\n }\\",\\n \\"Timeout\\": 5,\\n \\"MonitoringRegion\\": \\"Global\\"\\n },\\n \\"Status\\": \\"healthy\\",\\n \\"SubRegionPools\\": \\"{\\\\\\"AL,MO\\\\\\": [92298024898****],\\\\\\"CN-SH,CN-SX,CN-SC\\\\\\":[92304347804****,92843536908****]}\\",\\n \\"RegionPools\\": \\"{\\\\n \\\\\\"ENAM\\\\\\": [\\\\n 12345678****\\\\n ],\\\\n \\\\\\"WNAM\\\\\\": [\\\\n 23456789****,\\\\n 23456789****\\\\n ]\\\\n}\\"\\n}","type":"json"}]', 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Query a single load balancer', 'description' => 'This API allows you to query the configuration details of a specific load balancer by providing the required authentication information and resource identity. The details include but are not limited to the name, session persistence policy, and load balancing policy.', 'changeSet' => [ ['createdAt' => '2025-06-16T02:25:11.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetLoadBalancer'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetLoadBalancer', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'GetManagedTransform' => [ 'summary' => 'Retrieves the managed transform configuration for a site.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257447', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The ID of the site. You can obtain this ID by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The site version. If version management is enabled for the site, use this parameter to specify the version whose configuration you want to retrieve. The default is 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Response schema', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'], 'AddClientGeolocationHeader' => [ 'description' => 'Indicates whether a header that contains the visitor\'s geolocation is added. Valid values:'."\n" ."\n" .'- on: Enables this feature.'."\n" ."\n" .'- off: Disables this feature.', 'enumValueTitles' => ['off' => 'off', 'on' => 'on'], 'type' => 'string', 'example' => 'on', 'title' => '', ], 'AddRealClientIpHeader' => [ 'description' => 'Indicates whether the "ali-real-client-ip" header is added to include the real client IP. Valid values:'."\n" ."\n" .'- on: Enables this feature.'."\n" ."\n" .'- off: Disables this feature.', 'enumValueTitles' => ['off' => 'off', 'on' => 'on'], 'type' => 'string', 'example' => 'on', 'title' => '', ], 'SiteVersion' => ['description' => 'The version of the site for which the configuration is returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'RealClientIpHeaderName' => ['description' => 'The real client IP header name.', 'type' => 'string', 'example' => 'test-header', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\",\\n \\"AddClientGeolocationHeader\\": \\"on\\",\\n \\"AddRealClientIpHeader\\": \\"on\\",\\n \\"SiteVersion\\": 0,\\n \\"RealClientIpHeaderName\\": \\"test-header\\"\\n}","type":"json"}]', 'title' => 'Query Managed Transform Configuration', 'changeSet' => [ ['createdAt' => '2025-05-09T05:58:30.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetManagedTransform'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetManagedTransform', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'GetNetworkOptimization' => [ 'summary' => 'Query a single network optimization configuration', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257603', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID, which can be obtained by calling the [ListSites](~~ListSites~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '12312312213212', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'Configuration ConfigId, which can be obtained by calling the [ListNetworkOptimizations](~~2869051~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '35281609698****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => 'C370DAF1-C838-4288-A1A0-9A87633D248E'], 'ConfigId' => ['description' => 'Configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '35281609698****', 'title' => ''], 'ConfigType' => ['description' => 'Configuration type, which can be used to query global or rule configurations. Value range:'."\n" ."\n" .'- global: Query global configuration.'."\n" .'- rule: Query rule configuration.', 'type' => 'string', 'example' => 'global', 'title' => ''], 'SiteVersion' => ['description' => 'Site configuration version number. For sites with version management enabled, this parameter can specify the effective site version, defaulting to version 0.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Sequence' => ['description' => 'Rule execution order. The smaller the value, the higher the priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'RuleEnable' => ['description' => 'Rule switch. This parameter is not required when adding a global configuration. Value range:'."\n" .'- on: Enable.'."\n" .'- off: Disable.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'Rule content, using conditional expressions to match user requests. This parameter is not required when adding a global configuration. There are two usage scenarios:'."\n" .'- Match all incoming requests: Set the value to true'."\n" .'- Match specific requests: Set the value to a custom expression, for example: (http.host eq \\"video.example.com\\")', 'type' => 'string', 'example' => '(http.host eq \\"video.example.com\\")'."\n", 'title' => ''], 'RuleName' => ['description' => 'Rule name. This parameter is not required when adding a global configuration.', 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'SmartRouting' => ['description' => 'Whether to enable smart routing service, default is disabled. Value range:'."\n" .'- on: Enable'."\n" .'- off: Disable', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Http2Origin' => ['description' => 'Whether to enable HTTP2 origin, default is disabled. Value range:'."\n" ."\n" .'- on: Enable'."\n" .'- off: Disable', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Websocket' => ['description' => 'Whether to enable Websocket, default is enabled. Value range:'."\n" .'- on: Enable'."\n" .'- off: Disable', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Grpc' => ['description' => 'Whether to enable GRPC, default is disabled. Value range:'."\n" .'- on: Enable'."\n" .'- off: Disable', 'type' => 'string', 'example' => 'on', 'title' => ''], 'UploadMaxFilesize' => ['description' => 'Maximum upload file size in MB, with a range from 100 to 500.', 'type' => 'string', 'example' => '500', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C370DAF1-C838-4288-A1A0-9A87633D248E\\",\\n \\"ConfigId\\": 0,\\n \\"ConfigType\\": \\"global\\",\\n \\"SiteVersion\\": 1,\\n \\"Sequence\\": 2,\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\\\\\\\\\"video.example.com\\\\\\\\\\\\\\")\\\\n\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"SmartRouting\\": \\"on\\",\\n \\"Http2Origin\\": \\"on\\",\\n \\"Websocket\\": \\"on\\",\\n \\"Grpc\\": \\"on\\",\\n \\"UploadMaxFilesize\\": \\"500\\"\\n}","type":"json"}]', 'title' => 'Query Site Network Optimization Configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetNetworkOptimization'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetNetworkOptimization', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'read', ], 'GetOriginCaCertificate' => [ 'summary' => 'Retrieves the CA certificate information of an origin server.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '261741', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The certificate ID.', 'type' => 'string', 'required' => true, 'example' => 'babaabcd****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456789****', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], 'Status' => ['description' => 'The certificate status.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'Certificate' => ['description' => 'The certificate content.', 'type' => 'string', 'example' => '-----BEGIN CERTIFICATE-----', 'title' => ''], 'Result' => [ 'description' => 'The certificate information.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'The certificate ID.', 'type' => 'string', 'example' => 'babaabcd****', 'title' => ''], 'Name' => ['description' => 'The certificate name.', 'type' => 'string', 'example' => 'yourCertName', 'title' => ''], 'Status' => ['description' => 'The certificate status.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'Type' => ['description' => 'The certificate type.', 'type' => 'string', 'example' => 'upload', 'title' => ''], 'CommonName' => ['description' => 'The common name of the certificate.', 'type' => 'string', 'example' => 'www.example.com ', 'title' => ''], 'NotBefore' => ['description' => 'The start time of the certificate validity period. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2023-03-31 02:08:00', 'title' => ''], 'NotAfter' => ['description' => 'The end time of the certificate validity period. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-03-31 02:08:00', 'title' => ''], 'Issuer' => ['description' => 'The certificate issuer.', 'type' => 'string', 'example' => 'GlobalSign nv-sa', 'title' => ''], 'SAN' => ['description' => 'The Subject Alternative Name (SAN) of the certificate.', 'type' => 'string', 'example' => 'www.example.com,*.example.com', 'title' => ''], 'SignatureAlgorithm' => ['description' => 'The signature algorithm of the certificate.', 'type' => 'string', 'example' => 'SHA256-RSA', 'title' => ''], 'PubkeyAlgorithm' => ['description' => 'The public key algorithm of the certificate.', 'type' => 'string', 'example' => 'RSA', 'title' => ''], 'CreateTime' => ['description' => 'The creation time. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-03-05 18:24:04', 'title' => ''], 'UpdateTime' => ['description' => 'The update time. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-03-05 18:24:04', 'title' => ''], 'SerialNumber' => ['description' => 'The certificate serial number.', 'type' => 'string', 'example' => 'babaded901474b9693acf530e0fb1d**', 'title' => ''], 'FingerprintSha256' => ['description' => 'The SHA-256 fingerprint of the certificate.', 'type' => 'string', 'example' => '1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456a****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '3558df77-8a7a-4060-a900-2d7949403836', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.', 'description' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'Id.MissingParameter', 'errorMessage' => 'The parameter Id is required.', 'description' => 'The required parameter Id is missing.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'Certificate.NotFound', 'errorMessage' => 'The specified certificate does not exist.', 'description' => 'The specified certificate does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SiteId\\": 0,\\n \\"SiteName\\": \\"example.com\\",\\n \\"Status\\": \\"OK\\",\\n \\"Certificate\\": \\"-----BEGIN CERTIFICATE-----\\",\\n \\"Result\\": {\\n \\"Id\\": \\"babaabcd****\\",\\n \\"Name\\": \\"yourCertName\\",\\n \\"Status\\": \\"OK\\",\\n \\"Type\\": \\"upload\\",\\n \\"CommonName\\": \\"www.example.com \\",\\n \\"NotBefore\\": \\"2023-03-31 02:08:00\\",\\n \\"NotAfter\\": \\"2024-03-31 02:08:00\\",\\n \\"Issuer\\": \\"GlobalSign nv-sa\\",\\n \\"SAN\\": \\"www.example.com,*.example.com\\",\\n \\"SignatureAlgorithm\\": \\"SHA256-RSA\\",\\n \\"PubkeyAlgorithm\\": \\"RSA\\",\\n \\"CreateTime\\": \\"2024-03-05 18:24:04\\",\\n \\"UpdateTime\\": \\"2024-03-05 18:24:04\\",\\n \\"SerialNumber\\": \\"babaded901474b9693acf530e0fb1d**\\",\\n \\"FingerprintSha256\\": \\"1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456a****\\"\\n },\\n \\"RequestId\\": \\"3558df77-8a7a-4060-a900-2d7949403836\\"\\n}","type":"json"}]', 'title' => 'Retrieve origin server CA certificate information', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetOriginCaCertificate'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetOriginCaCertificate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'GetOriginClientCertificate' => [ 'summary' => 'Retrieves the back-to-origin client certificate information at the domain name granularity.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '261753', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~ListSites~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The certificate ID.', 'type' => 'string', 'required' => true, 'example' => 'babaabcd****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~ListSites~~) operation.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456789****', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com'."\n", 'title' => ''], 'Status' => ['description' => 'The certificate status.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'Certificate' => ['description' => 'The certificate content.', 'type' => 'string', 'example' => '-----BEGIN CERTIFICATE-----', 'title' => ''], 'Result' => [ 'description' => 'The certificate information.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'The certificate ID.', 'type' => 'string', 'example' => 'babaabcd****', 'title' => ''], 'Name' => ['description' => 'The certificate name.', 'type' => 'string', 'example' => 'yourCertName', 'title' => ''], 'Status' => ['description' => 'The certificate status.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'Type' => ['description' => 'The certificate type.', 'type' => 'string', 'example' => 'upload', 'title' => ''], 'CommonName' => ['description' => 'The common name of the certificate.', 'type' => 'string', 'example' => 'www.example.com', 'title' => ''], 'NotBefore' => ['description' => 'The start time of the certificate validity period. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2023-03-31 02:08:00', 'title' => ''], 'NotAfter' => ['description' => 'The end time of the certificate validity period. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-03-31 02:08:00', 'title' => ''], 'Issuer' => ['description' => 'The certificate issue authority.', 'type' => 'string', 'example' => 'DigiCert', 'title' => ''], 'SAN' => ['description' => 'The Subject Alternative Name (SAN) of the certificate.', 'type' => 'string', 'example' => 'www.example.com,*.example.com', 'title' => ''], 'SignatureAlgorithm' => ['description' => 'The signature algorithm of the certificate.', 'type' => 'string', 'example' => 'SHA256-RSA', 'title' => ''], 'PubkeyAlgorithm' => ['description' => 'The public key algorithm of the certificate.', 'type' => 'string', 'example' => 'RSA', 'title' => ''], 'CreateTime' => ['description' => 'The creation time. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2020-05-12 02:00:53', 'title' => ''], 'UpdateTime' => ['description' => 'The update time. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-03-05 18:24:04', 'title' => ''], 'SerialNumber' => ['description' => 'The certificate serial number.', 'type' => 'string', 'example' => 'babaded901474b9693acf530e0fb1d**', 'title' => ''], 'FingerprintSha256' => ['description' => 'The SHA-256 fingerprint of the certificate.', 'type' => 'string', 'example' => '1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456a****', 'title' => ''], 'Hostnames' => [ 'description' => 'The list of associated domain names.', 'type' => 'array', 'items' => ['description' => 'The domain name.', 'type' => 'string', 'example' => '[\'www.example.com\', \'mail.example.com\']', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.', 'description' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'Id.MissingParameter', 'errorMessage' => 'The parameter Id is required.', 'description' => 'The required parameter Id is missing.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'Certificate.NotFound', 'errorMessage' => 'The specified certificate does not exist.', 'description' => 'The specified certificate does not exist.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SiteId\\": 0,\\n \\"SiteName\\": \\"example.com\\\\n\\",\\n \\"Status\\": \\"OK\\",\\n \\"Certificate\\": \\"-----BEGIN CERTIFICATE-----\\",\\n \\"Result\\": {\\n \\"Id\\": \\"babaabcd****\\",\\n \\"Name\\": \\"yourCertName\\",\\n \\"Status\\": \\"OK\\",\\n \\"Type\\": \\"upload\\",\\n \\"CommonName\\": \\"www.example.com\\",\\n \\"NotBefore\\": \\"2023-03-31 02:08:00\\",\\n \\"NotAfter\\": \\"2024-03-31 02:08:00\\",\\n \\"Issuer\\": \\"DigiCert\\",\\n \\"SAN\\": \\"www.example.com,*.example.com\\",\\n \\"SignatureAlgorithm\\": \\"SHA256-RSA\\",\\n \\"PubkeyAlgorithm\\": \\"RSA\\",\\n \\"CreateTime\\": \\"2020-05-12 02:00:53\\",\\n \\"UpdateTime\\": \\"2024-03-05 18:24:04\\",\\n \\"SerialNumber\\": \\"babaded901474b9693acf530e0fb1d**\\",\\n \\"FingerprintSha256\\": \\"1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456a****\\",\\n \\"Hostnames\\": [\\n \\"[\'www.example.com\', \'mail.example.com\']\\"\\n ]\\n },\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\"\\n}","type":"json"}]', 'title' => 'Retrieve back-to-origin client certificate information at the domain name granularity', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetOriginClientCertificate'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetOriginClientCertificate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'GetOriginClientCertificateHostnames' => [ 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '261755', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The certificate ID.', 'type' => 'string', 'required' => true, 'example' => 'babaabcd****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response object.', 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456789****', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com ', 'title' => ''], 'Id' => ['description' => 'The certificate ID.', 'type' => 'string', 'example' => 'babaabcd****', 'title' => ''], 'Hostnames' => [ 'description' => 'The associated hostnames.', 'type' => 'array', 'items' => ['description' => 'A hostname.', 'type' => 'string', 'example' => 'www.example.com ', 'title' => ''], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.', 'description' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Id.MissingParameter', 'errorMessage' => 'The parameter Id is required.', 'description' => 'The required parameter Id is missing.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'Certificate.NotFound', 'errorMessage' => 'The specified certificate does not exist.', 'description' => 'The specified certificate does not exist.'], ], ], 'title' => 'Obtain the list of domain names attached to a client certificate for origin fetch at domain name granularity', 'summary' => 'Retrieves the hostnames associated with a specific origin client certificate.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetOriginClientCertificateHostnames'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetOriginClientCertificateHostnames', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SiteId\\": 0,\\n \\"SiteName\\": \\"example.com \\",\\n \\"Id\\": \\"babaabcd****\\",\\n \\"Hostnames\\": [\\n \\"www.example.com \\"\\n ],\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","type":"json"}]', ], 'GetOriginPool' => [ 'summary' => 'Retrieves a specific source address pool by its source address pool ID.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238601', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'Id', 'in' => 'query', 'schema' => ['title' => '监视器id。', 'description' => 'The origin pool ID. To get it, call [ListOriginPools](~~2863947~~).', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1038520525196928'], ], [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. To get it, call [ListSites](~~2850189~~).', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '216558609793952', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response body.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'], 'Id' => ['description' => 'The origin pool ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '103852052519****', 'title' => ''], 'Name' => ['description' => 'The name of the origin pool. The name must be unique within a site.', 'type' => 'string', 'example' => 'pool1', 'title' => ''], 'SiteId' => ['description' => 'The ID of the site that contains the origin pool.', 'type' => 'integer', 'format' => 'int64', 'example' => '21655860979****', 'title' => ''], 'RecordName' => ['description' => 'The domain name assigned to the origin pool. It serves as the origin address for records within the site.', 'type' => 'string', 'example' => 'pool1.example.com', 'title' => ''], 'Enabled' => ['description' => 'Specifies if the origin pool is enabled.'."\n" ."\n" .'- true: The origin pool is enabled.'."\n" ."\n" .'- false: The origin pool is disabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'References' => [ 'description' => 'Resources that reference the origin pool. An origin pool is referenced if a load balancer or record uses it as an origin.', 'type' => 'object', 'properties' => [ 'LoadBalancers' => [ 'description' => 'The load balancers that use this origin pool.', 'type' => 'array', 'items' => [ 'description' => 'A load balancer that uses this origin pool.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the load balancer.', 'type' => 'string', 'example' => 'lb1.example.com', 'title' => ''], 'Id' => ['description' => 'The ID of the load balancer.', 'type' => 'integer', 'format' => 'int64', 'example' => '99874066052****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'DnsRecords' => [ 'description' => 'The Layer 7 records that use this origin pool as their origin.', 'type' => 'array', 'items' => [ 'description' => 'A Layer 7 record that uses this origin pool as its origin.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the record.', 'type' => 'string', 'example' => 'www.example.com', 'title' => ''], 'Id' => ['description' => 'The ID of the record.', 'type' => 'integer', 'format' => 'int64', 'example' => '104285288635****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'IPARecords' => [ 'description' => 'The Layer 4 records that use this origin pool as their origin.', 'type' => 'array', 'items' => [ 'description' => 'A Layer 4 record that uses this origin pool as its origin.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the record.', 'type' => 'string', 'example' => 'ipa.example.com', 'title' => ''], 'Id' => ['description' => 'The ID of the record.', 'type' => 'integer', 'format' => 'int64', 'example' => '104285288635****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'ReferenceLBCount' => ['description' => 'The number of load balancers that reference this origin pool.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], 'Origins' => [ 'description' => 'The origins in the origin pool.', 'type' => 'array', 'items' => [ 'description' => 'An origin in the origin pool.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'The origin ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '99750209487****', 'title' => ''], 'Name' => ['description' => 'The origin name.', 'type' => 'string', 'example' => 'origin1', 'title' => ''], 'Address' => ['description' => 'The origin address. For example, www\\.example.com.', 'type' => 'string', 'example' => 'www.example.com', 'title' => ''], 'Enabled' => ['description' => 'Specifies if the origin is enabled.'."\n" ."\n" .'- true: The origin is enabled.'."\n" ."\n" .'- false: The origin is disabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Weight' => ['description' => 'The weight of the origin. Must be an integer from 0 to 100.', 'type' => 'integer', 'format' => 'int32', 'example' => '50', 'title' => ''], 'Type' => ['description' => 'The type of the origin.'."\n" ."\n" .'- ip\\_domain: An IP address or a domain name.'."\n" ."\n" .'- OSS: An OSS bucket.'."\n" ."\n" .'- S3: An AWS S3 bucket.', 'type' => 'string', 'example' => 'ip_domain', 'title' => ''], 'Header' => ['description' => 'The request header to include in origin requests. Only the Host header is supported.', 'type' => 'any', 'example' => '{'."\n" .' "Host": ['."\n" .' "example.com"'."\n" .' ]'."\n" .' }', 'title' => ''], 'AuthConf' => [ 'description' => 'The authentication configuration. This parameter is required if the origin is an OSS or S3 bucket that requires authentication.', 'type' => 'object', 'properties' => [ 'AuthType' => ['description' => 'The authentication type.'."\n" ."\n" .'- public: Public access. For OSS or S3 origins with public read access.'."\n" ."\n" .'- private\\_same\\_account: Private, same account. For private OSS origins in the same account.'."\n" ."\n" .'- private\\_cross\\_account: Private, cross-account. For private OSS origins in a different account.'."\n" ."\n" .'- private: Private. For private S3 origins.', 'type' => 'string', 'example' => 'public', 'title' => ''], 'AccessKey' => ['description' => 'The AccessKey ID. This parameter is required if `AuthType` is set to `private_cross_account` or `private`.', 'type' => 'string', 'example' => 'yourAccessKeyID', 'title' => ''], 'SecretKey' => ['description' => 'The AccessKey secret. This parameter is required if `AuthType` is set to `private_cross_account` or `private`.', 'type' => 'string', 'example' => 'yourAccessKeySecret', 'title' => ''], 'Version' => ['description' => 'The signature version. Required if the origin is an AWS S3 bucket.', 'type' => 'string', 'example' => 'v4', 'title' => ''], 'Region' => ['description' => 'The AWS Region of the origin. Required if the origin is an AWS S3 bucket.', 'type' => 'string', 'example' => 'us-east-1'."\n", 'title' => ''], ], 'title' => '', 'example' => '', ], 'IpVersionPolicy' => ['description' => 'The IP version policy for origin requests.'."\n" ."\n" .'- round\\_robin: Default policy. Routes requests to IPv4 and IPv6 origins on a round-robin basis.'."\n" ."\n" .'- ipv4\\_first: Prioritizes IPv4. Routes requests to IPv4 origins first.'."\n" ."\n" .'- ipv6\\_first: Prioritizes IPv6. Routes requests to IPv6 origins first.'."\n" ."\n" .'- follow: Matches the client\'s IP version. The origin request uses the same IP version as the incoming request.', 'type' => 'string', 'example' => 'round_robin', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'OriginPoolNotExist', 'errorMessage' => 'The specified origin pool does not exist or does not belong to your account or website. Check and try again.', 'description' => 'The specified origin pool does not exist or does not belong to your account or website. Check and try again.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\",\\n \\"Id\\": 0,\\n \\"Name\\": \\"pool1\\",\\n \\"SiteId\\": 0,\\n \\"RecordName\\": \\"pool1.example.com\\",\\n \\"Enabled\\": true,\\n \\"References\\": {\\n \\"LoadBalancers\\": [\\n {\\n \\"Name\\": \\"lb1.example.com\\",\\n \\"Id\\": 0\\n }\\n ],\\n \\"DnsRecords\\": [\\n {\\n \\"Name\\": \\"www.example.com\\",\\n \\"Id\\": 0\\n }\\n ],\\n \\"IPARecords\\": [\\n {\\n \\"Name\\": \\"ipa.example.com\\",\\n \\"Id\\": 0\\n }\\n ]\\n },\\n \\"ReferenceLBCount\\": 5,\\n \\"Origins\\": [\\n {\\n \\"Id\\": 0,\\n \\"Name\\": \\"origin1\\",\\n \\"Address\\": \\"www.example.com\\",\\n \\"Enabled\\": true,\\n \\"Weight\\": 50,\\n \\"Type\\": \\"ip_domain\\",\\n \\"Header\\": \\"{\\\\n \\\\\\"Host\\\\\\": [\\\\n \\\\\\"example.com\\\\\\"\\\\n ]\\\\n }\\",\\n \\"AuthConf\\": {\\n \\"AuthType\\": \\"public\\",\\n \\"AccessKey\\": \\"yourAccessKeyID\\",\\n \\"SecretKey\\": \\"yourAccessKeySecret\\",\\n \\"Version\\": \\"v4\\",\\n \\"Region\\": \\"us-east-1\\\\n\\"\\n },\\n \\"IpVersionPolicy\\": \\"round_robin\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Query a Single Origin Pool', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetOriginPool'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetOriginPool', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'GetOriginProtection' => [ 'summary' => 'Queries site origin protection configurations, including the origin protection switch, the origin convergence switch, whether the origin IP whitelist needs to be updated, and detailed information about the origin IP whitelist, including the current origin IP whitelist used by the site, the latest origin IP whitelist, and the differences between them.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '250109', 'abilityTreeNodes' => ['FEATUREdcdn4VDL9A'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'Request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-A198-72F8FD6DA2FE'], 'CurrentIPWhitelist' => [ 'description' => 'The current origin IP whitelist used by the site.', 'type' => 'object', 'properties' => [ 'IPv4' => [ 'description' => 'The current origin IP whitelist used by the site, IPv4 addresses or CIDR blocks.', 'type' => 'array', 'items' => ['description' => 'IPv4 address or CIDR block.', 'type' => 'string', 'example' => '101.66.250.0/25', 'title' => ''], 'title' => '', 'example' => '', ], 'IPv6' => [ 'description' => 'The current origin IP whitelist used by the site, IPv6 addresses or CIDR blocks.', 'type' => 'array', 'items' => ['description' => 'IPv6 address or CIDR block.', 'type' => 'string', 'example' => '2409:8c54:1841:200a::/64', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'LatestIPWhitelist' => [ 'description' => 'The latest origin IP whitelist.', 'type' => 'object', 'properties' => [ 'IPv4' => [ 'description' => 'The latest origin IP whitelist, IPv4 addresses or CIDR blocks.', 'type' => 'array', 'items' => ['description' => 'IPv4 address or CIDR block.', 'type' => 'string', 'example' => '101.66.250.0/25', 'title' => ''], 'title' => '', 'example' => '', ], 'IPv6' => [ 'description' => 'The latest origin IP whitelist, IPv6 addresses or CIDR blocks.', 'type' => 'array', 'items' => ['description' => 'IPv6 address or CIDR block.', 'type' => 'string', 'example' => '2409:8c54:1841:200a::/64', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'DiffIPWhitelist' => [ 'description' => 'The changed origin IP whitelist.', 'type' => 'object', 'properties' => [ 'AddedIPWhitelist' => [ 'description' => 'The added origin IP whitelist entries.', 'type' => 'object', 'properties' => [ 'IPv4' => [ 'description' => 'Origin IP whitelist, IPv4 addresses or CIDR blocks.', 'type' => 'array', 'items' => ['description' => 'IPv4 address or CIDR block.', 'type' => 'string', 'example' => '101.66.250.0/25', 'title' => ''], 'title' => '', 'example' => '', ], 'IPv6' => [ 'description' => 'Origin IP whitelist, IPv6 addresses or CIDR blocks.', 'type' => 'array', 'items' => ['description' => 'IPv6 address or CIDR block.', 'type' => 'string', 'example' => '2409:8c54:1841:200a::/64', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'NoChangeIpWhitelist' => [ 'description' => 'The unchanged origin IP whitelist entries.', 'type' => 'object', 'properties' => [ 'IPv4' => [ 'description' => 'Origin IP whitelist, IPv4 addresses or CIDR blocks.', 'type' => 'array', 'items' => ['description' => 'IPv4 address or CIDR block.', 'type' => 'string', 'example' => '101.66.250.0/25', 'title' => ''], 'title' => '', 'example' => '', ], 'IPv6' => [ 'description' => 'Origin IP whitelist, IPv6 addresses or CIDR blocks.', 'type' => 'array', 'items' => ['description' => 'IPv6 address or CIDR block.', 'type' => 'string', 'example' => '2409:8c54:1841:200a::/64', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'RemovedIPWhitelist' => [ 'description' => 'The removed origin IP whitelist entries.', 'type' => 'object', 'properties' => [ 'IPv4' => [ 'description' => 'Origin IP whitelist, IPv4 addresses or CIDR blocks.', 'type' => 'array', 'items' => ['description' => 'IPv4 address or CIDR block.', 'type' => 'string', 'example' => '101.66.250.0/25', 'title' => ''], 'title' => '', 'example' => '', ], 'IPv6' => [ 'description' => 'Origin IP whitelist, IPv6 addresses or CIDR blocks.', 'type' => 'array', 'items' => ['description' => 'IPv6 address or CIDR block.', 'type' => 'string', 'example' => '2409:8c54:1841:200a::/64', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'RegionalCurrentIPWhitelist' => [ 'title' => '', 'description' => 'The regional origin IP whitelist currently used by the site.', 'type' => 'object', 'properties' => [ 'RegionalIPv4' => [ 'title' => '', 'description' => 'The regional origin IP whitelist currently used by the site, IPv4 CIDR blocks and regions.', 'type' => 'array', 'items' => [ 'title' => '', 'description' => 'IPv4 CIDR block and region.', 'type' => 'object', 'properties' => [ 'Cidr' => ['title' => '', 'description' => 'IPv4 CIDR block.', 'type' => 'string', 'example' => '101.66.250.0/25'], 'Region' => ['title' => '', 'description' => 'IPv4 region. Valid values:'."\n" ."\n" .'- chinese_mainland: Chinese mainland.'."\n" .'- global_excluding_chinese_mainland: Global (excluding Chinese mainland).', 'type' => 'string', 'example' => 'chinese_mainland'], ], 'example' => '', ], 'example' => '', ], 'RegionalIPv6' => [ 'title' => '', 'description' => 'The regional origin IP whitelist currently used by the site, IPv6 CIDR blocks and regions.', 'type' => 'array', 'items' => [ 'title' => '', 'description' => 'IPv6 CIDR block and region.', 'type' => 'object', 'properties' => [ 'Cidr' => ['title' => '', 'description' => 'IPv6 CIDR block.', 'type' => 'string', 'example' => '101.66.250.0/25'], 'Region' => ['title' => '', 'description' => 'IPv6 region. Valid values:'."\n" ."\n" .'- chinese_mainland: Chinese mainland.'."\n" .'- global_excluding_chinese_mainland: Global (excluding Chinese mainland).', 'type' => 'string', 'example' => 'chinese_mainland'], ], 'example' => '', ], 'example' => '', ], ], 'example' => '', ], 'RegionalLatestIPWhitelist' => [ 'title' => '', 'description' => 'The latest regional origin IP whitelist.', 'type' => 'object', 'properties' => [ 'RegionalIPv4' => [ 'title' => '', 'description' => 'The latest regional origin IP whitelist, IPv4 CIDR blocks and regions.', 'type' => 'array', 'items' => [ 'title' => '', 'description' => 'IPv4 CIDR block and region.', 'type' => 'object', 'properties' => [ 'Cidr' => ['title' => '', 'description' => 'IPv4 CIDR block.', 'type' => 'string', 'example' => '101.66.250.0/25'], 'Region' => ['title' => '', 'description' => 'IPv4 region. Valid values:'."\n" ."\n" .'- chinese_mainland: Chinese mainland.'."\n" .'- global_excluding_chinese_mainland: Global (excluding Chinese mainland).', 'type' => 'string', 'example' => 'chinese_mainland'], ], 'example' => '', ], 'example' => '', ], 'RegionalIPv6' => [ 'title' => '', 'description' => 'The latest regional origin IP whitelist, IPv6 CIDR blocks and regions.', 'type' => 'array', 'items' => [ 'title' => '', 'description' => 'IPv6 CIDR block and region.', 'type' => 'object', 'properties' => [ 'Cidr' => ['title' => '', 'description' => 'IPv6 CIDR block.', 'type' => 'string', 'example' => '101.66.250.0/25'], 'Region' => ['title' => '', 'description' => 'IPv6 region. Valid values:'."\n" ."\n" .'- chinese_mainland: Chinese mainland.'."\n" .'- global_excluding_chinese_mainland: Global (excluding Chinese mainland).', 'type' => 'string', 'example' => 'chinese_mainland'], ], 'example' => '', ], 'example' => '', ], ], 'example' => '', ], 'RegionalDiffIPWhitelist' => [ 'title' => '', 'description' => 'The changed regional origin IP whitelist.', 'type' => 'object', 'properties' => [ 'AddedIPRegionWhitelist' => [ 'title' => '', 'description' => 'The added regional origin IP whitelist entries.', 'type' => 'object', 'properties' => [ 'RegionalIPv4' => [ 'title' => '', 'description' => 'Regional origin IP whitelist, IPv4 CIDR blocks and regions.', 'type' => 'array', 'items' => [ 'title' => '', 'description' => 'IPv4 CIDR block and region.', 'type' => 'object', 'properties' => [ 'Cidr' => ['title' => '', 'description' => 'IPv4 CIDR block.', 'type' => 'string', 'example' => '101.66.250.0/25'], 'Region' => ['title' => '', 'description' => 'IPv4 region. Valid values:'."\n" ."\n" .'- chinese_mainland: Chinese mainland.'."\n" .'- global_excluding_chinese_mainland: Global (excluding Chinese mainland).', 'type' => 'string', 'example' => 'chinese_mainland'], ], 'example' => '', ], 'example' => '', ], 'RegionalIPv6' => [ 'title' => '', 'description' => 'Regional origin IP whitelist, IPv6 CIDR blocks and regions.', 'type' => 'array', 'items' => [ 'title' => '', 'description' => 'IPv6 CIDR block and region.', 'type' => 'object', 'properties' => [ 'Cidr' => ['title' => '', 'description' => 'IPv6 CIDR block.', 'type' => 'string', 'example' => '101.66.250.0/25'], 'Region' => ['title' => '', 'description' => 'IPv6 region. Valid values:'."\n" ."\n" .'- chinese_mainland: Chinese mainland.'."\n" .'- global_excluding_chinese_mainland: Global (excluding Chinese mainland).', 'type' => 'string', 'example' => 'chinese_mainland'], ], 'example' => '', ], 'example' => '', ], ], 'example' => '', ], 'NoChangeIpWhitelist' => [ 'title' => '', 'description' => 'The unchanged regional origin IP whitelist entries.', 'type' => 'object', 'properties' => [ 'RegionalIPv4' => [ 'title' => '', 'description' => 'Regional origin IP whitelist, IPv4 CIDR blocks and regions.', 'type' => 'array', 'items' => [ 'title' => '', 'description' => 'IPv4 CIDR block and region.', 'type' => 'object', 'properties' => [ 'Cidr' => ['title' => '', 'description' => 'IPv4 CIDR block.', 'type' => 'string', 'example' => '101.66.250.0/25'], 'Region' => ['title' => '', 'description' => 'IPv4 region. Valid values:'."\n" ."\n" .'- chinese_mainland: Chinese mainland.'."\n" .'- global_excluding_chinese_mainland: Global (excluding Chinese mainland).', 'type' => 'string', 'example' => 'chinese_mainland'], ], 'example' => '', ], 'example' => '', ], 'RegionalIPv6' => [ 'title' => '', 'description' => 'Regional origin IP whitelist, IPv6 CIDR blocks and regions.', 'type' => 'array', 'items' => [ 'title' => '', 'description' => 'IPv6 CIDR block and region.', 'type' => 'object', 'properties' => [ 'Cidr' => ['title' => '', 'description' => 'IPv6 CIDR block.', 'type' => 'string', 'example' => '101.66.250.0/25'], 'Region' => ['title' => '', 'description' => 'IPv6 region. Valid values:'."\n" ."\n" .'- chinese_mainland: Chinese mainland.'."\n" .'- global_excluding_chinese_mainland: Global (excluding Chinese mainland).', 'type' => 'string', 'example' => 'chinese_mainland'], ], 'example' => '', ], 'example' => '', ], ], 'example' => '', ], 'RemovedIPRegionWhitelist' => [ 'title' => '', 'description' => 'The removed regional origin IP whitelist entries.', 'type' => 'object', 'properties' => [ 'RegionalIPv4' => [ 'title' => '', 'description' => 'Regional origin IP whitelist, IPv4 CIDR blocks and regions.', 'type' => 'array', 'items' => [ 'title' => '', 'description' => 'IPv4 CIDR block and region.', 'type' => 'object', 'properties' => [ 'Cidr' => ['title' => '', 'description' => 'IPv4 CIDR block.', 'type' => 'string', 'example' => '101.66.250.0/25'], 'Region' => ['title' => '', 'description' => 'IPv4 region. Valid values:'."\n" ."\n" .'- chinese_mainland: Chinese mainland.'."\n" .'- global_excluding_chinese_mainland: Global (excluding Chinese mainland).', 'type' => 'string', 'example' => 'chinese_mainland'], ], 'example' => '', ], 'example' => '', ], 'RegionalIPv6' => [ 'title' => '', 'description' => 'Regional origin IP whitelist, IPv6 CIDR blocks and regions.', 'type' => 'array', 'items' => [ 'title' => '', 'description' => 'IPv6 CIDR block and region.', 'type' => 'object', 'properties' => [ 'Cidr' => ['title' => '', 'description' => 'IPv6 CIDR block.', 'type' => 'string', 'example' => '101.66.250.0/25'], 'Region' => [ 'title' => '', 'description' => 'IPv6 region. Valid values:'."\n" ."\n" .'- chinese_mainland: Chinese mainland.'."\n" .'- global_excluding_chinese_mainland: Global (excluding Chinese mainland).', 'enumValueTitles' => ['global_excluding_chinese_mainland' => 'Global (excluding Chinese mainland)', 'chinese_mainland' => 'Chinese mainland'], 'type' => 'string', 'example' => 'chinese_mainland', 'enum' => ['chinese_mainland', 'global_excluding_chinese_mainland'], ], ], 'example' => '', ], 'example' => '', ], ], 'example' => '', ], ], 'example' => '', ], 'NeedUpdate' => ['description' => 'Indicates whether the origin IP whitelist needs to be updated. When the current origin IP whitelist differs from the latest origin IP whitelist, an update is needed and this value returns true.'."\n" ."\n" .'- true: Update is needed.'."\n" .'- false: No update is needed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'OriginProtection' => ['description' => 'Origin protection switch:'."\n" ."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'OriginConverge' => ['description' => 'Origin convergence switch:'."\n" ."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'SiteId' => ['description' => 'Site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456****', 'title' => ''], 'AutoConfirmIPList' => ['title' => '', 'description' => 'Automatically enable the latest origin IP list.', 'type' => 'string', 'example' => 'off'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-A198-72F8FD6DA2FE\\",\\n \\"CurrentIPWhitelist\\": {\\n \\"IPv4\\": [\\n \\"101.66.250.0/25\\"\\n ],\\n \\"IPv6\\": [\\n \\"2409:8c54:1841:200a::/64\\"\\n ]\\n },\\n \\"LatestIPWhitelist\\": {\\n \\"IPv4\\": [\\n \\"101.66.250.0/25\\"\\n ],\\n \\"IPv6\\": [\\n \\"2409:8c54:1841:200a::/64\\"\\n ]\\n },\\n \\"DiffIPWhitelist\\": {\\n \\"AddedIPWhitelist\\": {\\n \\"IPv4\\": [\\n \\"101.66.250.0/25\\"\\n ],\\n \\"IPv6\\": [\\n \\"2409:8c54:1841:200a::/64\\"\\n ]\\n },\\n \\"NoChangeIpWhitelist\\": {\\n \\"IPv4\\": [\\n \\"101.66.250.0/25\\"\\n ],\\n \\"IPv6\\": [\\n \\"2409:8c54:1841:200a::/64\\"\\n ]\\n },\\n \\"RemovedIPWhitelist\\": {\\n \\"IPv4\\": [\\n \\"101.66.250.0/25\\"\\n ],\\n \\"IPv6\\": [\\n \\"2409:8c54:1841:200a::/64\\"\\n ]\\n }\\n },\\n \\"RegionalCurrentIPWhitelist\\": {\\n \\"RegionalIPv4\\": [\\n {\\n \\"Cidr\\": \\"101.66.250.0/25\\",\\n \\"Region\\": \\"chinese_mainland\\"\\n }\\n ],\\n \\"RegionalIPv6\\": [\\n {\\n \\"Cidr\\": \\"101.66.250.0/25\\",\\n \\"Region\\": \\"chinese_mainland\\"\\n }\\n ]\\n },\\n \\"RegionalLatestIPWhitelist\\": {\\n \\"RegionalIPv4\\": [\\n {\\n \\"Cidr\\": \\"101.66.250.0/25\\",\\n \\"Region\\": \\"chinese_mainland\\"\\n }\\n ],\\n \\"RegionalIPv6\\": [\\n {\\n \\"Cidr\\": \\"101.66.250.0/25\\",\\n \\"Region\\": \\"chinese_mainland\\"\\n }\\n ]\\n },\\n \\"RegionalDiffIPWhitelist\\": {\\n \\"AddedIPRegionWhitelist\\": {\\n \\"RegionalIPv4\\": [\\n {\\n \\"Cidr\\": \\"101.66.250.0/25\\",\\n \\"Region\\": \\"chinese_mainland\\"\\n }\\n ],\\n \\"RegionalIPv6\\": [\\n {\\n \\"Cidr\\": \\"101.66.250.0/25\\",\\n \\"Region\\": \\"chinese_mainland\\"\\n }\\n ]\\n },\\n \\"NoChangeIpWhitelist\\": {\\n \\"RegionalIPv4\\": [\\n {\\n \\"Cidr\\": \\"101.66.250.0/25\\",\\n \\"Region\\": \\"chinese_mainland\\"\\n }\\n ],\\n \\"RegionalIPv6\\": [\\n {\\n \\"Cidr\\": \\"101.66.250.0/25\\",\\n \\"Region\\": \\"chinese_mainland\\"\\n }\\n ]\\n },\\n \\"RemovedIPRegionWhitelist\\": {\\n \\"RegionalIPv4\\": [\\n {\\n \\"Cidr\\": \\"101.66.250.0/25\\",\\n \\"Region\\": \\"chinese_mainland\\"\\n }\\n ],\\n \\"RegionalIPv6\\": [\\n {\\n \\"Cidr\\": \\"101.66.250.0/25\\",\\n \\"Region\\": \\"chinese_mainland\\"\\n }\\n ]\\n }\\n },\\n \\"NeedUpdate\\": true,\\n \\"OriginProtection\\": \\"on\\",\\n \\"OriginConverge\\": \\"on\\",\\n \\"SiteId\\": 0,\\n \\"AutoConfirmIPList\\": \\"off\\"\\n}","type":"json"}]', 'title' => 'GetOriginProtection', 'changeSet' => [ ['createdAt' => '2024-12-24T01:42:33.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetOriginProtection'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetOriginProtection', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'GetOriginRule' => [ 'summary' => 'Queries the configurations of a single origin rule.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257604', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~ListSites~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '3400350********', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The ID of the configuration. You can call the [ListSiteRoutes](~~2866989~~) operation to obtain the ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '33793140540****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.'."\n", 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'], 'ConfigId' => ['description' => 'The configuration ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '352816096987136', 'title' => ''], 'ConfigType' => ['description' => 'The configuration type to query. Valid values:'."\n" ."\n" .'* global: global configurations.'."\n" .'* rule: rule configurations.'."\n", 'type' => 'string', 'example' => 'rule', 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the configurations. You can use this parameter to specify a version of your website to apply the feature settings. By default, version 0 is used.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Sequence' => ['description' => 'The rule execution order. The smaller the value, the higher the priority.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RuleEnable' => ['description' => 'Specifies whether to enable the rule. Valid values: You do not need to set this parameter when you add global configuration. Valid values:'."\n" ."\n" .'* on'."\n" .'* off'."\n", 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'The content of the rule. A conditional expression is used to match a user request. You do not need to set this parameter when you add global configuration. Use cases:'."\n" ."\n" .'* true: Match all incoming requests.'."\n" .'* Set the value to a custom expression, for example, (http.host eq "video.example.com"): Match the specified request.'."\n", 'type' => 'string', 'example' => '(http.host eq \\"video.example.com\\")'."\n", 'title' => ''], 'RuleName' => ['description' => 'The rule name. You do not need to set this parameter when you add global configurations.'."\n", 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'OriginHost' => ['description' => 'The Host header in origin requests.'."\n", 'type' => 'string', 'example' => 'origin.example.com'."\n", 'title' => ''], 'OriginScheme' => ['description' => 'The protocol used for origin requests. Valid values:'."\n" ."\n" .'* http: HTTP.'."\n" .'* https: HTTPS.'."\n" .'* follow: follows the protocol used by the client.'."\n", 'type' => 'string', 'example' => 'http', 'title' => ''], 'OriginSni' => ['description' => 'The SNI in origin requests.'."\n", 'type' => 'string', 'example' => 'origin.example.com'."\n", 'title' => ''], 'DnsRecord' => ['description' => 'The hostname that overrides the resolved hostname of an incoming request.'."\n", 'type' => 'string', 'example' => 'test.example.com'."\n", 'title' => ''], 'OriginHttpPort' => ['description' => 'The origin port that is accessed when the HTTP protocol is used to back to the origin.'."\n", 'type' => 'string', 'example' => '8080', 'title' => ''], 'OriginHttpsPort' => ['description' => 'The origin port that is accessed when the HTTPS protocol is used to back to the origin.'."\n", 'type' => 'string', 'example' => '4433', 'title' => ''], 'Range' => ['description' => 'Use range requests to download an object from the source. Valid values:'."\n" ."\n" .'* on'."\n" .'* off'."\n" .'* force: enables range origin fetch by force.'."\n", 'type' => 'string', 'example' => 'on', 'title' => ''], 'OriginMtls' => ['description' => 'The MTLS switch. Valid values:'."\n" ."\n" .'* on'."\n" .'* off'."\n", 'type' => 'string', 'example' => 'on', 'title' => ''], 'OriginVerify' => ['description' => 'The origin certificate verification switch. Valid values:'."\n" ."\n" .'* on'."\n" .'* off'."\n", 'type' => 'string', 'example' => 'on', 'title' => ''], 'RangeChunkSize' => ['description' => 'The size of the range part. Valid values:'."\n" ."\n" .'* 512KB'."\n" .'* 1MB'."\n" .'* 2MB'."\n" .'* 4MB'."\n", 'type' => 'string', 'example' => '1MB', 'title' => ''], 'OriginReadTimeout' => ['description' => 'The read timeout period (in seconds) on the origin.'."\n", 'type' => 'string', 'example' => '10', 'title' => ''], 'Follow302Enable' => ['description' => '302 follow switch. Valid values:'."\n" ."\n" .'* on'."\n" .'* off'."\n", 'type' => 'string', 'example' => 'on', 'title' => ''], 'Follow302MaxTries' => ['description' => 'The maximum number of 302 follow times. Valid values: 1 to 5.'."\n", 'type' => 'string', 'example' => '1', 'title' => ''], 'Follow302RetainArgs' => ['description' => 'Retains the original request parameters switch. Valid values:'."\n" ."\n" .'* on'."\n" .'* off'."\n", 'type' => 'string', 'example' => 'on', 'title' => ''], 'Follow302RetainHeader' => ['description' => 'Retain the original request header switch. Valid values:'."\n" ."\n" .'* on'."\n" .'* off'."\n", 'type' => 'string', 'example' => 'on', 'title' => ''], 'Follow302TargetHost' => ['description' => 'Target Host'."\n", 'type' => 'string', 'example' => 'test.com', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'title' => 'GetOriginRule', 'changeSet' => [ ['createdAt' => '2025-04-17T08:47:33.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-04-01T01:57:04.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-03-20T05:57:46.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-02-27T09:16:40.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetOriginRule'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetOriginRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\",\\n \\"ConfigId\\": 352816096987136,\\n \\"ConfigType\\": \\"rule\\",\\n \\"SiteVersion\\": 1,\\n \\"Sequence\\": 1,\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\\\\\\\\\"video.example.com\\\\\\\\\\\\\\")\\\\n\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"OriginHost\\": \\"origin.example.com\\\\n\\",\\n \\"OriginScheme\\": \\"http\\",\\n \\"OriginSni\\": \\"origin.example.com\\\\n\\",\\n \\"DnsRecord\\": \\"test.example.com\\\\n\\",\\n \\"OriginHttpPort\\": \\"8080\\",\\n \\"OriginHttpsPort\\": \\"4433\\",\\n \\"Range\\": \\"on\\",\\n \\"OriginMtls\\": \\"on\\",\\n \\"OriginVerify\\": \\"on\\",\\n \\"RangeChunkSize\\": \\"1MB\\",\\n \\"OriginReadTimeout\\": \\"10\\",\\n \\"Follow302Enable\\": \\"on\\",\\n \\"Follow302MaxTries\\": \\"1\\",\\n \\"Follow302RetainArgs\\": \\"on\\",\\n \\"Follow302RetainHeader\\": \\"on\\",\\n \\"Follow302TargetHost\\": \\"test.com\\"\\n}","type":"json"}]', ], 'GetPage' => [ 'summary' => 'Retrieves the details of a custom response page by its ID.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239604', 'abilityTreeNodes' => ['FEATUREdcdnL8HX1L'], ], 'parameters' => [ [ 'name' => 'Id', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The ID of the custom response page. You can obtain this value by calling the [ListPages](~~2850223~~) operation.', 'type' => 'integer', 'format' => 'int64', 'example' => '50000001', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225 '], 'UpdateTime' => ['title' => '', 'description' => 'The last modification time of the custom response page.'."\n" ."\n" .'Format: RFC 3339 / ISO 8601, UTC time zone (ending with Z).'."\n" ."\n" .'Example: 2026-06-10T14:23:45Z', 'type' => 'string', 'example' => '2024-01-01T00:00:00Z'], 'Id' => ['title' => '', 'description' => 'The ID of the custom response page. You can obtain this value by calling the [ListPages](~~2850223~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '50000001', 'pattern' => '', 'default' => ''], 'Name' => ['title' => '', 'description' => 'The name of the custom response page.', 'type' => 'string', 'required' => true, 'example' => 'example', 'maxLength' => 128, 'pattern' => '', 'default' => ''], 'Description' => ['title' => '', 'description' => 'The description of the custom response page.', 'type' => 'string', 'required' => false, 'example' => 'a custom deny page', 'maxLength' => 1024, 'pattern' => '', 'default' => ''], 'Kind' => ['title' => '', 'description' => 'The type of the custom response page.', 'type' => 'string', 'example' => 'custom'], 'ContentType' => ['title' => '', 'description' => 'The Content-Type field in the HTTP header.', 'type' => 'string', 'required' => true, 'example' => 'text/html', 'pattern' => '', 'default' => ''], 'Content' => ['title' => '', 'description' => 'The Base64-encoded response page content corresponding to the Content-Type.', 'type' => 'string', 'required' => true, 'example' => 'PGh0bWw+aGVsbG8gcGFnZTwvaHRtbD4=', 'pattern' => '', 'default' => ''], 'SiteIds' => [ 'title' => '', 'description' => 'The list of associated site IDs.', 'type' => 'array', 'format' => 'int64', 'items' => ['title' => '', 'description' => 'The associated site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameters', 'errorMessage' => 'The specified parameters are invalid.', 'description' => 'Parameter is illegal.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225 \\",\\n \\"UpdateTime\\": \\"2024-01-01T00:00:00Z\\",\\n \\"Id\\": 50000001,\\n \\"Name\\": \\"example\\",\\n \\"Description\\": \\"a custom deny page\\",\\n \\"Kind\\": \\"custom\\",\\n \\"ContentType\\": \\"text/html\\",\\n \\"Content\\": \\"PGh0bWw+aGVsbG8gcGFnZTwvaHRtbD4=\\",\\n \\"SiteIds\\": [\\n 1\\n ]\\n}","type":"json"}]', 'title' => 'Get custom response page details', 'changeSet' => [ ['createdAt' => '2024-09-25T07:02:48.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetPage'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetPage', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'GetPerformanceDataCollection' => [ 'summary' => 'Queries the data quality collection configuration.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '264794', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'F61CDR30-E83C-4FDA-BF73-9A94CDD44229'], 'Enable' => ['description' => 'Indicates whether quality data collection is enabled. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'title' => 'Query data quality collection configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetPerformanceDataCollection'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetPerformanceDataCollection', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F61CDR30-E83C-4FDA-BF73-9A94CDD44229\\",\\n \\"Enable\\": \\"on\\"\\n}","type":"json"}]', ], 'GetPurgeQuota' => [ 'summary' => 'Retrieves the quota and used quota for different refresh types.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239209', 'abilityTreeNodes' => ['FEATUREdcdnBCJPGN', 'FEATUREdcdnELTTM1', 'FEATUREdcdnA9FG2P', 'FEATUREdcdnRELTJV', 'FEATUREdcdnEWYS3A', 'FEATUREdcdn4QVGXU', 'FEATUREdcdn4TTNAL'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'Type', 'in' => 'query', 'schema' => [ 'description' => 'The refresh task type. Valid values:'."\n" .'- **file** (default): file refresh.'."\n" .'- **cachetag**: cache tag refresh.'."\n" .'- **directory**: directory refresh.'."\n" .'- **ignoreParams**: ignore-parameters refresh.'."\n" .'- **hostname**: hostname refresh.'."\n" .'- **purgeall**: purge all cache under the site.', 'enumValueTitles' => ['cachetag' => 'Cache tag refresh.', 'hostname' => 'Hostname refresh.', 'file' => 'File refresh.', 'cachekey' => 'Cache key refresh.', 'purgeall' => 'Purge all cache under the site.', 'ignoreparams' => 'Ignore-parameters refresh.', 'directory' => 'Directory refresh.', 'preload' => 'Prefetch.'], 'type' => 'string', 'required' => true, 'enum' => ['file', 'cachetag', 'directory', 'ignoreparams', 'hostname', 'purgeall', 'preload', 'cachekey'], 'example' => 'file', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74'], 'Quota' => ['description' => 'The total quota.', 'type' => 'string', 'example' => '100000', 'title' => ''], 'Usage' => ['description' => 'The used quota.', 'type' => 'string', 'example' => '10', 'title' => ''], 'Quota30Day' => ['description' => 'The total quota at 30-day granularity. A value of 0 indicates that this quota is not configured.', 'type' => 'string', 'example' => '200000', 'title' => ''], 'Usage30Day' => ['description' => 'The used quota at 30-day granularity.', 'type' => 'string', 'example' => '20', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingTimeParameter', 'errorMessage' => 'The StartTime and EndTime must be both specified.', 'description' => 'Please provide both a start time and an end time.'], ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'DomainNameOverLimit', 'errorMessage' => 'A maximum of 500 domains are supported for each request.', 'description' => 'Only 500 domain names are supported at a time. Please reduce the number of domain names to request again.'], ['errorCode' => 'InvalidTime', 'errorMessage' => 'The query time cannot exceed the last 3 days.', 'description' => 'The query time cannot exceed the last 3 days.'], ['errorCode' => 'MissingParameter.ObjectType', 'errorMessage' => 'The ObjectType parameter is required if DomainName or ObjectType is specified.', 'description' => 'Specify the ObjectType parameter.'], ['errorCode' => 'InvalidStationParameter', 'errorMessage' => 'The specified Station is invalid.', 'description' => 'The specified node parameter is invalid.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ['errorCode' => 'InvalidTaskId.Malformed', 'errorMessage' => 'The specified taskId is invalid.', 'description' => 'The specified task ID is invalid.'], ['errorCode' => 'InvalidParameters.InvalidUrls', 'errorMessage' => 'The specified urls are invalid.', 'description' => 'The requested URL parameter is invalid.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\",\\n \\"Quota\\": \\"100000\\",\\n \\"Usage\\": \\"10\\",\\n \\"Quota30Day\\": \\"200000\\",\\n \\"Usage30Day\\": \\"20\\"\\n}","type":"json"}]', 'title' => 'Get refresh quota', 'changeSet' => [ ['createdAt' => '2025-02-10T01:55:18.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetPurgeQuota'], ], ], 'ramActions' => [], ], 'GetRealtimeDeliveryField' => [ 'summary' => 'Queries the fields in real-time logs based on the log category.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239152', 'abilityTreeNodes' => ['FEATUREdcdn9K10I1'], ], 'parameters' => [ [ 'name' => 'BusinessType', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'The log category. Valid values:'."\n" ."\n" .'* **dcdn_log_access_l1** (default): access logs.'."\n" .'* **dcdn_log_er**: Edge Routine logs.'."\n" .'* **dcdn_log_waf**: firewall logs.'."\n" .'* **dcdn_log_ipa**: TCP/UDP proxy logs.'."\n", 'type' => 'string', 'required' => true, 'example' => 'dcdn_log_er'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247B78'], 'FieldContent' => [ 'description' => 'The fields returned.'."\n", 'type' => 'object', 'additionalProperties' => [ 'type' => 'object', 'properties' => [ 'SortOrder' => ['type' => 'integer', 'format' => 'int64', 'description' => 'The sequence number of the fields.'."\n", 'example' => '1', 'title' => ''], 'FieldList' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'FieldName' => ['type' => 'string', 'example' => 'ClientIp', 'description' => 'The field name.'."\n", 'title' => ''], 'Description' => ['type' => 'string', 'example' => 'IP address of the client.', 'description' => 'The description of the field in English.'."\n", 'title' => ''], 'DescriptionCn' => ['type' => 'string', 'example' => '客户端的IP地址', 'description' => 'The description of the field in Chinese.'."\n", 'title' => ''], 'Category' => ['type' => 'string', 'description' => 'The category of the field.'."\n", 'example' => 'Client', 'title' => ''], 'DataType' => ['type' => 'string', 'example' => 'String', 'description' => 'The data type of the field.'."\n", 'title' => ''], 'SortOrder' => ['type' => 'integer', 'format' => 'int64', 'description' => 'The sequence number of the field.'."\n", 'example' => '1', 'title' => ''], 'IsDefault' => ['type' => 'boolean', 'description' => 'Indicates whether the field is available by default.'."\n", 'example' => 'true', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'description' => 'The fields.'."\n", 'title' => '', 'example' => '', ], ], 'description' => 'The information about the returned fields.'."\n", 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247B78\\",\\n \\"FieldContent\\": {\\n \\"key\\": {\\n \\"SortOrder\\": 1,\\n \\"FieldList\\": [\\n {\\n \\"FieldName\\": \\"ClientIp\\",\\n \\"Description\\": \\"IP address of the client.\\",\\n \\"DescriptionCn\\": \\"客户端的IP地址\\",\\n \\"Category\\": \\"Client\\",\\n \\"DataType\\": \\"String\\",\\n \\"SortOrder\\": 1,\\n \\"IsDefault\\": true\\n }\\n ]\\n }\\n }\\n}","type":"json"}]', 'title' => 'GetRealtimeDeliveryField', 'changeSet' => [ ['createdAt' => '2024-09-27T05:57:03.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetRealtimeDeliveryField'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:GetRealtimeDeliveryField', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'operationType' => 'read', 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'GetRecord' => [ 'summary' => 'Retrieves the detailed configuration of a single DNS record, including the record value, priority, and back-to-origin authentication configuration (exclusive to CNAME records).', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239656', 'abilityTreeNodes' => ['FEATUREdcdnVFT29S'], ], 'parameters' => [ [ 'name' => 'RecordId', 'in' => 'query', 'schema' => ['description' => 'The ID of the record. You can obtain this value by calling [ListRecords](~~2850265~~).', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'F32C57AA-7BF8-49AE-A2CC-9F42390F5A19'], 'RecordModel' => [ 'description' => 'The information about the queried record.', 'type' => 'object', 'properties' => [ 'BizName' => ['description' => 'The business scenario when the record is accelerated. Valid values:'."\n" ."\n" .'- **image_video**: video and image.'."\n" .'- **api**: API.'."\n" .'- **web**: web page.', 'type' => 'string', 'example' => 'image_video', 'title' => ''], 'Data' => [ 'description' => 'The DNS information of the record. The content returned in this field varies by record type.', 'type' => 'object', 'properties' => [ 'Value' => ['description' => 'The record value or partial content. The meaning varies by record type:'."\n" ."\n" .'- **A/AAAA**: the IP address that the record points to. Separate multiple IP addresses with commas (,). At least one IPv4 address is required.'."\n" .'- **CNAME**: the target domain name that the record points to.'."\n" .'- **NS**: the name server for the specified domain name.'."\n" .'- **MX**: the valid target mail server domain name.'."\n" .'- **TXT**: a valid text string.'."\n" .'- **CAA**: a valid certification authority domain name.'."\n" .'- **SRV**: a valid target host domain name.'."\n" .'- **URI**: a valid URI string.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], 'Priority' => ['description' => 'The priority of the record. Valid values: **0 to 65535**. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'Flag' => ['description' => 'The flag of the record. The Flag of a CAA record indicates its priority and processing method. Valid values: **0 to 255**.', 'type' => 'integer', 'format' => 'int32', 'example' => '128', 'title' => ''], 'Tags' => ['description' => 'The tags of the record.', 'type' => 'object', 'example' => '{\\"test\\": \\"test val1\\"}', 'title' => ''], 'Weight' => ['description' => 'The weight of the record. Valid values: **0 to 65535**.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Port' => ['description' => 'The port of the record. Valid values: **0 to 65535**.', 'type' => 'integer', 'format' => 'int32', 'example' => '8707', 'title' => ''], 'Type' => ['description' => 'The certificate type of the record (in CERT records) or the public key type (in SSHFP records).', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'KeyTag' => ['description' => 'The public key identifier of the record. Valid values: **0 to 65535**.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Algorithm' => ['description' => 'The encryption algorithm used by the record. Valid values: **0 to 255**.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Certificate' => ['description' => 'The public key certificate information of the record.', 'type' => 'string', 'example' => 'dGVzdGFkYWxrcw==', 'title' => ''], 'Usage' => ['description' => 'The usage identifier of the record. Valid values: **0 to 255**.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Selector' => ['description' => 'The type of certificate or public key used by the record. Valid values: **0 to 255**.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'MatchingType' => ['description' => 'The algorithm policy used by the record for matching or verifying certificates. Valid values: **0 to 255**.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Fingerprint' => ['description' => 'The public key fingerprint value of the record.', 'type' => 'string', 'example' => 'abcdef1234567890', 'title' => ''], 'Tag' => ['description' => 'The tag of the record. The Tag of a CAA record indicates its specific type and purpose.', 'type' => 'string', 'example' => 'issue', 'title' => ''], ], 'example' => '{"value":"1.1.1.1"}', 'title' => '', ], 'CreateTime' => ['description' => 'The creation time of the record. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.', 'type' => 'string', 'example' => '2023-03-10T13:30:39Z', 'title' => ''], 'UpdateTime' => ['description' => 'The update time of the record. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.', 'type' => 'string', 'example' => '2023-01-27T02:26:22Z', 'title' => ''], 'Proxied' => ['description' => 'Indicates whether proxy acceleration is enabled for the record. Only CNAME and A/AAAA records support proxy acceleration. Valid values:'."\n" ."\n" .'- **true**: Proxy acceleration is enabled.'."\n" .'- **false**: Proxy acceleration is disabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'RecordId' => ['description' => 'The record ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123', 'title' => ''], 'RecordName' => ['description' => 'The record name.', 'type' => 'string', 'example' => 'a.example.com', 'title' => ''], 'RecordType' => ['description' => 'The DNS type of the record, such as **A/AAAA, CNAME, or TXT**.', 'type' => 'string', 'example' => 'A/AAAA', 'title' => ''], 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], 'Ttl' => ['description' => 'The Time-to-Live (TTL) of the record, in seconds. A value of 1 indicates that the TTL is set to automatic.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'RecordSourceType' => ['description' => 'The origin type of the CNAME record. Valid values:'."\n" ."\n" .'- **OSS**: OSS origin.'."\n" .'- **S3**: S3 origin.'."\n" .'- **LB**: load balancing origin.'."\n" .'- **OP**: IPAM pool origin.'."\n" .'- **Domain**: standard domain name origin.'."\n" ."\n" .'If this parameter is not specified or is left empty, the default value is Domain, which indicates a standard domain name origin type.', 'type' => 'string', 'example' => 'OSS ', 'title' => ''], 'RecordCname' => ['description' => 'The CNAME of the record.', 'type' => 'string', 'example' => 'a.example.com.cnamezone.com', 'title' => ''], 'Comment' => ['description' => 'The comment of the record.', 'type' => 'string', 'example' => 'Remarks', 'title' => ''], 'AuthConf' => [ 'description' => 'The back-to-origin authentication information of the CNAME record.', 'type' => 'object', 'properties' => [ 'AuthType' => ['description' => 'The origin authentication type. Valid values:'."\n" .'- **public**: public read. Select this value when the origin type is OSS or S3 and the origin has public read access.'."\n" .'- **private**: private read. Select this value when the origin type is S3 and the origin has private read access.'."\n" .'- **private_same_account**: private read within the same account. Select this value when the origin type is OSS, the origin is under the same Alibaba Cloud account, and the origin has private read access.'."\n" .'- **private_cross_account**: private read across accounts. Select this value when the origin type is OSS, the origin is under a different Alibaba Cloud account, and the origin has private read access.', 'type' => 'string', 'example' => 'public', 'title' => ''], 'SecretKey' => ['description' => 'The AccessKey of the account to which the origin belongs.', 'type' => 'string', 'example' => 'u0Nkg5gBK*******QF5wvKMM504JUHt', 'title' => ''], 'AccessKey' => ['description' => 'The AccessKey of the account to which the origin belongs.', 'type' => 'string', 'example' => 'VIxuvJSA2S03f******kp208dy5w7', 'title' => ''], 'Version' => ['description' => 'The signature algorithm version. Valid values:'."\n" .'- **v2**'."\n" .'- **v4**'."\n" ."\n" .'Default value: v4.', 'type' => 'string', 'example' => 'v2', 'title' => ''], 'Region' => ['description' => 'The region of the origin. Obtain the region from the official S3 website.', 'type' => 'string', 'example' => 'us-east-1', 'title' => ''], ], 'title' => '', 'example' => '', ], 'HostPolicy' => ['description' => 'The back-to-origin HOST policy. This parameter takes effect when the record type is CNAME. It specifies the HOST header policy for back-to-origin requests. Valid values:'."\n" ."\n" .'- **follow_hostname**: follows the host record.'."\n" .'- **follow_origin_domain**: follows the origin domain name.', 'type' => 'string', 'example' => 'follow_origin_domain', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], 404 => [ ['errorCode' => 'Record.NotFound', 'errorMessage' => 'The record does not exist. Check your configurations and try again.', 'description' => 'The record does not exist. Check your configurations and try again.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F32C57AA-7BF8-49AE-A2CC-9F42390F5A19\\",\\n \\"RecordModel\\": {\\n \\"BizName\\": \\"image_video\\",\\n \\"Data\\": {\\n \\"Value\\": \\"example.com\\",\\n \\"Priority\\": 10,\\n \\"Flag\\": 128,\\n \\"Tags\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"Weight\\": 0,\\n \\"Port\\": 8707,\\n \\"Type\\": 0,\\n \\"KeyTag\\": 1,\\n \\"Algorithm\\": 1,\\n \\"Certificate\\": \\"dGVzdGFkYWxrcw==\\",\\n \\"Usage\\": 0,\\n \\"Selector\\": 1,\\n \\"MatchingType\\": 1,\\n \\"Fingerprint\\": \\"abcdef1234567890\\",\\n \\"Tag\\": \\"issue\\"\\n },\\n \\"CreateTime\\": \\"2023-03-10T13:30:39Z\\",\\n \\"UpdateTime\\": \\"2023-01-27T02:26:22Z\\",\\n \\"Proxied\\": true,\\n \\"RecordId\\": 1234567890123,\\n \\"RecordName\\": \\"a.example.com\\",\\n \\"RecordType\\": \\"A/AAAA\\",\\n \\"SiteId\\": 1234567890123,\\n \\"SiteName\\": \\"example.com\\",\\n \\"Ttl\\": 20,\\n \\"RecordSourceType\\": \\"OSS \\",\\n \\"RecordCname\\": \\"a.example.com.cnamezone.com\\",\\n \\"Comment\\": \\"Remarks\\",\\n \\"AuthConf\\": {\\n \\"AuthType\\": \\"public\\",\\n \\"SecretKey\\": \\"u0Nkg5gBK*******QF5wvKMM504JUHt\\",\\n \\"AccessKey\\": \\"VIxuvJSA2S03f******kp208dy5w7\\",\\n \\"Version\\": \\"v2\\",\\n \\"Region\\": \\"us-east-1\\"\\n },\\n \\"HostPolicy\\": \\"follow_origin_domain\\"\\n }\\n}","type":"json"}]', 'title' => 'Query DNS record details', 'changeSet' => [ ['createdAt' => '2025-08-21T09:39:51.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-09-23T08:53:22.000Z', 'description' => 'Error codes changed, Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetRecord'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetRecord', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'GetRedirectRule' => [ 'summary' => 'Query Redirect Rule Details', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257659', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID, which can be obtained by calling the [ListSites](~~2850189~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '34003500310****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'Configuration ID. It can be obtained by calling the [ListRedirectRules](~~ListRedirectRules~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '35281609698****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Request response result.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9'], 'ConfigId' => ['description' => 'Configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '35281609698****', 'title' => ''], 'ConfigType' => ['description' => 'Configuration type. Possible values:'."\n" .'- global: Global configuration.'."\n" .'- rule: Rule-based configuration.', 'type' => 'string', 'example' => 'rule', 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the site configuration. For sites with version management enabled, this parameter can specify the effective version of the site, defaulting to version 0.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Sequence' => ['description' => 'Rule execution order. The smaller the value, the higher the priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RuleEnable' => ['description' => 'Rule switch. This parameter is not required when adding a global configuration. Possible values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'Rule content, using conditional expressions to match user requests. This parameter is not required when adding a global configuration. There are two usage scenarios:'."\n" .'- Match all incoming requests: Set the value to true'."\n" .'- Match specific requests: Set the value to a custom expression, e.g., (http.host eq \\"video.example.com\\")', 'type' => 'string', 'example' => '(http.host eq "video.example.com")', 'title' => ''], 'RuleName' => ['description' => 'Rule name. This parameter is not required when adding a global configuration.', 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'Type' => ['description' => 'Redirect type. Possible values:'."\n" .'- static: Static mode.'."\n" .'- dynamic: Dynamic mode.', 'type' => 'string', 'example' => 'static', 'title' => ''], 'TargetUrl' => ['description' => 'Target URL after redirection.', 'type' => 'string', 'example' => 'http://www.exapmle.com/index.html', 'title' => ''], 'StatusCode' => ['description' => 'Response status code used by the node to respond to the client with the redirect address. Possible values:'."\n" .'- 301'."\n" .'- 302'."\n" .'- 303'."\n" .'- 307'."\n" .'- 308', 'type' => 'string', 'example' => '301', 'title' => ''], 'ReserveQueryString' => ['description' => 'Preserve query string. Possible values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"ConfigId\\": 0,\\n \\"ConfigType\\": \\"rule\\",\\n \\"SiteVersion\\": 0,\\n \\"Sequence\\": 1,\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\"video.example.com\\\\\\")\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"Type\\": \\"static\\",\\n \\"TargetUrl\\": \\"http://www.exapmle.com/index.html\\",\\n \\"StatusCode\\": \\"301\\",\\n \\"ReserveQueryString\\": \\"on\\"\\n}","type":"json"}]', 'title' => 'Query Redirect Configuration Details', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetRedirectRule'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetRedirectRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'read', ], 'GetRewriteUrlRule' => [ 'summary' => 'Query details of the rewrite URL rule', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257643', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID, which can be obtained by calling the [ListSites](~~2850189~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****'."\n", 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'Configuration ID, which can be obtained by calling the [ListRewriteUrlRules](~~2867480~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '35281609698****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Request response result.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9'], 'ConfigId' => ['description' => 'Configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '35281609698****', 'title' => ''], 'ConfigType' => ['description' => 'Configuration type. Possible values:'."\n" .'- global: Global configuration;'."\n" .'- rule: Rule-based configuration;', 'type' => 'string', 'example' => 'global', 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the site configuration. For sites with version management enabled, you can use this parameter to specify the effective version of the site, defaulting to version 0.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Sequence' => ['description' => 'Rule execution order. The smaller the value, the higher the priority for execution.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RuleEnable' => ['description' => 'Rule switch. This parameter does not need to be set when adding a global configuration. Possible values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'Rule content, using conditional expressions to match user requests. This parameter does not need to be set when adding a global configuration. There are two usage scenarios:'."\n" .'- Match all incoming requests: Set the value to true'."\n" .'- Match specific requests: Set the value to a custom expression, e.g., (http.host eq \\"video.example.com\\")', 'type' => 'string', 'example' => '(http.host eq "video.example.com")', 'title' => ''], 'RuleName' => ['description' => 'Rule name. This parameter does not need to be set when adding a global configuration.', 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'RewriteUriType' => ['description' => 'URI rewrite type. Possible values:'."\n" ."\n" .'- static: Static mode.'."\n" .'- dynamic: Dynamic mode.', 'type' => 'string', 'example' => 'static', 'title' => ''], 'Uri' => ['description' => 'The target URI after rewriting.', 'type' => 'string', 'example' => '/image/example.jpg', 'title' => ''], 'RewriteQueryStringType' => ['description' => 'Query string rewrite type. Possible values:'."\n" ."\n" .'- static: Static mode.'."\n" .'- dynamic: Dynamic mode.', 'type' => 'string', 'example' => 'static', 'title' => ''], 'QueryString' => ['description' => 'The rewritten query string.', 'type' => 'string', 'example' => 'example=123', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"ConfigId\\": 0,\\n \\"ConfigType\\": \\"global\\",\\n \\"SiteVersion\\": 0,\\n \\"Sequence\\": 1,\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\"video.example.com\\\\\\")\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"RewriteUriType\\": \\"static\\",\\n \\"Uri\\": \\"/image/example.jpg\\",\\n \\"RewriteQueryStringType\\": \\"static\\",\\n \\"QueryString\\": \\"example=123\\"\\n}","type":"json"}]', 'title' => 'Query Rewrite URL Configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetRewriteUrlRule'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetRewriteUrlRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'read', ], 'GetRoutine' => [ 'summary' => 'Queries all configuration information of an Edge Routine, including the code version list, environment configuration list, associated domain name configuration list, and associated route configuration list.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239274', 'abilityTreeNodes' => ['FEATUREdcdn75UYDO'], ], 'parameters' => [ [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The name of the Edge Routine.', 'type' => 'string', 'required' => true, 'example' => 'test-routine1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395'], 'Envs' => [ 'description' => 'The list of environment context.', 'type' => 'array', 'items' => [ 'description' => 'The environment context.', 'type' => 'object', 'properties' => [ 'Env' => ['description' => 'The environment name.', 'type' => 'string', 'example' => 'production', 'title' => ''], 'CodeDeploy' => [ 'description' => 'The percentage-based canary release deployment information.', 'type' => 'object', 'properties' => [ 'DeployId' => ['description' => 'The deployment record ID.', 'type' => 'string', 'example' => '589267', 'title' => ''], 'CreationTime' => ['description' => 'The time when the deployment was created. The time follows the RFC 3339 standard in the UTC time zone.', 'type' => 'string', 'example' => '2023-05-11T09:21:36Z', 'title' => ''], 'Strategy' => [ 'description' => 'The deployment strategy. Default value: percentage.', 'enumValueTitles' => ['percentage' => 'percentage'], 'type' => 'string', 'example' => 'percentage', 'title' => '', ], 'CodeVersions' => [ 'description' => 'The list of deployed code version numbers.', 'type' => 'array', 'items' => [ 'description' => 'The information about a single deployed code version.', 'type' => 'object', 'properties' => [ 'CodeVersion' => ['description' => 'The code version number.', 'type' => 'string', 'example' => '1746583193971399525', 'title' => ''], 'Percentage' => ['description' => 'The canary release percentage of the code version.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''], 'Description' => ['description' => 'The description of the code version.', 'type' => 'string', 'example' => 'code version 1.', 'title' => ''], 'CreateTime' => ['description' => 'The time when the code version was created. The time follows the RFC 3339 standard in the UTC time zone.', 'type' => 'string', 'example' => '2025-07-23T09:01:40Z', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'CreateTime' => ['description' => 'The time when the Edge Routine was created. The time follows the RFC 3339 standard in the UTC time zone.', 'type' => 'string', 'example' => '2024-03-11T01:23:21Z'."\n", 'title' => ''], 'Description' => ['description' => 'The description of the Edge Routine.', 'type' => 'string', 'example' => 'ZWRpdCByb3V0aW5lIGNvbmZpZyBkZXNjcmlwdGlvbg', 'title' => ''], 'DefaultRelatedRecord' => ['description' => 'The default access record.', 'type' => 'string', 'example' => 'routine1.example.com', 'title' => ''], 'HasAssets' => ['description' => 'Indicates whether the Routine has the Assets tag.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Parameter verification failed. Check your configurations and try again.', 'description' => 'Parameter verification failed. Check your configurations and try again.'], ['errorCode' => 'RoutineNotExist', 'errorMessage' => 'The routine name does not exist. Check the routine name and try again.', 'description' => 'The routine name does not exist. Check the routine name and try again.'], ['errorCode' => 'InternalOperationError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395\\",\\n \\"Envs\\": [\\n {\\n \\"Env\\": \\"production\\",\\n \\"CodeDeploy\\": {\\n \\"DeployId\\": \\"589267\\",\\n \\"CreationTime\\": \\"2023-05-11T09:21:36Z\\",\\n \\"Strategy\\": \\"percentage\\",\\n \\"CodeVersions\\": [\\n {\\n \\"CodeVersion\\": \\"1746583193971399525\\",\\n \\"Percentage\\": 100,\\n \\"Description\\": \\"code version 1.\\",\\n \\"CreateTime\\": \\"2025-07-23T09:01:40Z\\"\\n }\\n ]\\n }\\n }\\n ],\\n \\"CreateTime\\": \\"2024-03-11T01:23:21Z\\\\n\\",\\n \\"Description\\": \\"ZWRpdCByb3V0aW5lIGNvbmZpZyBkZXNjcmlwdGlvbg\\",\\n \\"DefaultRelatedRecord\\": \\"routine1.example.com\\",\\n \\"HasAssets\\": false\\n}","type":"json"}]', 'title' => 'Query edge routine configuration', 'changeSet' => [ ['createdAt' => '2024-12-04T05:48:49.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetRoutine'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:GetRoutine', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'GetRoutineCodeVersion' => [ 'summary' => 'Queries the code information of a specific version of an Edge Routine.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239164', 'abilityTreeNodes' => ['FEATUREdcdn75UYDO'], ], 'parameters' => [ [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The name of the Edge Routine.', 'type' => 'string', 'required' => true, 'example' => 'test-routine1', 'title' => ''], ], [ 'name' => 'CodeVersion', 'in' => 'formData', 'schema' => ['description' => 'The code version number.', 'type' => 'string', 'required' => true, 'example' => '1710120201067203242', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395'], 'CodeDescription' => ['description' => 'The description of the code version.', 'type' => 'string', 'example' => 'test ver code desc'."\n", 'title' => ''], 'CreateTime' => ['description' => 'The creation time. The time follows the RFC 3339 standard in the UTC time zone.', 'type' => 'string', 'example' => '2024-03-11T01:23:21Z'."\n", 'title' => ''], 'RoutineCode' => ['description' => 'The code content.', 'type' => 'string', 'example' => 'PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPEVycm9yPgogIDxDb2RlPk5vU3VjaEtleTwvQ29kZT4KICA8TWVzc2FnZT5UaGUgc3BlY2lmaWVkIGtleSBkb2VzIG5vdCBleGlzdC48L01lc3NhZ2U', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'RoutineNotExist', 'errorMessage' => 'The routine name does not exist. Check the routine name and try again.', 'description' => 'The routine name does not exist. Check the routine name and try again.'], ['errorCode' => 'InternalOperationError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'CodeVersionNumberExceedQuotaLimit', 'errorMessage' => 'The maximum number of code versions in your plan has been reached. Check your plan quota and upgrade the plan to request a quota increase.', 'description' => 'The maximum number of code versions in your plan has been reached. Check your plan quota and upgrade the plan to request a quota increase.'], ['errorCode' => 'RoutineUserServiceStatusHalt', 'errorMessage' => 'Failed to update the configurations because you have overdue payments.', 'description' => 'Failed to update the configurations because you have overdue payments.'], ['errorCode' => 'ParameterNotExist', 'errorMessage' => 'The specified parameter does not exist. Check your configurations and try again.', 'description' => 'The specified parameter does not exist. Check your configurations and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395\\",\\n \\"CodeDescription\\": \\"test ver code desc\\\\n\\",\\n \\"CreateTime\\": \\"2024-03-11T01:23:21Z\\\\n\\",\\n \\"RoutineCode\\": \\"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPEVycm9yPgogIDxDb2RlPk5vU3VjaEtleTwvQ29kZT4KICA8TWVzc2FnZT5UaGUgc3BlY2lmaWVkIGtleSBkb2VzIG5vdCBleGlzdC48L01lc3NhZ2U\\"\\n}","type":"json"}]', 'title' => 'Query code information of a specific edge routine version', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetRoutineCodeVersion'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:GetRoutineCodeVersion', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'GetRoutineCodeVersionInfo' => [ 'summary' => 'Queries the status and other information of a specific code version of a specified Routine.', 'path' => '', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239164', 'abilityTreeNodes' => ['FEATUREdcdn75UYDO'], ], 'parameters' => [ [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The name of the Edge Routine.', 'type' => 'string', 'required' => true, 'example' => 'test', 'title' => ''], ], [ 'name' => 'CodeVersion', 'in' => 'formData', 'schema' => ['description' => 'The code version number to query.', 'type' => 'string', 'required' => true, 'example' => '1710120201067203242', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9'], 'CodeVersion' => ['description' => 'The code version number.', 'type' => 'string', 'example' => '1710120201067203242', 'title' => ''], 'Status' => ['description' => 'The status of the code version.', 'type' => 'string', 'example' => 'Available', 'title' => ''], 'CodeDescription' => ['description' => 'The description of the code version.', 'type' => 'string', 'example' => 'code desc version unstable', 'title' => ''], 'CreateTime' => ['description' => 'The time when the code version was created. The time follows the RFC 3339 standard in the UTC time zone.', 'type' => 'string', 'example' => '2025-08-04T01:54:19Z', 'title' => ''], 'HasAssets' => ['description' => 'Indicates whether the code version contains Assets files.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'ExtraInfo' => ['description' => 'The extra information of the code version. The value is in JSON string format.', 'type' => 'string', 'example' => '{}', 'title' => ''], 'BuildId' => ['description' => 'The build ID of the code.', 'type' => 'integer', 'format' => 'int64', 'example' => '26035169', 'title' => ''], 'ConfOptions' => [ 'description' => 'The list of configuration items for the code version.', 'type' => 'object', 'properties' => [ 'NotFoundStrategy' => ['description' => 'The NotFoundStrategy configuration item.', 'type' => 'string', 'example' => 'SinglePageApplication', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'RoutineNotExist', 'errorMessage' => 'The routine name does not exist. Check the routine name and try again.', 'description' => 'The routine name does not exist. Check the routine name and try again.'], ['errorCode' => 'InternalOperationError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'CodeVersionNumberExceedQuotaLimit', 'errorMessage' => 'The maximum number of code versions in your plan has been reached. Check your plan quota and upgrade the plan to request a quota increase.', 'description' => 'The maximum number of code versions in your plan has been reached. Check your plan quota and upgrade the plan to request a quota increase.'], ['errorCode' => 'RoutineUserServiceStatusHalt', 'errorMessage' => 'Failed to update the configurations because you have overdue payments.', 'description' => 'Failed to update the configurations because you have overdue payments.'], ['errorCode' => 'ParameterNotExist', 'errorMessage' => 'The specified parameter does not exist. Check your configurations and try again.', 'description' => 'The specified parameter does not exist. Check your configurations and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Query routine code version information', 'description' => '## Operation description'."\n" .'By calling this API operation, you can retrieve detailed information about a specific code version of a Routine, including but not limited to the version status, creation time, and whether the version contains Assets resource files. You must specify the Routine name and the code version number as request parameters.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:GetRoutineCodeVersionInfo', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"CodeVersion\\": \\"1710120201067203242\\",\\n \\"Status\\": \\"Available\\",\\n \\"CodeDescription\\": \\"code desc version unstable\\",\\n \\"CreateTime\\": \\"2025-08-04T01:54:19Z\\",\\n \\"HasAssets\\": true,\\n \\"ExtraInfo\\": \\"{}\\",\\n \\"BuildId\\": 26035169,\\n \\"ConfOptions\\": {\\n \\"NotFoundStrategy\\": \\"SinglePageApplication\\"\\n }\\n}","type":"json"}]', ], 'GetRoutineRoute' => [ 'summary' => 'Queries the configuration of a single Edge Routine route.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '266193', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID. You can call the [ListSiteRoutes](~~2879631~~) operation to obtain the ConfigId.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '35281609698****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '352816******', 'title' => ''], 'ConfigType' => ['description' => 'The configuration type. You can use this parameter to query global or rule configurations. Valid values:'."\n" ."\n" .'- global: queries global configurations.'."\n" .'- rule: queries rule configurations.', 'type' => 'string', 'example' => 'global', 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the site.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Sequence' => ['description' => 'The rule execution order.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RouteEnable' => ['description' => 'The route switch. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'The rule content.', 'type' => 'string', 'example' => '(http.host eq \\"video.example.com\\")'."\n", 'title' => ''], 'RouteName' => ['description' => 'The route name.', 'type' => 'string', 'example' => 'test_route', 'title' => ''], 'RoutineName' => ['description' => 'The Edge Routine name.', 'type' => 'string', 'example' => 'test-routine1', 'title' => ''], 'Bypass' => ['description' => 'The bypass mode. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Mode' => ['description' => 'The configuration mode. Valid values:'."\n" .'- simple: simple mode.'."\n" .'- custom: custom mode.', 'type' => 'string', 'example' => 'simple', 'title' => ''], 'Fallback' => ['description' => 'The back-to-origin on exception switch. When enabled, if the function encounters an exception such as CPU usage exceeding the limit, the request is forwarded to the origin. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Timeout' => ['title' => '', 'description' => 'The Edge Routine timeout period. Valid values: 5 to 60. Unit: seconds.', 'type' => 'string', 'example' => '5'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"ConfigId\\": 0,\\n \\"ConfigType\\": \\"global\\",\\n \\"SiteVersion\\": 0,\\n \\"Sequence\\": 1,\\n \\"RouteEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\\\\\\\\\"video.example.com\\\\\\\\\\\\\\")\\\\n\\",\\n \\"RouteName\\": \\"test_route\\",\\n \\"RoutineName\\": \\"test-routine1\\",\\n \\"Bypass\\": \\"on\\",\\n \\"Mode\\": \\"simple\\",\\n \\"Fallback\\": \\"on\\",\\n \\"Timeout\\": \\"5\\"\\n}","type":"json"}]', 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Query a single edge routine route configuration', 'changeSet' => [ ['createdAt' => '2025-06-25T05:35:34.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetRoutineRoute'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetRoutineRoute', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'GetRoutineStagingCodeUploadInfo' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238993', 'abilityTreeNodes' => ['FEATUREdcdn75UYDO'], ], 'parameters' => [ [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The routine name.'."\n", 'type' => 'string', 'required' => true, 'example' => 'test-routine1', 'title' => ''], ], [ 'name' => 'CodeDescription', 'in' => 'formData', 'schema' => ['description' => 'The code description.'."\n", 'type' => 'string', 'required' => false, 'example' => 'the description of code', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395'], 'CodeVersion' => ['description' => 'The code version.'."\n", 'type' => 'string', 'example' => '1710120201067203242', 'title' => ''], 'OssPostConfig' => ['description' => 'The configuration information that can be used to upload to OSS.'."\n", 'type' => 'object', 'example' => '{'."\n" .' "Url": "http://oss_fake_bucket_url",'."\n" .' "OSSAccessKeyId": "xxx",'."\n" .' "key": "site_er_js/hello.1418586423220543.unstable.js",'."\n" .' "callback": "xxx==",'."\n" .' "x:codeDescription": "xxx=",'."\n" .' "policy": "xxx",'."\n" .' "Signature": "xxx="'."\n" .'}', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'RoutineNotExist', 'errorMessage' => 'The routine name does not exist. Check the routine name and try again.', 'description' => 'The routine name does not exist. Check the routine name and try again.'], ['errorCode' => 'InternalOperationError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'CodeVersionNumberExceedQuotaLimit', 'errorMessage' => 'The maximum number of code versions in your plan has been reached. Check your plan quota and upgrade the plan to request a quota increase.', 'description' => 'The maximum number of code versions in your plan has been reached. Check your plan quota and upgrade the plan to request a quota increase.'], ['errorCode' => 'RoutineUserServiceStatusHalt', 'errorMessage' => 'Failed to update the configurations because you have overdue payments.', 'description' => 'Failed to update the configurations because you have overdue payments.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'GetRoutineStagingCodeUploadInfo', 'summary' => 'Obtains the release information about the routine code that is released to the staging environment. This information can be used to upload the test code to Object Storage Service (OSS).', 'description' => '* Every time the code of a routine is released to the staging environment, a version number is generated. Such code is for tests only.'."\n" .'* A routine can retain a maximum of 10 code versions. If the number of versions reaches the limit, you must call the DeleteRoutineCodeRevision operation to delete unwanted versions.'."\n", 'changeSet' => [ ['createdAt' => '2024-12-04T05:48:48.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:GetRoutineStagingCodeUploadInfo', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395\\",\\n \\"CodeVersion\\": \\"1710120201067203242\\",\\n \\"OssPostConfig\\": {\\n \\"Url\\": \\"http://oss_fake_bucket_url\\",\\n \\"OSSAccessKeyId\\": \\"xxx\\",\\n \\"key\\": \\"site_er_js/hello.1418586423220543.unstable.js\\",\\n \\"callback\\": \\"xxx==\\",\\n \\"x:codeDescription\\": \\"xxx=\\",\\n \\"policy\\": \\"xxx\\",\\n \\"Signature\\": \\"xxx=\\"\\n }\\n}","type":"json"}]', 'operationType' => 'read', ], 'GetScheduledPreloadJob' => [ 'summary' => 'Queries a single scheduled prefetch task by task ID.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238950', 'abilityTreeNodes' => ['FEATUREdcdn4TTNAL'], ], 'parameters' => [ [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The ID of the scheduled prefetch task.', 'type' => 'string', 'required' => true, 'example' => '665d3af3621bccf3fe29e1a4', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74'], 'AliUid' => ['title' => '', 'description' => 'The Alibaba Cloud account ID.', 'type' => 'string', 'example' => '15685865xxx14622'], 'CreatedAt' => ['title' => '', 'description' => 'The time when the task was created, in ISO 8601 format (for example, 2024-01-01T00:00:00+Z).', 'type' => 'string', 'example' => '2024-06-02T02:23:26Z'], 'Domains' => ['title' => '', 'description' => 'The list of domain names for prefetch.', 'type' => 'string', 'example' => 'testurl.com'], 'ErrorInfo' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'invalid domain:test.com'], 'FailedFileOss' => ['title' => '', 'description' => 'The OSS address of the failed file.', 'type' => 'string', 'example' => 'https://xxxobject.oss-cn-reginon.aliyuncs.com/9d91_xxxxxxxxxxx_158bb6e0f97c477791209bb46bd599f7'], 'FileId' => ['title' => '', 'description' => 'The ID of the URL list file, used for downloading.', 'type' => 'string', 'example' => '665d3b48621bccf3fe29e1a7'], 'Id' => ['title' => '', 'description' => 'The task ID.', 'type' => 'string', 'example' => '665d3af3621bccf3fe29e1a4'], 'InsertWay' => [ 'title' => '', 'description' => 'The URL insertion method.', 'enumValueTitles' => ['oss' => 'Batch import URLs from an OSS file.', 'testBox' => 'Enter URLs one by one in a text box.'], 'type' => 'string', 'enum' => ['file', 'url'], 'example' => 'oss', ], 'Name' => ['title' => '', 'description' => 'The task name.', 'type' => 'string', 'example' => 'example'], 'SiteId' => ['title' => '', 'description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '190007158391808'], 'TaskSubmitted' => ['title' => '', 'description' => 'The number of URLs that have been submitted to the system for prefetch.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'TaskType' => [ 'title' => '', 'description' => 'The task type (refresh or prefetch).', 'enumValueTitles' => ['path' => 'Directory refresh.', 'refresh' => 'URL refresh.', 'preload' => 'URL prefetch.'], 'type' => 'string', 'enum' => ['preload', 'refresh', 'path'], 'example' => 'preload', ], 'UrlCount' => ['title' => '', 'description' => 'The total number of URLs.', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], 'UrlSubmitted' => ['title' => '', 'description' => 'The number of submitted URLs.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'InvalidJob.JobCountOfSiteFull', 'errorMessage' => 'The maximum number of prefetch tasks for the website has been reached. Delete some unwanted ones and try again.', 'description' => 'The maximum number of prefetch tasks for the website has been reached. Delete some unwanted ones and try again.'], ['errorCode' => 'InvalidParameter.ObjectId', 'errorMessage' => 'Invalid task ID or execution plan ID.', 'description' => 'Invalid task ID or execution plan ID.'], ['errorCode' => 'MissingOssUrl', 'errorMessage' => 'OssUrl missing. Specify a valid URL of the OSS object that stores URLs to prefetch.', 'description' => 'OssUrl missing. Specify a valid URL of the OSS object that stores URLs to prefetch.'], ['errorCode' => 'MissingUrlList', 'errorMessage' => 'Enter the URLs you want to prefetch.', 'description' => 'Enter the URLs you want to prefetch.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ], 403 => [ ['errorCode' => 'InvalidUid.PermissionDenied', 'errorMessage' => 'You do not have the permissions to perform this operation on this resource. Check whether the specified UID is correct and has the required permissions.', 'description' => 'You do not have the permissions to perform this operation on this resource. Check whether the specified UID is correct and has the required permissions.'], ], [ ['errorCode' => 'InvalidJob.NotFound', 'errorMessage' => 'The task does not exist. Check whether the task ID is correct or whether the task has been deleted.', 'description' => 'The task does not exist. Check whether the task ID is correct or whether the task has been deleted.'], ['errorCode' => 'LogNotFound', 'errorMessage' => 'Failed to query the log. Check whether the task ID and execution ID are valid.', 'description' => 'Failed to query the log. Check whether the task ID and execution ID are valid.'], ['errorCode' => 'InvalidExecution.NotFound', 'errorMessage' => 'The execution plan does not exist. Check whether the parameters such as the execution ID, start time, and end time are correct.', 'description' => 'The execution plan does not exist. Check whether the parameters such as the execution ID, start time, and end time are correct.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\",\\n \\"AliUid\\": \\"15685865xxx14622\\",\\n \\"CreatedAt\\": \\"2024-06-02T02:23:26Z\\",\\n \\"Domains\\": \\"testurl.com\\",\\n \\"ErrorInfo\\": \\"invalid domain:test.com\\",\\n \\"FailedFileOss\\": \\"https://xxxobject.oss-cn-reginon.aliyuncs.com/9d91_xxxxxxxxxxx_158bb6e0f97c477791209bb46bd599f7\\",\\n \\"FileId\\": \\"665d3b48621bccf3fe29e1a7\\",\\n \\"Id\\": \\"665d3af3621bccf3fe29e1a4\\",\\n \\"InsertWay\\": \\"oss\\",\\n \\"Name\\": \\"example\\",\\n \\"SiteId\\": 190007158391808,\\n \\"TaskSubmitted\\": 1,\\n \\"TaskType\\": \\"preload\\",\\n \\"UrlCount\\": 2,\\n \\"UrlSubmitted\\": 1\\n}","type":"json"}]', 'title' => 'Query a single scheduled prefetch task', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetScheduledPreloadJob'], ], ], 'ramActions' => [], ], 'GetSeoBypass' => [ 'summary' => 'Queries the configuration for search engine crawler of a website.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257451', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247B78'], 'Enable' => [ 'description' => 'The status of the feature. Valid values:'."\n" ."\n" .'* **on**'."\n" .'* **off**'."\n", 'type' => 'string', 'enumValueTitles' => ['off' => 'off', 'on' => 'on'], 'example' => 'on', 'title' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247B78\\",\\n \\"Enable\\": \\"on\\"\\n}","type":"json"}]', 'title' => 'GetSeoBypass', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSeoBypass'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetSeoBypass', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'read', ], 'GetSite' => [ 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239631', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The ID of the site. Call the [ListSites](~~2850189~~) operation to obtain this ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '9732E117-8A37-49FD-A36F-ABBB87556CA7'], 'SiteModel' => [ 'description' => 'The details of the site.', 'type' => 'object', 'properties' => [ 'AccessType' => ['description' => 'The access type of the site. Valid values:'."\n" ."\n" .'- **NS**: Access via NS.'."\n" ."\n" .'- **CNAME**: Access via CNAME.', 'type' => 'string', 'example' => 'NS', 'title' => ''], 'CnameZone' => ['description' => 'For sites onboarded via CNAME, use this suffix to configure the CNAME record.', 'type' => 'string', 'example' => 'example.cname.com', 'title' => ''], 'Coverage' => ['description' => 'The acceleration region. Valid values:'."\n" ."\n" .'- **domestic**: Chinese mainland only'."\n" ."\n" .'- **global**: Global'."\n" ."\n" .'- **overseas**: Global (excluding the Chinese mainland)', 'type' => 'string', 'example' => 'domestic', 'title' => ''], 'CreateTime' => ['description' => 'The time (in UTC) when the site was created, formatted in ISO 8601 (`yyyy-MM-ddTHH:mm:ssZ`).', 'type' => 'string', 'example' => '2023-12-24T02:01:11Z', 'title' => ''], 'UpdateTime' => ['description' => 'The time (in UTC) when the site was last updated, formatted in ISO 8601 (`yyyy-MM-ddTHH:mm:ssZ`).', 'type' => 'string', 'example' => '2023-12-24T02:01:11Z', 'title' => ''], 'InstanceId' => ['description' => 'The ID of the plan instance.', 'type' => 'string', 'example' => 'cas-merge-q6h0bv', 'title' => ''], 'NameServerList' => ['description' => 'A comma-separated list of name servers assigned to the site.', 'type' => 'string', 'example' => 'male1-1.ialicdn.com,female1-1.ialicdn.com', 'title' => ''], 'PlanName' => ['description' => 'The name of the plan.', 'type' => 'string', 'example' => 'plan-168777532****', 'title' => ''], 'PlanSpecName' => ['description' => 'The name of the plan specification.', 'type' => 'string', 'example' => 'normal', 'title' => ''], 'ResourceGroupId' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'example' => 'rg-aek26g6i6se****', 'title' => ''], 'SiteId' => ['description' => 'The ID of the site.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123', 'title' => ''], 'SiteName' => ['description' => 'The name of the site.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], 'Status' => ['description' => 'The status of the site. Valid values:'."\n" ."\n" .'- **pending**: The site is pending configuration.'."\n" ."\n" .'- **active**: The site is active.'."\n" ."\n" .'- **offline**: The site is offline.'."\n" ."\n" .'- **moved**: The site has been superseded.', 'type' => 'string', 'example' => 'pending', 'title' => ''], 'Tags' => ['description' => 'The tags of the site.', 'type' => 'object', 'example' => '{"tag1":"value1"}', 'title' => ''], 'VerifyCode' => ['description' => 'For sites onboarded via CNAME, you must configure this code as a TXT record.', 'type' => 'string', 'example' => 'verify_d516cb3740f81f0cef77d162edd1****', 'title' => ''], 'VanityNSList' => [ 'description' => 'Each key is a custom name server, and its value is a comma-separated list of the server\'s IP addresses.', 'type' => 'object', 'additionalProperties' => ['description' => 'The name of a custom name server.', 'type' => 'string', 'example' => 'ns1.example.com', 'title' => ''], 'title' => '', 'example' => '', ], 'VersionManagement' => ['description' => 'If `true`, version management is enabled for the site.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'OfflineReason' => ['description' => 'The reason the site is offline. This parameter appears only when `Status` is `offline`. Valid values:'."\n" ."\n" .'- **expiration\\_arrears**: The subscription plan has expired or the account has overdue payments.'."\n" ."\n" .'- **internally\\_disabled**: The site was disabled by the system.'."\n" ."\n" .'- **missing\\_icp**: The domain is missing an ICP license.'."\n" ."\n" .'- **content\\_violation**: The site violated content policies.'."\n" ."\n" .'- **proactively\\_disabled**: The site was disabled either by you or by a usage limit that you configured.', 'type' => 'string', 'example' => 'expiration_ arrears', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'description' => 'The response body.', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Query information of a single site', 'summary' => 'Retrieves the details of a site by its ID.', 'changeSet' => [ ['createdAt' => '2025-02-18T05:59:13.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-09-18T08:21:56.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSite'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetSite', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9732E117-8A37-49FD-A36F-ABBB87556CA7\\",\\n \\"SiteModel\\": {\\n \\"AccessType\\": \\"NS\\",\\n \\"CnameZone\\": \\"example.cname.com\\",\\n \\"Coverage\\": \\"domestic\\",\\n \\"CreateTime\\": \\"2023-12-24T02:01:11Z\\",\\n \\"UpdateTime\\": \\"2023-12-24T02:01:11Z\\",\\n \\"InstanceId\\": \\"cas-merge-q6h0bv\\",\\n \\"NameServerList\\": \\"male1-1.ialicdn.com,female1-1.ialicdn.com\\",\\n \\"PlanName\\": \\"plan-168777532****\\",\\n \\"PlanSpecName\\": \\"normal\\",\\n \\"ResourceGroupId\\": \\"rg-aek26g6i6se****\\",\\n \\"SiteId\\": 1234567890123,\\n \\"SiteName\\": \\"example.com\\",\\n \\"Status\\": \\"pending\\",\\n \\"Tags\\": {\\n \\"tag1\\": \\"value1\\"\\n },\\n \\"VerifyCode\\": \\"verify_d516cb3740f81f0cef77d162edd1****\\",\\n \\"VanityNSList\\": {\\n \\"key\\": \\"ns1.example.com\\"\\n },\\n \\"VersionManagement\\": true,\\n \\"OfflineReason\\": \\"expiration_ arrears\\"\\n }\\n}","type":"json"}]', ], 'GetSiteCurrentNS' => [ 'summary' => 'Queries the nameservers configured for a website.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239622', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID. It can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'NSList' => [ 'description' => 'The nameservers of the website.'."\n", 'type' => 'array', 'items' => ['description' => 'The nameserver name.'."\n", 'type' => 'string', 'example' => 'ns1.example.com', 'title' => ''], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '2430E05E-1340-5773-B5E1-B743929F46F2', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.SiteName', 'errorMessage' => 'Invalid website name. Specify a valid name that contains letters and digits and does not contain special characters.', 'description' => 'Invalid website name. Specify a valid name that contains letters and digits and does not contain special characters.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NSList\\": [\\n \\"ns1.example.com\\"\\n ],\\n \\"RequestId\\": \\"2430E05E-1340-5773-B5E1-B743929F46F2\\"\\n}","type":"json"}]', 'title' => 'GetSiteCurrentNS', 'changeSet' => [ ['createdAt' => '2024-09-18T08:21:56.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSiteCurrentNS'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetSiteCurrentNS', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'GetSiteCustomLog' => [ 'summary' => 'Queries the configuration of custom log fields for a website.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239137', 'abilityTreeNodes' => ['FEATUREdcdn9K10I1'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '11223***', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '6befa4aa-2a94-4f51-a245-295787192d2c'], 'SiteId' => ['description' => 'The website ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '167026711***', 'title' => ''], 'ConfigId' => ['description' => 'The ID of the custom log field configuration.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '6befa4aa-2a94-4f51-a245-295787192d2c', 'title' => ''], 'LogCustomField' => [ 'description' => 'The custom fields.'."\n", 'type' => 'object', 'properties' => [ 'RequestHeaders' => [ 'description' => 'The request header fields.'."\n", 'type' => 'array', 'items' => ['description' => 'The request header.'."\n", 'type' => 'string', 'example' => 'x-acs-request-id', 'title' => ''], 'title' => '', 'example' => '', ], 'ResponseHeaders' => [ 'description' => 'The response header fields.'."\n", 'type' => 'array', 'items' => ['description' => 'The response header.'."\n", 'type' => 'string', 'example' => 'X_Swift_Error', 'title' => ''], 'title' => '', 'example' => '', ], 'Cookies' => [ 'description' => 'The cookie fields.'."\n", 'type' => 'array', 'items' => ['description' => 'The cookie.'."\n", 'type' => 'string', 'example' => 'sessionId', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'IsExist' => ['description' => 'Indicates whether the custom configuration exists.'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6befa4aa-2a94-4f51-a245-295787192d2c\\",\\n \\"SiteId\\": 0,\\n \\"ConfigId\\": 0,\\n \\"LogCustomField\\": {\\n \\"RequestHeaders\\": [\\n \\"x-acs-request-id\\"\\n ],\\n \\"ResponseHeaders\\": [\\n \\"X_Swift_Error\\"\\n ],\\n \\"Cookies\\": [\\n \\"sessionId\\"\\n ]\\n },\\n \\"IsExist\\": true\\n}","type":"json"}]', 'title' => 'GetSiteCustomLog', 'description' => '* **Description**: You can call this operation to query the configuration of custom log fields for a website, including custom fields in request headers, response headers, and cookies.'."\n" .'* **Scenarios**: You can call this operation in scenarios where you need to obtain specific HTTP headers or cookie information for log analysis.'."\n" .'* ****'."\n", 'changeSet' => [ ['createdAt' => '2024-09-27T05:57:03.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSiteCustomLog'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:GetSiteCustomLog', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'read', 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'GetSiteDeliveryTask' => [ 'summary' => 'Retrieves the details of a real-time log delivery task.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239221', 'abilityTreeNodes' => ['FEATUREdcdn9K10I1'], ], 'parameters' => [ [ 'name' => 'TaskName', 'in' => 'query', 'schema' => ['description' => 'The task name.', 'type' => 'string', 'required' => true, 'example' => 'cdn-test-task', 'title' => ''], ], [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The ID of the site. Call the [ListSites](~~2850189~~) API to obtain the ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '123456***', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '34DCBC8A-****-****-****-6DAA11D7DDBD'], 'TaskName' => ['description' => 'The task name.', 'type' => 'string', 'example' => 'cdn-test-task', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'test.***.com', 'title' => ''], 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456****', 'title' => ''], 'DiscardRate' => ['description' => 'The discard rate.', 'type' => 'number', 'format' => 'float', 'example' => '0.0', 'title' => ''], 'DataCenter' => ['description' => 'The data center. Valid values:'."\n" ."\n" .'- **cn**: Chinese mainland.'."\n" ."\n" .'- **sg**: Global (excluding Chinese mainland). Note that the value for this region is "sg".', 'type' => 'string', 'example' => 'cn', 'title' => ''], 'BusinessType' => ['description' => 'The type of real-time log for Dynamic Route for CDN (DCDN). Valid values:'."\n" ."\n" .'- **dcdn\\_log\\_access\\_l1** (default): access log.'."\n" ."\n" .'- **dcdn\\_log\\_er**: edge function log.'."\n" ."\n" .'- **dcdn\\_log\\_waf**: WAF log.'."\n" ."\n" .'- **dcdn\\_log\\_ipa**: layer 4 acceleration log.', 'type' => 'string', 'example' => 'dcdn_log_access_l1', 'title' => ''], 'Status' => ['description' => 'The status of the task. Valid values:'."\n" ."\n" .'- **online**: The task is delivering logs.'."\n" ."\n" .'- **offline**: The task is paused.', 'type' => 'string', 'example' => 'online', 'title' => ''], 'DeliveryType' => ['description' => 'The delivery type. Valid values:'."\n" ."\n" .'- **sls**: Log Service.'."\n" ."\n" .'- **http**: HTTP service.'."\n" ."\n" .'- **aws3**: Amazon S3.'."\n" ."\n" .'- **oss**: Object Storage Service.'."\n" ."\n" .'- **kafka**: Kafka service.'."\n" ."\n" .'- **aws3cmpt**: Amazon S3-compatible service.', 'type' => 'string', 'example' => 'sls', 'title' => ''], 'FieldList' => ['description' => 'A comma-separated list of log fields to deliver.', 'type' => 'string', 'example' => 'Client,UserAgent', 'title' => ''], 'FilterRules' => ['description' => 'The filter rules.', 'type' => 'string', 'example' => '[]', 'title' => ''], 'SinkConfig' => ['description' => 'The delivery configuration.', 'type' => 'any', 'example' => '{\'Region\': \'cn-hangzhou\', \'Endpoint\': \'https://***.oss-cn-hangzhou.aliyuncs.com\', \'BucketPath\': \'hjy-test002/online-logs\'}', 'title' => ''], 'RawRule' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'FilterVer' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'GetSiteDeliveryTask', 'changeSet' => [ ['createdAt' => '2025-06-24T01:43:10.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-09-27T05:57:03.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSiteDeliveryTask'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetSiteDeliveryTask', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"34DCBC8A-****-****-****-6DAA11D7DDBD\\",\\n \\"TaskName\\": \\"cdn-test-task\\",\\n \\"SiteName\\": \\"test.***.com\\",\\n \\"SiteId\\": 0,\\n \\"DiscardRate\\": 0,\\n \\"DataCenter\\": \\"cn\\",\\n \\"BusinessType\\": \\"dcdn_log_access_l1\\",\\n \\"Status\\": \\"online\\",\\n \\"DeliveryType\\": \\"sls\\",\\n \\"FieldList\\": \\"Client,UserAgent\\",\\n \\"FilterRules\\": \\"[]\\",\\n \\"SinkConfig\\": \\"{\'Region\': \'cn-hangzhou\', \'Endpoint\': \'https://***.oss-cn-hangzhou.aliyuncs.com\', \'BucketPath\': \'hjy-test002/online-logs\'}\\",\\n \\"RawRule\\": \\"\\",\\n \\"FilterVer\\": \\"\\"\\n}","type":"json"}]', ], 'GetSiteLogDeliveryQuota' => [ 'summary' => 'Queries the remaining quota for delivering a specific category of real-time logs in a website.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239188', 'abilityTreeNodes' => ['FEATUREdcdn9K10I1'], ], 'parameters' => [ [ 'name' => 'BusinessType', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The log category. Valid values:'."\n" ."\n" .'1. dcdn\\_log\\_access\\_l1 (default): access logs.'."\n" ."\n" .'2. dcdn\\_log\\_er: Edge Routine logs.'."\n" ."\n" .'3. dcdn\\_log\\_waf: firewall logs.'."\n" ."\n" .'4. dcdn\\_log\\_ipa: TCP/UDP proxy logs.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => 'dcdn_log_access_l1'], ], [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '4C14840EF0EAAB6D97CDE0C5F6554ACE'], 'FreeQuota' => ['description' => 'The remaining quota.', 'type' => 'integer', 'format' => 'int64', 'example' => '3', 'title' => ''], 'BusinessType' => ['description' => 'The log category. Valid values:'."\n" ."\n" .'1. dcdn\\_log\\_access\\_l1 (default): access logs.'."\n" ."\n" .'2. dcdn\\_log\\_er: Edge Routine logs.'."\n" ."\n" .'3. dcdn\\_log\\_waf: firewall logs.'."\n" ."\n" .'4. dcdn\\_log\\_ipa: TCP/UDP proxy logs.', 'type' => 'string', 'example' => 'dcdn_log_access_l1', 'title' => ''], 'SiteId' => ['description' => 'The website ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'GetSiteLogDeliveryQuota', 'description' => 'Use this operation to query the remaining quota for delivering a specific category of real-time logs in a website within an Alibaba Cloud account. This is essential for monitoring and managing your log delivery capacity to ensure that logs can be delivered to the destination and prevent data loss or latency caused by insufficient quota.'."\n" ."\n" .'**Take note of the following parameters:**'."\n" ."\n" .'- \\`\\`'."\n" ."\n" .'- `BusinessType` is required. You must specify a log category to obtain the corresponding quota information.'."\n" ."\n" .'- `SiteId` specifies the ID of a website, which must be a valid integer that corresponds to a website that you configured on Alibaba Cloud.'."\n" ."\n" .'**Response:**'."\n" ."\n" .'- If a request is successful, the system returns the remaining log delivery quota (`FreeQuota`), request ID (`RequestId`), website ID (`SiteId`), and log category (`BusinessType`). You can confirm and record the returned data.', 'changeSet' => [ ['createdAt' => '2024-09-27T05:57:03.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSiteLogDeliveryQuota'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:GetSiteLogDeliveryQuota', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4C14840EF0EAAB6D97CDE0C5F6554ACE\\",\\n \\"FreeQuota\\": 3,\\n \\"BusinessType\\": \\"dcdn_log_access_l1\\",\\n \\"SiteId\\": 0\\n}","type":"json"}]', ], 'GetSiteNameExclusive' => [ 'summary' => 'Queries the site hold configuration of a website. After you enable site hold, other accounts cannot add your website domain or its subdomains to ESA.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257455', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '35C66C7B-671H-4297-9187-2C4477247A78'], 'Enable' => [ 'description' => 'Indicates whether site hold is enabled. Valid values:'."\n" ."\n" .'* on'."\n" .'* off'."\n", 'type' => 'string', 'enumValueTitles' => ['off' => 'off', 'on' => 'on'], 'example' => 'on', 'title' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"35C66C7B-671H-4297-9187-2C4477247A78\\",\\n \\"Enable\\": \\"on\\"\\n}","type":"json"}]', 'title' => 'GetSiteNameExclusive', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSiteNameExclusive'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetSiteNameExclusive', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'read', ], 'GetSiteOriginClientCertificate' => [ 'summary' => 'Retrieves the back-to-origin client certificate information at the site level.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '261746', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The certificate ID.', 'type' => 'string', 'required' => true, 'example' => 'babaabcd****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456789****', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], 'Status' => ['description' => 'The certificate status.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'Certificate' => ['description' => 'The certificate content.', 'type' => 'string', 'example' => '-----BEGIN CERTIFICATE-----', 'title' => ''], 'Result' => [ 'description' => 'The certificate information.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'The certificate ID.', 'type' => 'string', 'example' => 'babaabcd****', 'title' => ''], 'Name' => ['description' => 'The certificate name.', 'type' => 'string', 'example' => 'yourCertName', 'title' => ''], 'Status' => ['description' => 'The certificate status.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'Type' => ['description' => 'The certificate type.', 'type' => 'string', 'example' => 'upload', 'title' => ''], 'CommonName' => ['description' => 'The common name of the certificate.', 'type' => 'string', 'example' => 'www.example.com', 'title' => ''], 'NotBefore' => ['description' => 'The start time of the certificate validity period. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2023-03-31 02:08:00', 'title' => ''], 'NotAfter' => ['description' => 'The end time of the certificate validity period. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-03-31 02:08:00', 'title' => ''], 'Issuer' => ['description' => 'The certification authority that issued the certificate.', 'type' => 'string', 'example' => 'DigiCert', 'title' => ''], 'SAN' => ['description' => 'The Subject Alternative Name (SAN) of the certificate.', 'type' => 'string', 'example' => 'www.example.com,*.example.com', 'title' => ''], 'SignatureAlgorithm' => ['description' => 'The signature algorithm of the certificate.', 'type' => 'string', 'example' => 'SHA256-RSA', 'title' => ''], 'PubkeyAlgorithm' => ['description' => 'The public key algorithm of the certificate.', 'type' => 'string', 'example' => 'RSA', 'title' => ''], 'CreateTime' => ['description' => 'The creation time. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-06-24 07:48:51', 'title' => ''], 'UpdateTime' => ['description' => 'The update time. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-07-20 06:18:42', 'title' => ''], 'SerialNumber' => ['description' => 'The certificate serial number.', 'type' => 'string', 'example' => 'babab022c5e9b27bf9c64d7f4b16****', 'title' => ''], 'FingerprintSha256' => ['description' => 'The SHA-256 fingerprint of the certificate.', 'type' => 'string', 'example' => '1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456a****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '34DCBC8A-****-****-****-6DAA11D7DDBD', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.', 'description' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'Id.MissingParameter', 'errorMessage' => 'The parameter Id is required.', 'description' => 'The required parameter Id is missing.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'Certificate.NotFound', 'errorMessage' => 'The specified certificate does not exist.', 'description' => 'The specified certificate does not exist.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SiteId\\": 0,\\n \\"SiteName\\": \\"example.com\\",\\n \\"Status\\": \\"OK\\",\\n \\"Certificate\\": \\"-----BEGIN CERTIFICATE-----\\",\\n \\"Result\\": {\\n \\"Id\\": \\"babaabcd****\\",\\n \\"Name\\": \\"yourCertName\\",\\n \\"Status\\": \\"OK\\",\\n \\"Type\\": \\"upload\\",\\n \\"CommonName\\": \\"www.example.com\\",\\n \\"NotBefore\\": \\"2023-03-31 02:08:00\\",\\n \\"NotAfter\\": \\"2024-03-31 02:08:00\\",\\n \\"Issuer\\": \\"DigiCert\\",\\n \\"SAN\\": \\"www.example.com,*.example.com\\",\\n \\"SignatureAlgorithm\\": \\"SHA256-RSA\\",\\n \\"PubkeyAlgorithm\\": \\"RSA\\",\\n \\"CreateTime\\": \\"2024-06-24 07:48:51\\",\\n \\"UpdateTime\\": \\"2024-07-20 06:18:42\\",\\n \\"SerialNumber\\": \\"babab022c5e9b27bf9c64d7f4b16****\\",\\n \\"FingerprintSha256\\": \\"1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456a****\\"\\n },\\n \\"RequestId\\": \\"34DCBC8A-****-****-****-6DAA11D7DDBD\\"\\n}","type":"json"}]', 'title' => 'Retrieve site-level back-to-origin client certificate information', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSiteOriginClientCertificate'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetSiteOriginClientCertificate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'GetSitePause' => [ 'summary' => 'Queries the site pause configuration.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257463', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. Call the [ListSites](~~ListSites~~) operation to obtain this ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response object.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F'."\n"], 'Paused' => [ 'description' => 'Indicates whether site acceleration is paused. Valid values:'."\n" ."\n" .'- true: The site\'s acceleration is paused.'."\n" ."\n" .'- false: The site is accelerating normally.', 'enumValueTitles' => ['true' => 'true', 'false' => 'false'], 'type' => 'boolean', 'example' => 'true', 'title' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\\\n\\",\\n \\"Paused\\": true\\n}","type":"json"}]', 'title' => 'GetSitePause', 'description' => 'This API applies only to sites that use NS mode.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSitePause'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetSitePause', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'GetSiteWafSettings' => [ 'summary' => 'Get WAF Configuration for a Site', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239627', 'abilityTreeNodes' => ['FEATUREdcdn4VDL9A'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['title' => '站点ID', 'description' => 'Site ID, which can be obtained by calling the [ListSites](~~2850189~~) API.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'required' => false], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'Site version.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'Path', 'in' => 'query', 'schema' => [ 'description' => 'Specifies the configuration path. If not provided, all configurations will be retrieved.', 'enumValueTitles' => ['bot_management' => 'Simple Mode Bots', 'add_security_headers' => 'Adding security response headers', 'client_ip_identifier' => 'Client IP Definition', 'add_bot_protection_headers' => 'Adding security request headers', 'security_level' => 'Security Level'], 'type' => 'string', 'required' => false, 'example' => 'bot_management', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Response result.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'Settings' => ['title' => '站点WAF配置', 'description' => 'Details of site WAF configuration.', '$ref' => '#/components/schemas/WafSiteSettings', 'example' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Get WAF Configuration for a Site', 'changeSet' => [ ['createdAt' => '2024-12-12T06:17:42.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-09-25T07:02:51.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T08:21:55.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSiteWafSettings'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:GetSiteWafSettings', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"Settings\\": {\\n \\"ClientIpIdentifier\\": {\\n \\"Mode\\": \\"headers\\",\\n \\"Headers\\": [\\n \\"X-Forwarded-For\\"\\n ]\\n },\\n \\"AddBotProtectionHeaders\\": {\\n \\"Enable\\": false\\n },\\n \\"AddSecurityHeaders\\": {\\n \\"Enable\\": false\\n },\\n \\"SecurityLevel\\": {\\n \\"Value\\": \\"low\\"\\n },\\n \\"BotManagement\\": {\\n \\"DefiniteBots\\": {\\n \\"Id\\": 20000001,\\n \\"Action\\": \\"captcha\\"\\n },\\n \\"LikelyBots\\": {\\n \\"Id\\": 20000002,\\n \\"Action\\": \\"deny\\"\\n },\\n \\"VerifiedBots\\": {\\n \\"Id\\": 20000003,\\n \\"Action\\": \\"bypass\\"\\n },\\n \\"JSDetection\\": {\\n \\"Enable\\": false\\n },\\n \\"EffectOnStatic\\": {\\n \\"Enable\\": true\\n }\\n },\\n \\"BandwidthAbuseProtection\\": {\\n \\"Id\\": 10000001,\\n \\"Status\\": \\"on\\",\\n \\"Action\\": \\"deny\\"\\n },\\n \\"DisableSecurityModule\\": {\\n \\"Status\\": \\"on\\"\\n },\\n \\"RequestBodyInspection\\": {\\n \\"Id\\": 0,\\n \\"SizeLimit\\": \\"\\",\\n \\"Action\\": \\"\\"\\n }\\n }\\n}","type":"json"}]', ], 'GetTieredCache' => [ 'summary' => 'Query Multi-level Cache Configuration for Site', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257309', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID, which can be obtained by calling the [ListSites](~~ListSites~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74'], 'CacheArchitectureMode' => [ 'description' => 'Multi-level cache architecture mode. Possible values:'."\n" .'- edge: Edge cache layer.'."\n" .'- edge_smart: Edge cache layer + intelligent cache layer.'."\n" .'- edge_regional: Edge cache layer + regional cache layer.'."\n" .'- edge_regional_smart: Edge cache layer + regional cache layer + intelligent cache layer.', 'type' => 'string', 'enumValueTitles' => ['edge_smart' => 'edge_smart', 'edge' => 'edge', 'edge_regional' => 'edge_regional', 'edge_regional_smart' => 'edge_regional_smart'], 'example' => 'edge', 'title' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\",\\n \\"CacheArchitectureMode\\": \\"edge\\"\\n}","type":"json"}]', 'title' => 'Query Multi-level Cache Configuration for Site', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetTieredCache'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetTieredCache', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'read', ], 'GetTransportLayerApplication' => [ 'summary' => 'Queries the details of a Layer 4 application.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '245120', 'abilityTreeNodes' => ['FEATUREdcdn2E10XY'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~ListSites~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ApplicationId', 'in' => 'query', 'schema' => ['description' => 'The application ID, which can be obtained by calling the [ListTransportLayerApplications](~~ListTransportLayerApplications~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '170997271816****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EB635996-1FD6-5DFD-BA57-27A849599940'], 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456****', 'title' => ''], 'ApplicationId' => ['description' => 'The Layer 4 application ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '17099311410****', 'title' => ''], 'RulesCount' => ['description' => 'The number of forwarding rules in the Layer 4 acceleration application.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Rules' => [ 'description' => 'The list of forwarding rules.', 'type' => 'array', 'items' => [ 'description' => 'The forwarding rule details.', 'type' => 'object', 'properties' => [ 'Source' => ['description' => 'The specific value of the origin server, which must match the origin server type.', 'type' => 'string', 'example' => '1.1.1.1', 'title' => ''], 'Protocol' => ['description' => 'The protocol of the forwarding rule. Valid values:'."\n" ."\n" .'- TCP: TCP protocol.'."\n" .'- UDP: UDP protocol.', 'type' => 'string', 'example' => 'TCP', 'title' => ''], 'EdgePort' => ['description' => 'The edge port. The following formats are supported:'."\n" ."\n" .'- A single port, such as 80.'."\n" .'- A port range, such as 81-85, which represents ports 81, 82, 83, 84, and 85.'."\n" .'- A combination of ports and port ranges separated by commas, such as 80,81-85,90, which represents ports 80, 81, 82, 83, 84, 85, and 90.', 'type' => 'string', 'example' => '80', 'title' => ''], 'SourceType' => ['description' => 'The origin server type. Valid values:'."\n" .'- **ip**: IP address.'."\n" .'- **domain**: domain name.'."\n" .'- **OP**: IPAM pool.'."\n" .'- **LB**: load balancing.', 'type' => 'string', 'example' => 'domain', 'title' => ''], 'SourcePort' => ['description' => 'The origin server port. The following formats are supported:'."\n" ."\n" .'- A single port. When the origin server port is a single port, any valid edge port combination is supported.'."\n" .'- A port range. The origin server port can be set to a port range only when the edge port is a port range, and the range size must be the same as the edge port range. For example, if the edge port is 90-93, you cannot set the origin server port to 81-85 because the origin server port range is 5 while the edge port range is 4, which are inconsistent.', 'type' => 'string', 'example' => '80', 'title' => ''], 'ClientIPPassThroughMode' => ['description' => 'The client IP pass-through protocol. Valid values:'."\n" .'- **off**: disabled.'."\n" .'- **PPv1**: PROXY Protocol v1, which supports client IP pass-through for TCP.'."\n" .'- **PPv2**: PROXY Protocol v2, which supports client IP pass-through for TCP and UDP.'."\n" .'- **SPP**: Simple Proxy Protocol, which supports client IP pass-through for UDP.', 'type' => 'string', 'example' => 'off', 'title' => ''], 'Comment' => ['description' => 'The comment for the rule.', 'type' => 'string', 'example' => 'Test', 'title' => ''], 'RuleId' => ['description' => 'The rule ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234323***', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'Cname' => ['description' => 'The CNAME domain name of the Layer 4 acceleration application. This field is non-empty only when the site is connected by using the CNAME method.', 'type' => 'string', 'example' => 'example.com.ialicdn.com', 'title' => ''], 'RecordName' => ['description' => 'The domain name of the Layer 4 application.', 'type' => 'string', 'example' => 'test.example.com', 'title' => ''], 'IpAccessRule' => [ 'description' => 'The IP access rule switch. When enabled, IP access rules in WAF take effect for the Layer 4 application. Valid values:'."\n" ."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'example' => 'on', 'title' => '', ], 'Ipv6' => [ 'description' => 'The IPv6 switch. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'example' => 'on', 'title' => '', ], 'Status' => [ 'description' => 'The Layer 4 application status. Valid values:'."\n" ."\n" .'- **deploying**: Being deployed. Modifications and deletions are not allowed in this state.'."\n" .'- **active**: Active.', 'enumValueTitles' => ['deploying' => 'Being deployed.', 'active' => 'Active.'], 'type' => 'string', 'example' => 'active', 'title' => '', ], 'CrossBorderOptimization' => [ 'description' => 'Specifies whether to enable network access optimization for the Chinese mainland. This feature is disabled by default. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'example' => 'on', 'title' => '', ], 'StaticIp' => ['description' => 'Specifies whether to enable static IP. This feature is disabled by default. Valid values:'."\n" ."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'off', 'title' => ''], 'StaticIpV4List' => [ 'description' => 'The list of static IPv4 addresses assigned to this Layer 4 application after the static IP feature is enabled.', 'type' => 'array', 'items' => [ 'description' => 'A single static IPv4 entry, including the IP address and its status.', 'type' => 'object', 'properties' => [ 'Address' => ['description' => 'The IP address.', 'type' => 'string', 'example' => '1.1.1.2', 'title' => ''], 'Status' => ['description' => 'The status of the IP address. Valid values:'."\n" ."\n" .'- healthy: Healthy.'."\n" .'- unhealthy: Unhealthy.'."\n" .'- unknown: The IP address is being prepared.', 'type' => 'string', 'example' => 'healthy', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'KeepAliveProtection' => [ 'title' => '', 'description' => 'Specifies whether to enable keep-alive protection. This feature is disabled by default. Valid values:'."\n" ."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'enum' => ['on', 'off'], 'example' => 'off', ], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'TransportLayerApplicationNotExist', 'errorMessage' => 'The layer -4 accelerated application of the current operation does not exist. Modify it and try again.', 'description' => 'The layer -4 accelerated application of the current operation does not exist. Modify it and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EB635996-1FD6-5DFD-BA57-27A849599940\\",\\n \\"SiteId\\": 0,\\n \\"ApplicationId\\": 0,\\n \\"RulesCount\\": 1,\\n \\"Rules\\": [\\n {\\n \\"Source\\": \\"1.1.1.1\\",\\n \\"Protocol\\": \\"TCP\\",\\n \\"EdgePort\\": \\"80\\",\\n \\"SourceType\\": \\"domain\\",\\n \\"SourcePort\\": \\"80\\",\\n \\"ClientIPPassThroughMode\\": \\"off\\",\\n \\"Comment\\": \\"Test\\",\\n \\"RuleId\\": 0\\n }\\n ],\\n \\"Cname\\": \\"example.com.ialicdn.com\\",\\n \\"RecordName\\": \\"test.example.com\\",\\n \\"IpAccessRule\\": \\"on\\",\\n \\"Ipv6\\": \\"on\\",\\n \\"Status\\": \\"active\\",\\n \\"CrossBorderOptimization\\": \\"on\\",\\n \\"StaticIp\\": \\"off\\",\\n \\"StaticIpV4List\\": [\\n {\\n \\"Address\\": \\"1.1.1.2\\",\\n \\"Status\\": \\"healthy\\"\\n }\\n ],\\n \\"KeepAliveProtection\\": \\"off\\"\\n}","type":"json"}]', 'title' => 'Query a layer 4 acceleration application', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetTransportLayerApplication'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetTransportLayerApplication', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'GetUploadTask' => [ 'summary' => 'Queries the execution status and runtime information of a file upload task by task ID.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239277', 'abilityTreeNodes' => ['FEATUREdcdnBCJPGN', 'FEATUREdcdnRELTJV', 'FEATUREdcdnEWYS3A', 'FEATUREdcdn4TTNAL'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n" .'>This parameter is required when querying an upload task.>.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '123456****'."\n", 'title' => ''], ], [ 'name' => 'UploadId', 'in' => 'query', 'schema' => ['description' => 'The file upload task ID, which is assigned when you call the [UploadFile](~~2850466~~) operation.'."\n" .'>This parameter is required and must be a valid task ID returned by the UploadFile operation. If this parameter is not provided or the specified ID does not exist, an InvalidParameters (400) error is returned.>.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '159253299357****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'ET5BF670-09D5-4D0B-BEBY-D96A2A52****'], 'Status' => ['description' => 'The task status. Valid values:'."\n" ."\n" .'- **init**: The task is being initialized.'."\n" .'- **activacted**: The task is activated.'."\n" .'- **running**: The task is running.'."\n" .'- **success**: The task succeeded.'."\n" .'- **partial**: The task partially succeeded.'."\n" .'- **fail**: The task failed.', 'type' => 'string', 'example' => 'running', 'title' => ''], 'Description' => ['description' => 'The error message returned when the file upload task fails.', 'type' => 'string', 'example' => 'invalid url', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingTimeParameter', 'errorMessage' => 'The StartTime and EndTime must be both specified.', 'description' => 'Please provide both a start time and an end time.'], ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'DomainNameOverLimit', 'errorMessage' => 'A maximum of 500 domains are supported for each request.', 'description' => 'Only 500 domain names are supported at a time. Please reduce the number of domain names to request again.'], ['errorCode' => 'InvalidTime', 'errorMessage' => 'The query time cannot exceed the last 3 days.', 'description' => 'The query time cannot exceed the last 3 days.'], ['errorCode' => 'MissingParameter.ObjectType', 'errorMessage' => 'The ObjectType parameter is required if DomainName or ObjectType is specified.', 'description' => 'Specify the ObjectType parameter.'], ['errorCode' => 'InvalidStationParameter', 'errorMessage' => 'The specified Station is invalid.', 'description' => 'The specified node parameter is invalid.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ['errorCode' => 'InvalidTaskId.Malformed', 'errorMessage' => 'The specified taskId is invalid.', 'description' => 'The specified task ID is invalid.'], ['errorCode' => 'InvalidParameters.InvalidUrls', 'errorMessage' => 'The specified urls are invalid.', 'description' => 'The requested URL parameter is invalid.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"ET5BF670-09D5-4D0B-BEBY-D96A2A52****\\",\\n \\"Status\\": \\"running\\",\\n \\"Description\\": \\"invalid url\\"\\n}","type":"json"}]', 'title' => 'Query file upload task status', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetUploadTask'], ], ], 'ramActions' => [], ], 'GetUserDeliveryTask' => [ 'summary' => 'Queries the delivery configuration and status of a task for a specific user.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239202', 'abilityTreeNodes' => ['FEATUREdcdn9K10I1'], ], 'parameters' => [ [ 'name' => 'TaskName', 'in' => 'query', 'schema' => ['description' => 'The task name.', 'type' => 'string', 'required' => true, 'example' => 'test_project', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response body.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '7072132a-bd3c-46a6-9e81-aba3e0e3f861'], 'TaskName' => ['description' => 'The task name.', 'type' => 'string', 'example' => 'testoss11', 'title' => ''], 'DiscardRate' => ['description' => 'The discard rate.', 'type' => 'number', 'format' => 'float', 'example' => '0', 'title' => ''], 'DataCenter' => ['description' => 'The data center. Valid values:'."\n" ."\n" .'- **cn**: Chinese mainland'."\n" ."\n" .'- **sg**: Global (excluding the Chinese mainland)', 'type' => 'string', 'example' => 'cn', 'title' => ''], 'BusinessType' => ['description' => 'The business type. Valid values:'."\n" ."\n" .'- **dcdn\\_log\\_access\\_l1** (default): access log.'."\n" ."\n" .'- **dcdn\\_log\\_er**: edge function log.'."\n" ."\n" .'- **dcdn\\_log\\_waf**: WAF log.'."\n" ."\n" .'- **dcdn\\_log\\_ipa**: Layer 4 acceleration log.', 'type' => 'string', 'example' => 'dcdn_log_er', 'title' => ''], 'Status' => ['description' => 'The task status.', 'type' => 'string', 'example' => 'online', 'title' => ''], 'DeliveryType' => ['description' => 'The delivery type. Valid values:'."\n" ."\n" .'- **sls**: Log Service'."\n" ."\n" .'- **http**: HTTP service'."\n" ."\n" .'- **aws3**: Amazon S3'."\n" ."\n" .'- **oss**: OSS'."\n" ."\n" .'- **kafka**: Kafka service'."\n" ."\n" .'- **aws3cmpt**: Amazon S3-compatible service', 'type' => 'string', 'example' => 'oss', 'title' => ''], 'FieldList' => ['description' => 'A comma-separated list of fields.', 'type' => 'string', 'example' => 'ClientRequestID,ClientRequestHost', 'title' => ''], 'FilterRules' => ['description' => 'The filter rules.', 'type' => 'string', 'example' => '[{"ClientSSLProtocol": {"equals": ["TLSv1.3"]}}]', 'title' => ''], 'SinkConfig' => ['description' => 'The delivery configuration.', 'type' => 'any', 'example' => '{\'Project\': \'er-online-hjy-pro\', \'Logstore\': \'er-online-hjy-log\', \'Region\': \'cn-hangzhou\', \'Endpoint\': \'cn-hangzhou.log.aliyuncs.com\', \'Aliuid\': \'1077912128805410\'}', 'title' => ''], 'Details' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'RawRule' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'FilterVer' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ], 403 => [ ['errorCode' => 'EsaService.NotOpen', 'errorMessage' => 'ESA service has not opend.', 'description' => 'Edge Security Accelerator (ESA) is not turned on'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'GetUserDeliveryTask', 'description' => '- **Function**: This operation retrieves detailed delivery information for a specific task of an Alibaba Cloud user, including the task name, discard rate, region, business type, status, delivery type, delivery configuration, and filter rules.'."\n" ."\n" .'- **Use case**: Use this operation to review the log processing and delivery configuration for a specific task. This helps you analyze processing efficiency or troubleshoot issues.', 'changeSet' => [ ['createdAt' => '2025-06-24T01:43:11.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-12-26T08:21:56.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-10-18T01:07:11.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-27T05:57:03.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetUserDeliveryTask'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetUserDeliveryTask', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7072132a-bd3c-46a6-9e81-aba3e0e3f861\\",\\n \\"TaskName\\": \\"testoss11\\",\\n \\"DiscardRate\\": 0,\\n \\"DataCenter\\": \\"cn\\",\\n \\"BusinessType\\": \\"dcdn_log_er\\",\\n \\"Status\\": \\"online\\",\\n \\"DeliveryType\\": \\"oss\\",\\n \\"FieldList\\": \\"ClientRequestID,ClientRequestHost\\",\\n \\"FilterRules\\": \\"[{\\\\\\"ClientSSLProtocol\\\\\\": {\\\\\\"equals\\\\\\": [\\\\\\"TLSv1.3\\\\\\"]}}]\\",\\n \\"SinkConfig\\": \\"{\'Project\': \'er-online-hjy-pro\', \'Logstore\': \'er-online-hjy-log\', \'Region\': \'cn-hangzhou\', \'Endpoint\': \'cn-hangzhou.log.aliyuncs.com\', \'Aliuid\': \'1077912128805410\'}\\",\\n \\"Details\\": \\"\\",\\n \\"RawRule\\": \\"\\",\\n \\"FilterVer\\": \\"\\"\\n}","type":"json"}]', ], 'GetUserLogDeliveryQuota' => [ 'summary' => 'Queries the remaining log delivery quota of each log category in your account.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239047', 'abilityTreeNodes' => ['FEATUREdcdn9K10I1'], ], 'parameters' => [ [ 'name' => 'BusinessType', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'The log category. Valid values:'."\n" ."\n" .'* dcdn_log_access_l1 (default): access logs.'."\n" .'* dcdn_log_er: Edge Routine logs.'."\n" .'* dcdn_log_waf: firewall logs.'."\n" .'* dcdn_log_ipa: TCP/UDP proxy logs.'."\n", 'type' => 'string', 'required' => true, 'example' => 'dcdn_log_access_l1'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '34DCBC8A-****-****-****-6DAA11D7DDBD'], 'FreeQuota' => ['description' => 'The remaining quota.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '3', 'title' => ''], 'BusinessType' => ['description' => 'The log category. Valid values:'."\n" ."\n" .'* dcdn_log_access_l1 (default): access logs.'."\n" .'* dcdn_log_er: Edge Routine logs.'."\n" .'* dcdn_log_waf: firewall logs.'."\n" .'* dcdn_log_ipa: TCP/UDP proxy logs.'."\n", 'type' => 'string', 'example' => 'dcdn_log_access_l1', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ], 403 => [ ['errorCode' => 'ErService.NotOpen', 'errorMessage' => 'Er service has not opend.', 'description' => 'Er service has not opend.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"34DCBC8A-****-****-****-6DAA11D7DDBD\\",\\n \\"FreeQuota\\": 3,\\n \\"BusinessType\\": \\"dcdn_log_access_l1\\"\\n}","type":"json"}]', 'title' => 'GetUserLogDeliveryQuota', 'description' => 'This operation allows you to query the remaining real-time log delivery quota of each log category in your Alibaba Cloud account. You must provide your Alibaba Cloud account ID (aliUid) and log category (BusinessType). The system then returns the remaining quota of the log category to help you track the usage.'."\n", 'changeSet' => [ ['createdAt' => '2024-09-27T05:57:02.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetUserLogDeliveryQuota'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:GetUserLogDeliveryQuota', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'operationType' => 'read', 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'GetUserWafRuleset' => [ 'summary' => 'Queries the details of a WAF ruleset for a specified instance.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239606', 'abilityTreeNodes' => ['FEATUREdcdnV3YEJ8', 'FEATUREdcdnUTRW1O', 'FEATUREdcdnSU2QP6', 'FEATUREdcdnV3G3FZ', 'FEATUREdcdnBQ0J3E'], ], 'parameters' => [ [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'esa-xxxxxxx', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The WAF ruleset ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '10000001'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'Ruleset' => [ 'description' => 'The WAF ruleset.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'The WAF ruleset ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '10000001', 'title' => ''], 'Position' => ['description' => 'The position of the WAF ruleset.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'Name' => ['description' => 'The name of the WAF ruleset.', 'type' => 'string', 'example' => 'example', 'title' => ''], 'Description' => ['description' => 'The description of the WAF ruleset.', 'type' => 'string', 'example' => 'example', 'title' => ''], 'Status' => ['description' => 'The status of the WAF ruleset.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Expression' => ['description' => 'The expression of the WAF ruleset.', 'type' => 'string', 'example' => 'ip.src == 1.1.1.1', 'title' => ''], 'Phase' => ['description' => 'The phase in which the WAF rule runs. Valid values:'."\n" .'- http_whitelist: whitelist rule'."\n" .'- http_custom: custom rule'."\n" .'- http_managed: managed rule'."\n" .'- http_anti_scan: scan protection rule'."\n" .'- http_ratelimit: frequency control rule', 'type' => 'string', 'example' => 'http_custom', 'title' => ''], 'Shared' => ['description' => 'The shared configuration of the WAF ruleset.', '$ref' => '#/components/schemas/WafBatchRuleShared', 'example' => '{}', 'title' => ''], 'Rules' => [ 'description' => 'The list of rule configurations in the WAF ruleset.', 'type' => 'array', 'items' => [ 'description' => 'The rule configuration in the WAF ruleset.', 'type' => 'object', 'properties' => [ 'UpdateTime' => ['description' => 'The time when the WAF rule was last updated.'."\n" ."\n" .'Format: RFC 3339 / ISO 8601, UTC time zone (ending with Z).'."\n" ."\n" .'Example: 2025-07-07T15:00:00Z', 'type' => 'string', 'example' => '2025-07-07T15:00:00Z', 'title' => ''], 'RulesetId' => ['description' => 'The WAF ruleset ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '10000001', 'title' => ''], 'Id' => ['description' => 'The WAF rule ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '20000001', 'title' => ''], 'Position' => ['description' => 'The position of the WAF rule.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'Phase' => ['description' => 'The phase in which the WAF rule runs. Valid values:'."\n" .'- http_whitelist: whitelist rule'."\n" .'- http_custom: custom rule'."\n" .'- http_managed: managed rule'."\n" .'- http_anti_scan: scan protection rule'."\n" .'- http_ratelimit: frequency control rule', 'type' => 'string', 'example' => 'http_custom', 'title' => ''], 'Type' => ['description' => 'The type of the WAF rule.', 'type' => 'string', 'example' => 'http_ratelimit', 'title' => ''], 'Name' => ['description' => 'The name of the WAF rule.', 'type' => 'string', 'example' => 'example', 'title' => ''], 'Status' => ['description' => 'The status of the WAF rule.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Fields' => [ 'description' => 'The list of match fields for the WAF rule.', 'type' => 'array', 'items' => ['description' => 'The match field of the WAF rule.', 'type' => 'string', 'example' => 'ip.src', 'title' => ''], 'example' => '["ip.src"]', 'title' => '', ], 'CharacteristicsFields' => [ 'description' => 'The list of statistics fields for the WAF rule.', 'type' => 'array', 'items' => ['description' => 'The statistics field of the WAF rule.', 'type' => 'string', 'example' => 'http.host', 'title' => ''], 'example' => '["http.host"]', 'title' => '', ], 'Action' => ['description' => 'The action of the rule. Valid values:'."\n" .'- deny: Block.'."\n" .'- monitor: Monitor.'."\n" .'- js: JavaScript Challenge.'."\n" .'- captcha: Slider challenge.', 'type' => 'string', 'example' => 'deny', 'title' => ''], 'Skip' => ['description' => 'The skip mode of the WAF rule.', 'type' => 'string', 'example' => 'all', 'title' => ''], 'Tags' => [ 'description' => 'The list of phases to skip for the WAF rule.', 'type' => 'array', 'items' => ['description' => 'The phase to skip for the WAF rule.', 'type' => 'string', 'example' => 'http_custom', 'title' => ''], 'example' => '["http_custom"]', 'title' => '', ], 'Config' => ['description' => 'The configuration of the WAF rule.', '$ref' => '#/components/schemas/WafRuleConfig', 'example' => '{'."\n" .' "Id": 20000001,'."\n" .' "Name": "rule1",'."\n" .' "Expression": "ip.src eq 1.1.1.1",'."\n" .' "Action": "deny"'."\n" .'}', 'title' => ''], ], 'example' => '{}', 'title' => '', ], 'example' => '[{}]', 'title' => '', ], ], 'example' => '{}', 'title' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Get user WAF ruleset', 'description' => '## Operation description'."\n" .'By calling the `GetUserWafRuleset` operation, you can retrieve information about a specific Web Application Firewall (WAF) ruleset based on the instance ID and ruleset ID. The returned information includes but is not limited to the position, name, description, status, and specific rules of the ruleset. Make sure that you correctly specify the required parameters to avoid request failures.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetUserWafRuleset'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetUserWafRuleset', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"Ruleset\\": {\\n \\"Id\\": 10000001,\\n \\"Position\\": 1,\\n \\"Name\\": \\"example\\",\\n \\"Description\\": \\"example\\",\\n \\"Status\\": \\"on\\",\\n \\"Expression\\": \\"ip.src == 1.1.1.1\\",\\n \\"Phase\\": \\"http_custom\\",\\n \\"Shared\\": {\\n \\"Target\\": \\"web\\",\\n \\"Mode\\": \\"automatic\\",\\n \\"CrossSiteId\\": 10000001,\\n \\"Name\\": \\"example\\",\\n \\"Match\\": {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n },\\n \\"Action\\": \\"deny\\",\\n \\"Actions\\": {\\n \\"Response\\": {\\n \\"Id\\": 50000001,\\n \\"Code\\": 403\\n }\\n },\\n \\"Expression\\": \\"ip.src eq 1.1.1.1\\"\\n },\\n \\"Rules\\": [\\n {\\n \\"UpdateTime\\": \\"2025-07-07T15:00:00Z\\",\\n \\"RulesetId\\": 10000001,\\n \\"Id\\": 20000001,\\n \\"Position\\": 1,\\n \\"Phase\\": \\"http_custom\\",\\n \\"Type\\": \\"http_ratelimit\\",\\n \\"Name\\": \\"example\\",\\n \\"Status\\": \\"on\\",\\n \\"Fields\\": [\\n \\"ip.src\\"\\n ],\\n \\"CharacteristicsFields\\": [\\n \\"http.host\\"\\n ],\\n \\"Action\\": \\"deny\\",\\n \\"Skip\\": \\"all\\",\\n \\"Tags\\": [\\n \\"http_custom\\"\\n ],\\n \\"Config\\": {\\n \\"Status\\": \\"on\\",\\n \\"Action\\": \\"deny\\",\\n \\"Actions\\": {\\n \\"Response\\": {\\n \\"Id\\": 50000001,\\n \\"Code\\": 403\\n },\\n \\"Bypass\\": {\\n \\"Skip\\": \\"part\\",\\n \\"RegularRules\\": [\\n 100001\\n ],\\n \\"CustomRules\\": [\\n 20000001\\n ],\\n \\"RegularTypes\\": [\\n \\"sqli\\"\\n ],\\n \\"Tags\\": [\\n \\"http_custom\\"\\n ]\\n }\\n },\\n \\"ManagedList\\": \\"intelligence_crawler\\",\\n \\"ManagedRulesets\\": [\\n {\\n \\"ProtectionLevel\\": 4,\\n \\"Action\\": \\"deny\\",\\n \\"ManagedRules\\": [\\n {\\n \\"Status\\": \\"on\\",\\n \\"Action\\": \\"deny\\",\\n \\"Id\\": 100001\\n }\\n ],\\n \\"AttackType\\": 11,\\n \\"NumberTotal\\": 100,\\n \\"NumberEnabled\\": 50\\n }\\n ],\\n \\"Sigchl\\": [\\n \\"sig\\"\\n ],\\n \\"Name\\": \\"example\\",\\n \\"AppSdk\\": {\\n \\"CustomSign\\": {\\n \\"Value\\": \\"examplesignvalue\\",\\n \\"Key\\": \\"sign\\"\\n },\\n \\"CustomSignStatus\\": \\"on\\",\\n \\"FeatureAbnormal\\": [\\n \\"wxbb_invalid_sign\\"\\n ]\\n },\\n \\"RateLimit\\": {\\n \\"Characteristics\\": {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n },\\n \\"OnHit\\": true,\\n \\"TTL\\": 10,\\n \\"Threshold\\": {\\n \\"ManagedRulesBlocked\\": 10,\\n \\"DistinctManagedRules\\": 10,\\n \\"ResponseStatus\\": {\\n \\"Ratio\\": 10,\\n \\"Count\\": 10,\\n \\"Code\\": 404\\n },\\n \\"Traffic\\": \\"10Gb\\",\\n \\"Request\\": 10\\n },\\n \\"Interval\\": 10\\n },\\n \\"Type\\": \\"http_custom\\",\\n \\"AppPackage\\": {\\n \\"PackageSigns\\": [\\n {\\n \\"Sign\\": \\"sign\\",\\n \\"Name\\": \\"name\\"\\n }\\n ]\\n },\\n \\"ManagedGroupId\\": 30000001,\\n \\"Timer\\": {\\n \\"Scopes\\": \\"permanent\\",\\n \\"Zone\\": 8,\\n \\"Periods\\": [\\n {\\n \\"Start\\": \\"2025-01-01T00:00:00Z\\",\\n \\"End\\": \\"2025-01-01T01:00:00Z\\"\\n }\\n ],\\n \\"WeeklyPeriods\\": [\\n {\\n \\"Days\\": \\"1\\",\\n \\"DailyPeriods\\": [\\n {\\n \\"Start\\": \\"00:00:00\\",\\n \\"End\\": \\"01:00:00\\"\\n }\\n ]\\n }\\n ]\\n },\\n \\"Expression\\": \\"ip.src eq 1.1.1.1\\",\\n \\"SecurityLevel\\": {\\n \\"Value\\": \\"low\\"\\n },\\n \\"Value\\": \\"10.0.0.1\\",\\n \\"Id\\": 20000001,\\n \\"Notes\\": \\"example notes\\"\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'GetVideoProcessing' => [ 'summary' => 'Queries the video processing configuration details of a site.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257665', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '23282348***', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID. You can call the [ListVideoProcessings](~~ListVideoProcessings~~) operation to obtain the configuration ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '23321557***', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-A198-72F8FD6DA2FE'."\n"], 'ConfigId' => ['description' => 'The configuration ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '35281609698****', 'title' => ''], 'ConfigType' => ['description' => 'The type of the configuration. Valid values:'."\n" ."\n" .'* global: global configuration.'."\n" .'* rule: rule configuration.'."\n", 'type' => 'string', 'example' => 'global', 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the website configurations.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Sequence' => ['description' => 'The order in which the rule is executed. A smaller value gives priority to the rule.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RuleEnable' => ['description' => 'Indicates whether the rule is enabled. Valid values:'."\n" ."\n" .'* on'."\n" .'* off'."\n", 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'The rule content.'."\n", 'type' => 'string', 'example' => '(http.host eq \\"video.example.com\\")'."\n", 'title' => ''], 'RuleName' => ['description' => 'The name of the scaling rule.'."\n", 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'VideoSeekEnable' => ['description' => 'Video seeking. Valid values:'."\n" ."\n" .'* on'."\n" .'* off'."\n", 'type' => 'string', 'example' => 'on', 'title' => ''], 'FlvVideoSeekMode' => ['description' => 'FLV Seeking Valid values:'."\n" ."\n" .'* by_byte: Seek by byte.'."\n" .'* by_time: Seek by time.'."\n", 'type' => 'string', 'example' => 'by_byte', 'title' => ''], 'Mp4SeekStart' => ['description' => 'Customize the mp4 start parameter.'."\n", 'type' => 'string', 'example' => 'start', 'title' => ''], 'Mp4SeekEnd' => ['description' => 'Customize the mp4 end parameter.'."\n", 'type' => 'string', 'example' => 'end', 'title' => ''], 'FlvSeekStart' => ['description' => 'The custom start parameter for FLV files.'."\n", 'type' => 'string', 'example' => 'start', 'title' => ''], 'FlvSeekEnd' => ['description' => 'The custom end parameter for FLV files.'."\n", 'type' => 'string', 'example' => 'end', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-A198-72F8FD6DA2FE\\\\n\\",\\n \\"ConfigId\\": 0,\\n \\"ConfigType\\": \\"global\\",\\n \\"SiteVersion\\": 1,\\n \\"Sequence\\": 1,\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\\\\\\\\\"video.example.com\\\\\\\\\\\\\\")\\\\n\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"VideoSeekEnable\\": \\"on\\",\\n \\"FlvVideoSeekMode\\": \\"by_byte\\",\\n \\"Mp4SeekStart\\": \\"start\\",\\n \\"Mp4SeekEnd\\": \\"end\\",\\n \\"FlvSeekStart\\": \\"start\\",\\n \\"FlvSeekEnd\\": \\"end\\"\\n}","type":"json"}]', 'title' => 'GetVideoProcessing', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetVideoProcessing', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'GetWafBotAppKey' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239630', 'abilityTreeNodes' => ['FEATUREdcdn1OLUH8'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '请求ID', 'description' => 'Request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'AppKey' => ['title' => 'APP key', 'description' => 'Application key.', 'type' => 'string', 'example' => 'example_appkey'], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"AppKey\\": \\"example_appkey\\"\\n}","type":"json"}]', 'title' => 'Get the APP key in the BOT phase of WAF', 'summary' => 'This interface is used to obtain the application key (AppKey) for the BOT behavior detection feature in the site\'s Web Application Firewall (WAF). The key is typically used for authentication and data exchange with the WAF service.', 'changeSet' => [ ['createdAt' => '2024-09-25T07:02:51.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T06:56:38.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetWafBotAppKey'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetWafBotAppKey', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'GetWafFilter' => [ 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239605', 'abilityTreeNodes' => ['FEATUREdcdnUTRW1O', 'FEATUREdcdnSU2QP6', 'FEATUREdcdnV3G3FZ', 'FEATUREdcdnBQ0J3E', 'FEATUREdcdn1OLUH8'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Specifies the ID of the site. You can get this ID by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => '', 'required' => false], ], [ 'name' => 'Phase', 'in' => 'query', 'schema' => ['description' => 'Specifies the WAF phase from which to retrieve the matching engine information.', 'type' => 'string', 'example' => 'http_bot', 'title' => '', 'required' => false], ], [ 'name' => 'Target', 'in' => 'query', 'schema' => ['description' => 'Specifies the application target of the matching engine.', 'type' => 'string', 'example' => 'characteristics', 'title' => '', 'required' => false], ], [ 'name' => 'Type', 'in' => 'query', 'schema' => ['description' => 'Specifies the rule type.', 'type' => 'string', 'example' => 'http_custom_cc', 'title' => '', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The schema of the response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'Filter' => [ 'title' => '', 'description' => 'The returned matching engine configuration.', 'type' => 'object', 'properties' => [ 'Phase' => ['description' => 'The phase at which the WAF processes requests.', 'type' => 'string', 'example' => 'http_bot', 'title' => ''], 'Target' => ['description' => 'The target of the matching engine.', 'type' => 'string', 'example' => 'characteristics', 'title' => ''], 'Type' => ['description' => 'The rule type.', 'type' => 'string', 'example' => 'http_custom_cc', 'title' => ''], 'Fields' => [ 'title' => '', 'description' => 'A list of match objects and their properties.', 'type' => 'array', 'items' => [ 'title' => '', 'description' => 'A match object.', 'type' => 'object', 'properties' => [ 'Enable' => ['description' => 'Indicates whether the current plan supports this match object.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'MinPlan' => ['description' => 'The minimum plan that supports this match object, provided the current plan does not.', 'type' => 'string', 'example' => 'high', 'title' => ''], 'Label' => ['description' => 'The label for the match object.', 'type' => 'string', 'example' => 'Header', 'title' => ''], 'Key' => ['description' => 'The internal key for the match object.', 'type' => 'string', 'example' => 'http.request.headers', 'title' => ''], 'Sub' => ['description' => 'Indicates whether the match object includes subfields.', 'type' => 'boolean', 'title' => '', 'example' => 'true'], 'SubTip' => ['description' => 'A hint for entering the subfield value.', 'type' => 'string', 'example' => 'e.g. Content-Type', 'title' => ''], 'Selector' => [ 'title' => '', 'description' => 'The selector, which defines how to select the match object.', 'type' => 'object', 'properties' => [ 'Kind' => ['description' => 'The selector type, which indicates whether it targets data items or other entities.', 'type' => 'string', 'example' => 'data', 'title' => ''], 'Data' => [ 'title' => '', 'description' => 'A list of data options available when the selector `Kind` is `data`.', 'type' => 'array', 'items' => [ 'title' => '', 'description' => 'A data option available when the selector `Kind` is `data`.', 'type' => 'object', 'properties' => [ 'Label' => ['description' => 'The label for the data option.', 'type' => 'string', 'example' => 'China', 'title' => ''], 'Value' => ['description' => 'The value of the data option.', 'type' => 'string', 'example' => 'CN', 'title' => ''], ], 'example' => '', ], 'example' => '', ], ], 'example' => '', ], 'Logics' => [ 'title' => '', 'description' => 'A list of logical operators that define the matching conditions.', 'type' => 'array', 'items' => [ 'title' => '', 'description' => 'A logical operator that applies to the match object.', 'type' => 'object', 'properties' => [ 'Enable' => ['description' => 'Indicates whether the current plan supports this operator.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'MinPlan' => ['description' => 'The minimum plan that supports this operator, provided the current plan does not.', 'type' => 'string', 'example' => 'high', 'title' => ''], 'Symbol' => ['description' => 'The internal identifier for the operator.', 'type' => 'string', 'example' => 'eq', 'title' => ''], 'Operator' => ['description' => 'The label for the operator.', 'type' => 'string', 'example' => 'Does not equal', 'title' => ''], 'Negative' => ['description' => 'Indicates whether to negate the match result.', 'type' => 'boolean', 'title' => '', 'example' => ''], 'Type' => ['description' => 'The type of the value. Valid values:'."\n" ."\n" .'- `integer`: An integer.'."\n" ."\n" .'- `integer_slice`: An integer array.'."\n" ."\n" .'- `string`: A string.'."\n" ."\n" .'- `string_slice`: A string array.', 'type' => 'string', 'example' => 'string', 'title' => ''], 'Kind' => ['description' => 'The input type for the value. Valid values:'."\n" ."\n" .'- `select:single`: A single-select input.'."\n" ."\n" .'- `select:multi`: A multi-select input.'."\n" ."\n" .'- `input:single`: A single-value text input.'."\n" ."\n" .'- `input:multi`: A multi-value text input.', 'type' => 'string', 'example' => 'input:single', 'title' => ''], 'Attributes' => ['description' => 'Configurable attributes, such as case sensitivity.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Tip' => ['description' => 'A hint for entering a valid value.', 'type' => 'string', 'example' => 'e.g. image/jpeg', 'title' => ''], 'Validator' => [ 'title' => '', 'description' => 'The validator, which defines validation rules for the value.', 'type' => 'object', 'properties' => [ 'Length' => ['description' => 'The length limit for the value.', '$ref' => '#/components/schemas/WafQuotaInteger', 'title' => '', 'example' => ''], 'Pattern' => ['description' => 'The regular expression pattern for the value.', 'type' => 'string', 'example' => '^example$', 'title' => ''], 'Range' => ['description' => 'The value range for numeric validation.', '$ref' => '#/components/schemas/WafQuotaInteger', 'title' => '', 'example' => ''], 'ErrMsg' => ['description' => 'The error message returned when validation fails.', 'type' => 'string', 'example' => 'Enter a valid expression', 'title' => ''], ], 'example' => '', ], ], 'example' => '', ], 'example' => '', ], ], 'example' => '', ], 'example' => '', ], ], 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Obtain WAF matching engine information ', 'summary' => 'Retrieves matching engine information for a site at a given WAF phase, which defines how the WAF detects and handles various network requests.', 'changeSet' => [ ['createdAt' => '2025-02-27T08:44:24.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-09-25T07:02:51.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T06:56:36.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetWafFilter'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetWafFilter', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"Filter\\": {\\n \\"Phase\\": \\"http_bot\\",\\n \\"Target\\": \\"characteristics\\",\\n \\"Type\\": \\"http_custom_cc\\",\\n \\"Fields\\": [\\n {\\n \\"Enable\\": false,\\n \\"MinPlan\\": \\"high\\",\\n \\"Label\\": \\"Header\\",\\n \\"Key\\": \\"http.request.headers\\",\\n \\"Sub\\": true,\\n \\"SubTip\\": \\"e.g. Content-Type\\",\\n \\"Selector\\": {\\n \\"Kind\\": \\"data\\",\\n \\"Data\\": [\\n {\\n \\"Label\\": \\"China\\",\\n \\"Value\\": \\"CN\\"\\n }\\n ]\\n },\\n \\"Logics\\": [\\n {\\n \\"Enable\\": false,\\n \\"MinPlan\\": \\"high\\",\\n \\"Symbol\\": \\"eq\\",\\n \\"Operator\\": \\"Does not equal\\",\\n \\"Negative\\": false,\\n \\"Type\\": \\"string\\",\\n \\"Kind\\": \\"input:single\\",\\n \\"Attributes\\": 1,\\n \\"Tip\\": \\"e.g. image/jpeg\\",\\n \\"Validator\\": {\\n \\"Length\\": {\\n \\"Equal\\": 1,\\n \\"GreaterThan\\": 1,\\n \\"GreaterThanOrEqual\\": 1,\\n \\"LessThan\\": 1,\\n \\"LessThanOrEqual\\": 1\\n },\\n \\"Pattern\\": \\"^example$\\",\\n \\"Range\\": {\\n \\"Equal\\": 1,\\n \\"GreaterThan\\": 1,\\n \\"GreaterThanOrEqual\\": 1,\\n \\"LessThan\\": 1,\\n \\"LessThanOrEqual\\": 1\\n },\\n \\"ErrMsg\\": \\"Enter a valid expression\\"\\n }\\n }\\n ]\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'GetWafQuota' => [ 'summary' => 'Retrieves quota details for Web Application Firewall (WAF) resources. These quotas define the quantity limits of corresponding resources that a customer can use, such as managed rule groups, custom lists, custom response pages, and scenario-specific protection rules.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239612', 'abilityTreeNodes' => ['FEATUREdcdnL8HX1L'], ], 'parameters' => [ [ 'name' => 'Paths', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The paths of WAF quotas. Valid values:'."\n" .'* managed_rules_group: the quota for WAF managed rule groups.'."\n" .'* list: the quota for custom lists.'."\n" .'* page: the quota for custom response pages.'."\n" .'* scene_policy: the quota for scenario-specific protection rules.', 'type' => 'string', 'example' => 'page', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'Quota' => [ 'title' => '', 'description' => 'The returned quota information.', 'type' => 'object', 'properties' => [ 'ManagedRulesGroup' => [ 'title' => '', 'description' => 'The quota information for WAF managed rule groups.', 'type' => 'object', 'properties' => [ 'Enable' => ['title' => '', 'description' => 'Indicates whether WAF managed rule groups are enabled.', 'type' => 'boolean', 'example' => ''], 'NumberTotal' => ['title' => '', 'description' => 'The total quantity quota for WAF managed rule groups.', '$ref' => '#/components/schemas/WafQuotaInteger', 'example' => ''], ], 'example' => '', ], 'List' => [ 'title' => '', 'description' => 'The quota information for custom lists.', 'type' => 'object', 'properties' => [ 'Enable' => ['title' => '', 'description' => 'Indicates whether custom lists are enabled.', 'type' => 'boolean', 'example' => ''], 'NumberTotal' => ['title' => '', 'description' => 'The total quantity quota for custom lists.', '$ref' => '#/components/schemas/WafQuotaInteger', 'example' => ''], 'NumberItemsTotal' => ['title' => '', 'description' => 'The total quantity quota for items across all custom lists.', '$ref' => '#/components/schemas/WafQuotaInteger', 'example' => ''], 'NumberItemsPerList' => ['title' => '', 'description' => 'The quantity quota for items in each custom list.', '$ref' => '#/components/schemas/WafQuotaInteger', 'example' => ''], 'Items' => [ 'title' => '', 'description' => 'The object that contains quota information for each item type in custom lists.', 'type' => 'object', 'additionalProperties' => [ 'title' => '', 'description' => 'The object that contains quota information for items in custom lists.', 'type' => 'object', 'properties' => [ 'Enable' => ['title' => '', 'description' => 'Indicates whether the corresponding custom list item type is enabled.', 'type' => 'boolean', 'example' => ''], 'Value' => ['title' => '', 'description' => 'The format restriction for the corresponding item type in custom lists.', '$ref' => '#/components/schemas/WafQuotaString', 'example' => ''], ], 'example' => '', ], 'example' => '', ], ], 'example' => '', ], 'Page' => [ 'title' => '', 'description' => 'The quota information for custom response pages.', 'type' => 'object', 'properties' => [ 'Enable' => ['title' => '', 'description' => 'Indicates whether custom response pages are enabled.', 'type' => 'boolean', 'example' => ''], 'NumberTotal' => ['title' => '', 'description' => 'The total quantity quota for custom response pages.', '$ref' => '#/components/schemas/WafQuotaInteger', 'example' => ''], 'ContentTypes' => [ 'title' => '', 'description' => 'The object that contains quota information for each Content-Type in custom response pages.', 'type' => 'object', 'additionalProperties' => [ 'title' => '', 'description' => 'The object that contains Content-Type quota information for custom response pages.', 'type' => 'object', 'properties' => [ 'Enable' => ['title' => '', 'description' => 'Indicates whether the corresponding Content-Type for custom response pages is enabled.', 'type' => 'boolean', 'example' => ''], 'ContentLength' => ['title' => '', 'description' => 'The content length quota for the corresponding Content-Type in custom response pages.', '$ref' => '#/components/schemas/WafQuotaInteger', 'example' => ''], ], 'example' => '', ], 'example' => '', ], ], 'example' => '', ], 'ScenePolicy' => [ 'title' => '', 'description' => 'The quota information for scenario-specific protection rules.', 'type' => 'object', 'properties' => [ 'Enable' => ['title' => '', 'description' => 'Indicates whether the scenario-specific protection feature is enabled.', 'type' => 'boolean', 'example' => ''], 'NumberTotal' => ['title' => '', 'description' => 'The total quantity quota for scenario-specific protection rules.', '$ref' => '#/components/schemas/WafQuotaInteger', 'example' => ''], ], 'example' => '', ], 'Captcha' => [ 'description' => 'The quota information for CAPTCHA rules.', 'type' => 'object', 'properties' => [ 'Enable' => ['description' => 'Indicates whether CAPTCHA rules are enabled.', 'type' => 'boolean', 'title' => '', 'example' => ''], 'NumberTotal' => ['description' => 'The total quantity quota for CAPTCHA rules.', '$ref' => '#/components/schemas/WafQuotaInteger', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], 'SliderCaptchaPage' => [ 'title' => '', 'description' => 'The quota information for slider CAPTCHA pages.', 'type' => 'object', 'properties' => [ 'Enable' => ['title' => '', 'description' => 'Indicates whether slider CAPTCHA pages are enabled.', 'type' => 'boolean', 'example' => ''], 'NumberTotal' => ['title' => '', 'description' => 'The quantity quota for slider CAPTCHA pages.', '$ref' => '#/components/schemas/WafQuotaInteger', 'example' => ''], ], 'example' => '', ], ], 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"Quota\\": {\\n \\"ManagedRulesGroup\\": {\\n \\"Enable\\": false,\\n \\"NumberTotal\\": {\\n \\"Equal\\": 1,\\n \\"GreaterThan\\": 1,\\n \\"GreaterThanOrEqual\\": 1,\\n \\"LessThan\\": 1,\\n \\"LessThanOrEqual\\": 1\\n }\\n },\\n \\"List\\": {\\n \\"Enable\\": false,\\n \\"NumberTotal\\": {\\n \\"Equal\\": 1,\\n \\"GreaterThan\\": 1,\\n \\"GreaterThanOrEqual\\": 1,\\n \\"LessThan\\": 1,\\n \\"LessThanOrEqual\\": 1\\n },\\n \\"NumberItemsTotal\\": {\\n \\"Equal\\": 1,\\n \\"GreaterThan\\": 1,\\n \\"GreaterThanOrEqual\\": 1,\\n \\"LessThan\\": 1,\\n \\"LessThanOrEqual\\": 1\\n },\\n \\"Items\\": {\\n \\"key\\": {\\n \\"Enable\\": false,\\n \\"Value\\": {\\n \\"Regexp\\": \\"^\\\\\\\\d+$\\"\\n }\\n }\\n }\\n },\\n \\"Page\\": {\\n \\"Enable\\": false,\\n \\"ContentTypes\\": {\\n \\"key\\": {\\n \\"Enable\\": false\\n }\\n }\\n },\\n \\"ScenePolicy\\": {\\n \\"Enable\\": false\\n },\\n \\"Captcha\\": {\\n \\"Enable\\": false\\n },\\n \\"SliderCaptchaPage\\": {\\n \\"Enable\\": false\\n }\\n }\\n}","type":"json"}]', 'title' => 'Retrieve WAF resource quotas', 'changeSet' => [ ['createdAt' => '2024-09-25T07:02:51.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T06:56:36.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetWafQuota'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetWafQuota', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'GetWafRule' => [ 'summary' => 'Retrieves the details of a single rule in Web Application Firewall (WAF). You can use this operation to query the configuration and status of a specific rule.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239626', 'abilityTreeNodes' => ['FEATUREdcdnV3YEJ8', 'FEATUREdcdnUTRW1O', 'FEATUREdcdnSU2QP6', 'FEATUREdcdnV3G3FZ'], ], 'parameters' => [ [ 'name' => 'Id', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The ID of the WAF rule. You can call the [ListWafRules](~~2878257~~) operation to obtain the ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '20000001'], ], [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'UpdateTime' => ['title' => '', 'description' => 'The time when the rule was last modified.'."\n" ."\n" .'Format: RFC 3339 / ISO 8601, UTC time zone (ending with Z).'."\n" ."\n" .'Example: 2026-06-10T14:23:45Z', 'type' => 'string', 'example' => '2024-01-01T00:00:00Z'], 'Id' => ['title' => '', 'description' => 'The ID of the WAF rule. You can call the [ListWafRules](~~2878257~~) operation to obtain the ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '2000001', 'pattern' => '', 'default' => ''], 'Position' => ['title' => '', 'description' => 'The position of the rule in the ruleset.', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], 'Name' => ['title' => '', 'description' => 'The rule name.', 'type' => 'string', 'required' => true, 'example' => 'example', 'maxLength' => 128, 'pattern' => '', 'default' => ''], 'Status' => ['title' => '', 'description' => 'The rule status.', 'type' => 'string', 'example' => 'on'], 'Phase' => ['title' => '', 'description' => 'The phase in which the WAF rule runs. Valid values:'."\n" .'- http_whitelist: whitelist rule'."\n" .'- http_custom: custom rule'."\n" .'- http_managed: managed rule'."\n" .'- http_anti_scan: scan protection rule'."\n" .'- http_ratelimit: frequency control rule'."\n" .'- ip_access_rule: IP access rule'."\n" .'- http_bot: advanced mode bots'."\n" .'- http_security_level_rule: security rule', 'type' => 'string', 'required' => true, 'example' => 'http_custom', 'pattern' => '', 'default' => ''], 'Config' => ['title' => '', 'description' => 'The rule configuration.', '$ref' => '#/components/schemas/WafRuleConfig', 'example' => ''], 'RulesetId' => ['description' => 'The ID of the WAF ruleset. You can call the [ListWafRulesets](~~2878359~~) operation to obtain the ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '10000001', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"UpdateTime\\": \\"2024-01-01T00:00:00Z\\",\\n \\"Id\\": 2000001,\\n \\"Position\\": 1,\\n \\"Name\\": \\"example\\",\\n \\"Status\\": \\"on\\",\\n \\"Phase\\": \\"http_custom\\",\\n \\"Config\\": {\\n \\"Status\\": \\"on\\",\\n \\"Action\\": \\"deny\\",\\n \\"Actions\\": {\\n \\"Response\\": {\\n \\"Id\\": 50000001,\\n \\"Code\\": 403\\n },\\n \\"Bypass\\": {\\n \\"Skip\\": \\"part\\",\\n \\"RegularRules\\": [\\n 100001\\n ],\\n \\"CustomRules\\": [\\n 20000001\\n ],\\n \\"RegularTypes\\": [\\n \\"sqli\\"\\n ],\\n \\"Tags\\": [\\n \\"http_custom\\"\\n ]\\n }\\n },\\n \\"ManagedList\\": \\"intelligence_crawler\\",\\n \\"ManagedRulesets\\": [\\n {\\n \\"ProtectionLevel\\": 4,\\n \\"Action\\": \\"deny\\",\\n \\"ManagedRules\\": [\\n {\\n \\"Status\\": \\"on\\",\\n \\"Action\\": \\"deny\\",\\n \\"Id\\": 100001\\n }\\n ],\\n \\"AttackType\\": 11,\\n \\"NumberTotal\\": 100,\\n \\"NumberEnabled\\": 50\\n }\\n ],\\n \\"Sigchl\\": [\\n \\"sig\\"\\n ],\\n \\"Name\\": \\"example\\",\\n \\"AppSdk\\": {\\n \\"CustomSign\\": {\\n \\"Value\\": \\"examplesignvalue\\",\\n \\"Key\\": \\"sign\\"\\n },\\n \\"CustomSignStatus\\": \\"on\\",\\n \\"FeatureAbnormal\\": [\\n \\"wxbb_invalid_sign\\"\\n ]\\n },\\n \\"RateLimit\\": {\\n \\"Characteristics\\": {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n },\\n \\"OnHit\\": true,\\n \\"TTL\\": 10,\\n \\"Threshold\\": {\\n \\"ManagedRulesBlocked\\": 10,\\n \\"DistinctManagedRules\\": 10,\\n \\"ResponseStatus\\": {\\n \\"Ratio\\": 10,\\n \\"Count\\": 10,\\n \\"Code\\": 404\\n },\\n \\"Traffic\\": \\"10Gb\\",\\n \\"Request\\": 10\\n },\\n \\"Interval\\": 10\\n },\\n \\"Type\\": \\"http_custom\\",\\n \\"AppPackage\\": {\\n \\"PackageSigns\\": [\\n {\\n \\"Sign\\": \\"sign\\",\\n \\"Name\\": \\"name\\"\\n }\\n ]\\n },\\n \\"ManagedGroupId\\": 30000001,\\n \\"Timer\\": {\\n \\"Scopes\\": \\"permanent\\",\\n \\"Zone\\": 8,\\n \\"Periods\\": [\\n {\\n \\"Start\\": \\"2025-01-01T00:00:00Z\\",\\n \\"End\\": \\"2025-01-01T01:00:00Z\\"\\n }\\n ],\\n \\"WeeklyPeriods\\": [\\n {\\n \\"Days\\": \\"1\\",\\n \\"DailyPeriods\\": [\\n {\\n \\"Start\\": \\"00:00:00\\",\\n \\"End\\": \\"01:00:00\\"\\n }\\n ]\\n }\\n ]\\n },\\n \\"Expression\\": \\"ip.src eq 1.1.1.1\\",\\n \\"SecurityLevel\\": {\\n \\"Value\\": \\"low\\"\\n },\\n \\"Value\\": \\"10.0.0.1\\",\\n \\"Id\\": 20000001,\\n \\"Notes\\": \\"example notes\\"\\n },\\n \\"RulesetId\\": 10000001\\n}","type":"json"}]', 'title' => 'Get details of a single WAF rule', 'changeSet' => [ ['createdAt' => '2025-04-17T07:08:14.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-09-25T07:02:50.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetWafRule'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetWafRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'GetWafRuleset' => [ 'summary' => 'Retrieves the details of a specified WAF ruleset. You can call this operation to query the configuration and status information of a specific ruleset.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239606', 'abilityTreeNodes' => ['FEATUREdcdnBQ0J3E', 'FEATUREdcdn1OLUH8'], ], 'parameters' => [ [ 'name' => 'Id', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The ID of the WAF ruleset. You can call the [ListWafRulesets](~~2878359~~) operation to obtain the ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '10000001', 'required' => false], ], [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'required' => false], ], [ 'name' => 'Phase', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The WAF rule execution phase. Valid values:'."\n" .'- http_whitelist: whitelist rules'."\n" .'- http_custom: custom rules'."\n" .'- http_managed: managed rules'."\n" .'- http_anti_scan: scan protection rules'."\n" .'- http_ratelimit: rate limiting rules'."\n" .'- ip_access_rule: IP access rules'."\n" .'- http_bot: advanced mode bots'."\n" .'- http_security_level_rule: security rules', 'type' => 'string', 'example' => 'http_bot', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'UpdateTime' => ['title' => '', 'description' => 'The last modification time of the ruleset.'."\n" ."\n" .'Format: RFC 3339 / ISO 8601, UTC time zone (ending with Z).'."\n" ."\n" .'Example: 2026-06-10T14:23:45Z', 'type' => 'string', 'example' => '2024-01-01T00:00:00Z'], 'Id' => ['title' => '', 'description' => 'The ID of the WAF ruleset. You can call the [ListWafRulesets](~~2878359~~) operation to obtain the ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10000001', 'pattern' => '', 'default' => ''], 'Name' => ['title' => '', 'description' => 'The ruleset name.', 'type' => 'string', 'required' => true, 'example' => 'example', 'maxLength' => 128, 'pattern' => '', 'default' => ''], 'Status' => ['title' => '', 'description' => 'The ruleset status.', 'type' => 'string', 'example' => 'on'], 'Phase' => ['title' => '', 'description' => 'The WAF rule execution phase. Valid values:'."\n" .'- http_whitelist: whitelist rules'."\n" .'- http_custom: custom rules'."\n" .'- http_managed: managed rules'."\n" .'- http_anti_scan: scan protection rules'."\n" .'- http_ratelimit: rate limiting rules'."\n" .'- ip_access_rule: IP access rules'."\n" .'- http_bot: advanced mode bots'."\n" .'- http_security_level_rule: security rules', 'type' => 'string', 'required' => true, 'example' => 'http_bot', 'pattern' => '', 'default' => ''], 'Shared' => ['title' => '', 'description' => 'The shared configuration of rules in the ruleset.', '$ref' => '#/components/schemas/WafBatchRuleShared', 'example' => ''], 'Rules' => [ 'title' => '', 'description' => 'The list of rule configurations in the ruleset.', 'type' => 'array', 'items' => ['title' => '', 'description' => 'The rule configuration in the ruleset.', '$ref' => '#/components/schemas/WafRuleConfig', 'example' => ''], 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"UpdateTime\\": \\"2024-01-01T00:00:00Z\\",\\n \\"Id\\": 10000001,\\n \\"Name\\": \\"example\\",\\n \\"Status\\": \\"on\\",\\n \\"Phase\\": \\"http_bot\\",\\n \\"Shared\\": {\\n \\"Target\\": \\"web\\",\\n \\"Mode\\": \\"automatic\\",\\n \\"CrossSiteId\\": 10000001,\\n \\"Name\\": \\"example\\",\\n \\"Match\\": {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n },\\n \\"Action\\": \\"deny\\",\\n \\"Actions\\": {\\n \\"Response\\": {\\n \\"Id\\": 50000001,\\n \\"Code\\": 403\\n }\\n },\\n \\"Expression\\": \\"ip.src eq 1.1.1.1\\"\\n },\\n \\"Rules\\": [\\n {\\n \\"Status\\": \\"on\\",\\n \\"Action\\": \\"deny\\",\\n \\"Actions\\": {\\n \\"Response\\": {\\n \\"Id\\": 50000001,\\n \\"Code\\": 403\\n },\\n \\"Bypass\\": {\\n \\"Skip\\": \\"part\\",\\n \\"RegularRules\\": [\\n 100001\\n ],\\n \\"CustomRules\\": [\\n 20000001\\n ],\\n \\"RegularTypes\\": [\\n \\"sqli\\"\\n ],\\n \\"Tags\\": [\\n \\"http_custom\\"\\n ]\\n }\\n },\\n \\"ManagedList\\": \\"intelligence_crawler\\",\\n \\"ManagedRulesets\\": [\\n {\\n \\"ProtectionLevel\\": 4,\\n \\"Action\\": \\"deny\\",\\n \\"ManagedRules\\": [\\n {\\n \\"Status\\": \\"on\\",\\n \\"Action\\": \\"deny\\",\\n \\"Id\\": 100001\\n }\\n ],\\n \\"AttackType\\": 11,\\n \\"NumberTotal\\": 100,\\n \\"NumberEnabled\\": 50\\n }\\n ],\\n \\"Sigchl\\": [\\n \\"sig\\"\\n ],\\n \\"Name\\": \\"example\\",\\n \\"AppSdk\\": {\\n \\"CustomSign\\": {\\n \\"Value\\": \\"examplesignvalue\\",\\n \\"Key\\": \\"sign\\"\\n },\\n \\"CustomSignStatus\\": \\"on\\",\\n \\"FeatureAbnormal\\": [\\n \\"wxbb_invalid_sign\\"\\n ]\\n },\\n \\"RateLimit\\": {\\n \\"Characteristics\\": {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n },\\n \\"OnHit\\": true,\\n \\"TTL\\": 10,\\n \\"Threshold\\": {\\n \\"ManagedRulesBlocked\\": 10,\\n \\"DistinctManagedRules\\": 10,\\n \\"ResponseStatus\\": {\\n \\"Ratio\\": 10,\\n \\"Count\\": 10,\\n \\"Code\\": 404\\n },\\n \\"Traffic\\": \\"10Gb\\",\\n \\"Request\\": 10\\n },\\n \\"Interval\\": 10\\n },\\n \\"Type\\": \\"http_custom\\",\\n \\"AppPackage\\": {\\n \\"PackageSigns\\": [\\n {\\n \\"Sign\\": \\"sign\\",\\n \\"Name\\": \\"name\\"\\n }\\n ]\\n },\\n \\"ManagedGroupId\\": 30000001,\\n \\"Timer\\": {\\n \\"Scopes\\": \\"permanent\\",\\n \\"Zone\\": 8,\\n \\"Periods\\": [\\n {\\n \\"Start\\": \\"2025-01-01T00:00:00Z\\",\\n \\"End\\": \\"2025-01-01T01:00:00Z\\"\\n }\\n ],\\n \\"WeeklyPeriods\\": [\\n {\\n \\"Days\\": \\"1\\",\\n \\"DailyPeriods\\": [\\n {\\n \\"Start\\": \\"00:00:00\\",\\n \\"End\\": \\"01:00:00\\"\\n }\\n ]\\n }\\n ]\\n },\\n \\"Expression\\": \\"ip.src eq 1.1.1.1\\",\\n \\"SecurityLevel\\": {\\n \\"Value\\": \\"low\\"\\n },\\n \\"Value\\": \\"10.0.0.1\\",\\n \\"Id\\": 20000001,\\n \\"Notes\\": \\"example notes\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Get WAF ruleset details', 'changeSet' => [ ['createdAt' => '2024-09-25T07:02:50.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T06:56:35.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetWafRuleset'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:GetWafRuleset', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListCacheReserveInstances' => [ 'summary' => 'Queries the cache reserve instances for your account.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238745', 'abilityTreeNodes' => ['FEATUREdcdn51XOHW'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'Status', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => [ 'description' => 'The status of the cache reserve instance. Valid values:'."\n" ."\n" .'- **online**: The instance is running normally.'."\n" ."\n" .'- **offline**: The instance has expired and is unavailable but remains within the grace period.'."\n" ."\n" .'- **disable**: The instance is disabled.'."\n" ."\n" .'- **overdue**: The instance is suspended due to an overdue payment.', 'type' => 'string', 'enum' => ['online', 'offline', 'disable', 'all', 'overdue'], 'required' => false, 'example' => 'online', 'title' => '', ], ], [ 'name' => 'SortBy', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => [ 'description' => 'The field to sort the results by. Valid values:'."\n" ."\n" .'- **ExpireTime**: Expiration time.'."\n" ."\n" .'- **CreateTime**: Creation time.', 'type' => 'string', 'enum' => ['ExpireTime', 'CreateTime', 'default'], 'required' => false, 'example' => 'ExpireTime', 'title' => '', ], ], [ 'name' => 'SortOrder', 'in' => 'query', 'schema' => [ 'description' => 'The sort order. Valid values:'."\n" ."\n" .'- **asc**: Ascending order.'."\n" ."\n" .'- **desc**: Descending order.', 'type' => 'string', 'enum' => ['asc', 'desc'], 'title' => '', 'required' => false, 'example' => 'desc', ], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Valid values: **1 to 500**. The default value is **500**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'sp-xcdn-96wblslz****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The query results.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '65C66B7B-671A-8297-9187-2R5477247B76'], 'InstanceInfo' => [ 'description' => 'A list of cache reserve instances.', 'type' => 'array', 'items' => [ 'description' => 'The details of a cache reserve instance.', 'type' => 'object', 'properties' => [ 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'sp-xcdn-96wblslz****', 'title' => ''], 'ExpireTime' => ['description' => 'The expiration time of the instance.', 'type' => 'string', 'example' => '2024-10-05T16:00:00Z', 'title' => ''], 'Duration' => ['description' => 'The purchase duration of the instance, in months.', 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''], 'CreateTime' => ['description' => 'The time when the instance was created.', 'type' => 'string', 'example' => '2024-04-12T05:41:51Z', 'title' => ''], 'Status' => ['description' => 'The status of the instance. Valid values:'."\n" ."\n" .'- **online**: The instance is running normally.'."\n" ."\n" .'- **offline**: The instance has expired and is unavailable but remains within the grace period.'."\n" ."\n" .'- **disable**: The instance is disabled.'."\n" ."\n" .'- **overdue**: The instance is suspended due to an overdue payment.', 'type' => 'string', 'example' => 'online', 'title' => ''], 'CacheReserveRegion' => ['description' => 'The region where the cache reserve instance is used.', 'type' => 'string', 'example' => 'HK', 'title' => ''], 'CacheReserveCapacity' => ['description' => 'The cache reserve capacity, in GB.', 'type' => 'integer', 'format' => 'int64', 'example' => '512000', 'title' => ''], 'ChargeType' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The page number of the returned data.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries returned per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '500', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '16', 'title' => ''], 'TotalPage' => ['description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ], ], 'title' => 'ListCacheReserveInstances', 'changeSet' => [ ['createdAt' => '2025-02-21T03:25:57.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListCacheReserveInstances'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListCacheReserveInstances', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"65C66B7B-671A-8297-9187-2R5477247B76\\",\\n \\"InstanceInfo\\": [\\n {\\n \\"InstanceId\\": \\"sp-xcdn-96wblslz****\\",\\n \\"ExpireTime\\": \\"2024-10-05T16:00:00Z\\",\\n \\"Duration\\": 3,\\n \\"CreateTime\\": \\"2024-04-12T05:41:51Z\\",\\n \\"Status\\": \\"online\\",\\n \\"CacheReserveRegion\\": \\"HK\\",\\n \\"CacheReserveCapacity\\": 512000,\\n \\"ChargeType\\": \\"\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 500,\\n \\"TotalCount\\": 16,\\n \\"TotalPage\\": 1\\n}","type":"json"}]', ], 'ListCacheRules' => [ 'summary' => 'Queries multiple cache configurations.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257498', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~ListSites~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '35281609698****', 'title' => ''], ], [ 'name' => 'ConfigType', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The configuration type. You can use this parameter to query global or rule configurations. Valid values:'."\n" .'- global: queries global configurations.'."\n" .'- rule: queries rule configurations.'."\n" ."\n" .'This parameter is optional. If you do not specify this parameter, both global and rule configurations are returned.', 'enumValueTitles' => ['rule' => 'rule configuration.', 'global' => 'global configuration.'], 'type' => 'string', 'enum' => ['global', 'rule'], 'required' => false, 'example' => 'global', ], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The rule name. You do not need to set this parameter when you add a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'test'], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number for a paged query. The value must be greater than or equal to 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page for a paged query. Valid values: 1 to 500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site. For sites with version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'Configs' => [ 'description' => 'The configuration list in the response body.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '395386449776640', 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the site configuration. For sites with configuration version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Sequence' => ['description' => 'The rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RuleEnable' => ['description' => 'The rule switch. You do not need to set this parameter when you add a global configuration. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'The rule content, which uses conditional expressions to match user requests. You do not need to set this parameter when you add a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: set the value to true.'."\n" .'- Match specified requests: set the value to a custom expression, such as (http.host eq \\"video.example.com\\").', 'type' => 'string', 'example' => '(http.host eq \\"video.example.com\\")', 'title' => ''], 'RuleName' => ['description' => 'The rule name. You do not need to set this parameter when you add a global configuration.', 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'ConfigType' => ['description' => 'The configuration type. You can use this parameter to query global or rule configurations. Valid values:'."\n" ."\n" .'- global: global configuration.'."\n" .'- rule: rule configuration.', 'type' => 'string', 'example' => 'global', 'title' => ''], 'BypassCache' => ['description' => 'The bypass cache mode. Valid values:'."\n" .'- cache_all: caches all requests.'."\n" .'- bypass_all: bypasses cache for all requests.', 'type' => 'string', 'example' => 'cache_all', 'title' => ''], 'BrowserCacheMode' => ['description' => 'The browser cache mode. Valid values:'."\n" .'- no_cache: does not cache.'."\n" .'- follow_origin: follows the origin cache policy.'."\n" .'- override_origin: overrides the origin cache policy.', 'type' => 'string', 'example' => 'no_cache', 'title' => ''], 'BrowserCacheTtl' => ['description' => 'The browser cache expiration time, in seconds.', 'type' => 'string', 'example' => '300', 'title' => ''], 'EdgeCacheMode' => ['description' => 'The edge cache mode. Valid values:'."\n" .'- follow_origin: follows the origin cache policy if present. Otherwise, uses the default cache policy.'."\n" .'- no_cache: does not cache.'."\n" .'- override_origin: overrides the origin cache policy.'."\n" .'- follow_origin_bypass: follows the origin cache policy if present. Otherwise, does not cache.'."\n" .'- follow_origin_override: follows the origin cache policy if present. Otherwise, uses a custom cache TTL.', 'type' => 'string', 'example' => 'follow_origin', 'title' => ''], 'EdgeCacheTtl' => ['description' => 'The edge cache expiration time, in seconds.', 'type' => 'string', 'example' => '300', 'title' => ''], 'EdgeStatusCodeCacheTtl' => ['description' => 'The status code cache expiration time, in seconds.'."\n" .'- You can set the cache expiration time for specific status codes. For example, 404=10 indicates that the 404 status code is cached for 10 seconds.'."\n" .'- You can set the cache expiration time for 4xx or 5xx series status codes. For example, 4xx=10 indicates that all 4xx status codes are cached for 10 seconds.'."\n" .'- You can set the cache expiration time for multiple status codes. Separate multiple status codes with commas (,).', 'type' => 'string', 'example' => '5xx=0,404=10', 'title' => ''], 'SortQueryStringForCache' => ['description' => 'Specifies whether to sort query strings. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'QueryStringMode' => ['description' => 'The query string handling mode when generating cache keys. Valid values:'."\n" .'- ignore_all: ignores all query strings.'."\n" .'- exclude_query_string: removes specified query strings.'."\n" .'- reserve_all: retains all query strings. This is the default value.'."\n" .'- include_query_string: retains specified query strings.', 'type' => 'string', 'example' => 'ignore_all', 'title' => ''], 'QueryString' => ['description' => 'The query strings to retain or remove when generating cache keys. Multiple values are separated by spaces.', 'type' => 'string', 'example' => 'example', 'title' => ''], 'IncludeHeader' => ['description' => 'The specified header names (case-insensitive) and their values to include when generating cache keys. Multiple values are separated by spaces. Header names support the following character types:'."\n" .'- Symbols: ! # $ % & \' * + - . ^ _ ` | ~'."\n" .'- Digits: 0-9'."\n" .'- Letters: lowercase a-z.', 'type' => 'string', 'example' => 'headername1 headername2', 'title' => ''], 'IncludeCookie' => ['description' => 'The specified cookie names (case-insensitive) and their values to include when generating cache keys. Multiple values are separated by spaces. Cookie names support the following character types:'."\n" .'- Symbols: ! # $ % & \' * + - . ^ _ ` | ~'."\n" .'- Digits: 0-9'."\n" .'- Letters: lowercase a-z.', 'type' => 'string', 'example' => 'cookiename1 cookiename2', 'title' => ''], 'CacheReserveEligibility' => ['description' => 'The cache reserve eligibility. Controls whether user requests bypass the cache reserve node during back-to-origin. Valid values:'."\n" .'- bypass_cache_reserve: requests bypass cache reserve.'."\n" .'- eligible_for_cache_reserve: requests are eligible for cache reserve.', 'type' => 'string', 'example' => 'bypass_cache_reserve', 'title' => ''], 'CheckPresenceHeader' => ['description' => 'When generating cache keys, checks whether the specified headers exist. If a header exists, its name (case-insensitive) is added to the cache key. Multiple header names are separated by spaces. Header names support the following character types:'."\n" .'- Symbols: ! # $ % & \' * + - . ^ _ ` | ~'."\n" .'- Digits: 0-9'."\n" .'- Letters: lowercase a-z.', 'type' => 'string', 'example' => 'headername1 headername2', 'title' => ''], 'CheckPresenceCookie' => ['description' => 'When generating cache keys, checks whether the specified cookies exist. If a cookie exists, its name (case-insensitive) is added to the cache key. Multiple cookie names are separated by spaces. Cookie names support the following character types:'."\n" .'- Symbols: ! # $ % & \' * + - . ^ _ ` | ~'."\n" .'- Digits: 0-9'."\n" .'- Letters: lowercase a-z.', 'type' => 'string', 'example' => 'cookiename1 cookiename2', 'title' => ''], 'UserDeviceType' => ['description' => 'Specifies whether to include the type of the client when generating cache keys. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: shutdown.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'UserGeo' => ['description' => 'Specifies whether to include the client geographic location when generating cache keys. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'UserLanguage' => ['description' => 'Specifies whether to include the client language type when generating cache keys. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'ServeStale' => ['description' => 'Specifies whether to serve stale cache. When enabled, edge nodes can respond to user requests with cached expired files when the origin server is unavailable. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'AdditionalCacheablePorts' => ['description' => '- Enables caching on specified ports.'."\n" .'- Valid values: 8880, 2052, 2082, 2086, 2095, 2053, 2083, 2087, and 2096.'."\n" .'- Multiple ports are separated by commas (,).', 'type' => 'string', 'example' => '8880,2052,2086', 'title' => ''], 'CacheDeceptionArmor' => ['description' => 'The cache deception armor. Protects against web cache deception attacks by caching only content that passes validation. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'PostCache' => ['title' => '', 'description' => 'Specifies whether to enable POST caching.', 'type' => 'string', 'example' => 'on'], 'PostBodyCacheKey' => ['title' => '', 'description' => 'The cache key handling mode for POST caching. The following two modes are supported:'."\n" .'- md5: calculates the MD5 hash of the body content and adds the MD5 value to the cache key.'."\n" .'- ignore: ignores the body content in the cache key.', 'type' => 'string', 'example' => 'ignore'], 'PostBodySizeLimit' => ['description' => 'The body size limit for POST caching. The value is a number in KB. Valid values: 1 to 8. If this parameter is left empty, the default value of 8 KB takes effect.', 'type' => 'string', 'example' => '1', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The current page number, which is the same as the PageNumber request parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'TotalCount' => ['description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'TotalPage' => ['description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"Configs\\": [\\n {\\n \\"ConfigId\\": 395386449776640,\\n \\"SiteVersion\\": 1,\\n \\"Sequence\\": 1,\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\\\\\\\\\"video.example.com\\\\\\\\\\\\\\")\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"ConfigType\\": \\"global\\",\\n \\"BypassCache\\": \\"cache_all\\",\\n \\"BrowserCacheMode\\": \\"no_cache\\",\\n \\"BrowserCacheTtl\\": \\"300\\",\\n \\"EdgeCacheMode\\": \\"follow_origin\\",\\n \\"EdgeCacheTtl\\": \\"300\\",\\n \\"EdgeStatusCodeCacheTtl\\": \\"5xx=0,404=10\\",\\n \\"SortQueryStringForCache\\": \\"on\\",\\n \\"QueryStringMode\\": \\"ignore_all\\",\\n \\"QueryString\\": \\"example\\",\\n \\"IncludeHeader\\": \\"headername1 headername2\\",\\n \\"IncludeCookie\\": \\"cookiename1 cookiename2\\",\\n \\"CacheReserveEligibility\\": \\"bypass_cache_reserve\\",\\n \\"CheckPresenceHeader\\": \\"headername1 headername2\\",\\n \\"CheckPresenceCookie\\": \\"cookiename1 cookiename2\\",\\n \\"UserDeviceType\\": \\"on\\",\\n \\"UserGeo\\": \\"on\\",\\n \\"UserLanguage\\": \\"on\\",\\n \\"ServeStale\\": \\"on\\",\\n \\"AdditionalCacheablePorts\\": \\"8880,2052,2086\\",\\n \\"CacheDeceptionArmor\\": \\"on\\",\\n \\"PostCache\\": \\"on\\",\\n \\"PostBodyCacheKey\\": \\"ignore\\",\\n \\"PostBodySizeLimit\\": \\"1\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 20,\\n \\"TotalPage\\": 2\\n}","type":"json"}]', 'title' => 'Query site cache configuration list', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListCacheRules'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListCacheRules', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListCasCertificates' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239382', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The current page number. Default value: **1**.', 'type' => 'integer', 'format' => 'int64', 'default' => '1', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The page size. Valid values: any integer from 1 to 1000.', 'type' => 'integer', 'format' => 'int64', 'default' => '1000', 'required' => false, 'example' => '20', 'title' => ''], ], [ 'name' => 'SearchKeyword', 'in' => 'query', 'schema' => ['description' => 'The certificate name for fuzzy match.', 'type' => 'string', 'required' => false, 'example' => 'aliyun', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'F61CDR30-E83C-4FDA-BF73-9A94CDD44229', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'Certificates' => [ 'description' => 'The certificate list.', 'type' => 'array', 'items' => [ 'description' => 'The certificate.', 'type' => 'object', 'properties' => [ 'NotAfter' => ['description' => 'The expiration time of the certificate.', 'type' => 'string', 'example' => '1708423200000', 'title' => ''], 'Fingerprint' => ['description' => 'The certificate fingerprint.', 'type' => 'string', 'example' => '0151xxxx'."\n", 'title' => ''], 'Name' => ['description' => 'The certificate name.', 'type' => 'string', 'example' => 'demo', 'title' => ''], 'Issuer' => ['description' => 'The certificate issuer.', 'type' => 'string', 'example' => 'DigiCert', 'title' => ''], 'Id' => ['description' => 'The certificate ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '30000145', 'title' => ''], 'CommonName' => ['description' => 'The common name of the certificate.', 'type' => 'string', 'example' => 'example.com'."\n", 'title' => ''], 'Region' => ['description' => 'The region where the certificate resides. Supported values: **cn-hangzhou** and **ap-southeast-1**.', 'type' => 'string', 'example' => 'ap-southeast-1', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The page number. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'CertList.NotFound', 'errorMessage' => 'The specified CertList does not exist.', 'description' => 'The queried certificate list does not exist.'], ], ], 'title' => 'Query China shield certificate list', 'summary' => 'Queries the list of China Shield certificates.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:ListCasCertificates', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F61CDR30-E83C-4FDA-BF73-9A94CDD44229\\",\\n \\"TotalCount\\": 20,\\n \\"Certificates\\": [\\n {\\n \\"NotAfter\\": \\"1708423200000\\",\\n \\"Fingerprint\\": \\"0151xxxx\\\\n\\",\\n \\"Name\\": \\"demo\\",\\n \\"Issuer\\": \\"DigiCert\\",\\n \\"Id\\": 30000145,\\n \\"CommonName\\": \\"example.com\\\\n\\",\\n \\"Region\\": \\"ap-southeast-1\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10\\n}","type":"json"}]', ], 'ListCertificates' => [ 'summary' => 'Queries the certificate list for a specific site.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238842', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~ListSites~~) operation to query the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'Keyword', 'in' => 'query', 'schema' => ['description' => 'The search keyword.', 'type' => 'string', 'required' => false, 'example' => 'example', 'title' => ''], ], [ 'name' => 'ValidOnly', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to return only valid certificates.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number of the data to return.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '3', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of records per page.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74', 'title' => ''], 'TotalCount' => ['description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''], 'PageNumber' => ['description' => 'The page number of the data to return.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of records per page.', 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''], 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com ', 'title' => ''], 'Result' => [ 'description' => 'The result array.', 'type' => 'array', 'items' => [ 'description' => 'The result.', 'type' => 'object', 'properties' => [ 'CasId' => ['description' => 'The cloud certificate ID.', 'type' => 'string', 'example' => '30000569', 'title' => ''], 'Id' => ['description' => 'The certificate ID.', 'type' => 'string', 'example' => 'baba39055622c008b90285a8838e****', 'title' => ''], 'Name' => ['description' => 'The certificate name.', 'type' => 'string', 'example' => 'yourCertName', 'title' => ''], 'Region' => ['description' => 'The region information.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'Status' => [ 'description' => 'The certificate status. Valid values:'."\n" .'- OK: Normal.'."\n" .'- Expired: The certificate has expired.'."\n" .'- Expiring: The certificate is about to expire (within 30 days).'."\n" .'- Issued: Free certificate - issued.'."\n" .'- Applying: Free certificate - applying.'."\n" .'- ApplyFailed: Free certificate - application failed.'."\n" .'- Canceled: Free certificate - canceled.', 'enumValueTitles' => ['Expiring' => 'The certificate is about to expire (within 30 days).', 'Issued' => 'Free certificate - issued.', 'Expired' => 'The certificate has expired.', 'Applying' => 'Free certificate - applying.', 'OK' => 'Normal.'], 'type' => 'string', 'example' => 'OK', 'title' => '', ], 'Type' => [ 'description' => 'The certificate type. Valid values:'."\n" .'- cas: SSL Certificates Service certificate.'."\n" .'- upload: Custom uploaded certificate.'."\n" .'- free: Free certificate.'."\n" .'- keyless: Keyless certificate.', 'enumValueTitles' => ['cas' => 'SSL Certificates Service certificate.', 'upload' => 'Custom uploaded certificate.', 'keyless' => 'Keyless certificate.', 'free' => 'Free certificate.'], 'type' => 'string', 'example' => 'free', 'title' => '', ], 'CommonName' => ['description' => 'The common name of the certificate.', 'type' => 'string', 'example' => 'www.example.com', 'title' => ''], 'NotBefore' => ['description' => 'The start time of the certificate validity period. Format: YYYY-MM-DD HH:MM:SS, in UTC/GMT time zone.', 'type' => 'string', 'example' => '2023-03-31 02:08:00', 'title' => ''], 'NotAfter' => ['description' => 'The end time of the certificate validity period. Format: YYYY-MM-DD HH:MM:SS, in UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-03-31 02:08:00', 'title' => ''], 'Issuer' => ['description' => 'The certificate issuer.', 'type' => 'string', 'example' => 'GlobalSign nv-sa', 'title' => ''], 'IssuerCN' => ['description' => 'The common name of the certificate issuer.', 'type' => 'string', 'example' => 'GlobalSign Organization Validation CA - SHA256 - G3', 'title' => ''], 'SAN' => ['description' => 'The Subject Alternative Name (SAN) of the certificate.', 'type' => 'string', 'example' => 'www.example.com,*.example.com', 'title' => ''], 'SigAlg' => ['description' => 'The signature algorithm of the certificate.', 'type' => 'string', 'example' => 'SHA256-RSA', 'title' => ''], 'PubAlg' => ['description' => 'The public key algorithm of the certificate.', 'type' => 'string', 'example' => 'RSA', 'title' => ''], 'CreateTime' => ['description' => 'The creation time. Format: YYYY-MM-DD HH:MM:SS, in UTC/GMT time zone.', 'type' => 'string', 'example' => '2022-06-24 07:48:51', 'title' => ''], 'UpdateTime' => ['description' => 'The update time. Format: YYYY-MM-DD HH:MM:SS, in UTC/GMT time zone.', 'type' => 'string', 'example' => '2023-04-20 06:18:42', 'title' => ''], 'SerialNumber' => ['description' => 'The certificate serial number.', 'type' => 'string', 'example' => 'babab022c5e9b27bf9c64d7f4b16****', 'title' => ''], 'FingerprintSha256' => ['description' => 'The SHA-256 fingerprint of the certificate.', 'type' => 'string', 'example' => '1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456a****', 'title' => ''], 'DCV' => [ 'description' => 'The Domain Control Validation (DCV) information.', 'type' => 'array', 'items' => [ 'description' => 'The Domain Control Validation (DCV) information.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'DCV ID。', 'type' => 'string', 'example' => 'bababf7cdd1546a2ad04c0def1f4****', 'title' => ''], 'Type' => [ 'description' => 'The DCV type. Valid values: DNS and HTTP.', 'enumValueTitles' => ['DNS' => 'DNS', 'HTTP' => 'HTTP'], 'type' => 'string', 'example' => 'HTTP', 'title' => '', ], 'Key' => ['description' => 'The DCV name. For the DNS type, this is the TXT record name. For the HTTP type, this is the URL.', 'type' => 'string', 'example' => 'http://www.example.com/.well-known/acme-challenge/pH20CqwS5L3ZnvkhI436DCzadKFuG7QcUcvB_4KsAow', 'title' => ''], 'Value' => ['description' => 'The DCV content.', 'type' => 'string', 'example' => 'pH20CqwS5L3ZnvkhI436DCzadKFuG7QcUcvB_4KsAow.KfzYo4LH3EgOt7a73G-RqZkbR0eYtLfEUmtmqGmr4FQ', 'title' => ''], 'Status' => ['description' => 'The validation status.', 'type' => 'string', 'example' => 'pending', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'ApplyCode' => ['description' => 'The error code for the certificate application.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''], 'ApplyMessage' => ['description' => 'The error message for the certificate application.', 'type' => 'string', 'example' => 'canceled', 'title' => ''], 'KeyServerId' => ['description' => 'The Keyless server ID. This parameter is valid only when Type is set to keyless.', 'type' => 'string', 'example' => 'baba39055622c008b90285a8838e****'."\n", 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.', 'description' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Query site certificate list', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListCertificates'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListCertificates', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\",\\n \\"TotalCount\\": 10,\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"SiteId\\": 1234567890123,\\n \\"SiteName\\": \\"example.com \\",\\n \\"Result\\": [\\n {\\n \\"CasId\\": \\"30000569\\",\\n \\"Id\\": \\"baba39055622c008b90285a8838e****\\",\\n \\"Name\\": \\"yourCertName\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"Status\\": \\"OK\\",\\n \\"Type\\": \\"free\\",\\n \\"CommonName\\": \\"www.example.com\\",\\n \\"NotBefore\\": \\"2023-03-31 02:08:00\\",\\n \\"NotAfter\\": \\"2024-03-31 02:08:00\\",\\n \\"Issuer\\": \\"GlobalSign nv-sa\\",\\n \\"IssuerCN\\": \\"GlobalSign Organization Validation CA - SHA256 - G3\\",\\n \\"SAN\\": \\"www.example.com,*.example.com\\",\\n \\"SigAlg\\": \\"SHA256-RSA\\",\\n \\"PubAlg\\": \\"RSA\\",\\n \\"CreateTime\\": \\"2022-06-24 07:48:51\\",\\n \\"UpdateTime\\": \\"2023-04-20 06:18:42\\",\\n \\"SerialNumber\\": \\"babab022c5e9b27bf9c64d7f4b16****\\",\\n \\"FingerprintSha256\\": \\"1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456a****\\",\\n \\"DCV\\": [\\n {\\n \\"Id\\": \\"bababf7cdd1546a2ad04c0def1f4****\\",\\n \\"Type\\": \\"HTTP\\",\\n \\"Key\\": \\"http://www.example.com/.well-known/acme-challenge/pH20CqwS5L3ZnvkhI436DCzadKFuG7QcUcvB_4KsAow\\",\\n \\"Value\\": \\"pH20CqwS5L3ZnvkhI436DCzadKFuG7QcUcvB_4KsAow.KfzYo4LH3EgOt7a73G-RqZkbR0eYtLfEUmtmqGmr4FQ\\",\\n \\"Status\\": \\"pending\\"\\n }\\n ],\\n \\"ApplyCode\\": 2,\\n \\"ApplyMessage\\": \\"canceled\\",\\n \\"KeyServerId\\": \\"baba39055622c008b90285a8838e****\\\\n\\"\\n }\\n ]\\n}","type":"json"}]', 'translator' => 'machine', ], 'ListCertificatesByRecord' => [ 'summary' => 'Queries the list of site certificates that match records. Batch record matching is supported.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239262', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~ListSites~~) operation to query the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123'."\n", 'title' => ''], ], [ 'name' => 'RecordName', 'in' => 'query', 'schema' => ['description' => 'The record name.', 'type' => 'string', 'required' => true, 'example' => 'www.example.com ', 'title' => ''], ], [ 'name' => 'ValidOnly', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to return only valid certificates.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'Detail', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to return certificate details.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '65C66B7B-671A-8297-9187-2R5477247B76', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries, which is the same as the number of records.', 'type' => 'integer', 'format' => 'int64', 'example' => '12', 'title' => ''], 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com ', 'title' => ''], 'Result' => [ 'description' => 'The result array.', 'type' => 'array', 'items' => [ 'description' => 'The result.', 'type' => 'object', 'properties' => [ 'RecordName' => ['description' => 'The record name.', 'type' => 'string', 'example' => 'www.example.com ', 'title' => ''], 'Count' => ['description' => 'The number of certificates that match the record.', 'type' => 'integer', 'format' => 'int64', 'example' => '3', 'title' => ''], 'Certificates' => [ 'description' => 'The list of certificates that match the record.', 'type' => 'array', 'items' => [ 'description' => 'The certificate information.', 'type' => 'object', 'properties' => [ 'CasId' => ['description' => 'The cloud certificate ID.', 'type' => 'string', 'example' => '30000137', 'title' => ''], 'Id' => ['description' => 'The certificate ID.', 'type' => 'string', 'example' => 'babab022c5e9b27bf9c64d7f4b1667f4', 'title' => ''], 'Name' => ['description' => 'The certificate name.', 'type' => 'string', 'example' => 'yourCertName', 'title' => ''], 'Region' => ['description' => 'The certificate store area.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'Status' => ['description' => 'The certificate status.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'Type' => [ 'description' => 'The certificate type.', 'enumValueTitles' => ['cas' => 'SSL Certificates Service certificate.', 'upload' => 'custom uploaded certificate.', 'keyless' => 'Keyless certificate.', 'free' => 'free certificate.'], 'type' => 'string', 'example' => 'free', 'title' => '', ], 'CommonName' => ['description' => 'The common name of the certificate.', 'type' => 'string', 'example' => 'www.example.com ', 'title' => ''], 'NotBefore' => ['description' => 'The start time of the certificate validity period. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2023-02-28 06:17:11', 'title' => ''], 'NotAfter' => ['description' => 'The end time of the certificate validity period. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-02-28 06:17:11', 'title' => ''], 'Issuer' => ['description' => 'The certificate issuer.', 'type' => 'string', 'example' => 'GlobalSign nv-sa', 'title' => ''], 'IssuerCN' => ['description' => 'The common name of the certificate issuer.', 'type' => 'string', 'example' => 'GlobalSign Organization Validation CA - SHA256 - G3', 'title' => ''], 'SAN' => ['description' => 'The Subject Alternative Name (SAN) of the certificate.', 'type' => 'string', 'example' => 'www.example.com,*.example.com', 'title' => ''], 'SigAlg' => ['description' => 'The signature algorithm of the certificate.', 'type' => 'string', 'example' => 'SHA256-RSA', 'title' => ''], 'PubAlg' => ['description' => 'The public key algorithm of the certificate.', 'type' => 'string', 'example' => 'RSA', 'title' => ''], 'CreateTime' => ['description' => 'The creation time. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2023-02-28 06:17:11', 'title' => ''], 'UpdateTime' => ['description' => 'The update time. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2023-02-28 06:17:11', 'title' => ''], 'SerialNumber' => ['description' => 'The certificate serial number.', 'type' => 'string', 'example' => 'baba39055622c008b90285a8838ed09a', 'title' => ''], 'FingerprintSha256' => ['description' => 'The SHA-256 fingerprint of the certificate.', 'type' => 'string', 'example' => '1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456aca66', 'title' => ''], 'KeyServerId' => ['description' => 'The Keyless server ID. This parameter is valid only when Type is set to keyless.', 'type' => 'string', 'example' => 'baba39055622c008b90285a8838e****'."\n", 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'ApplylingCount' => ['description' => 'The number of certificates being applied for.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'Status' => [ 'description' => 'The certificate configuration status of the record. Valid values:'."\n" .'- none: Not configured.'."\n" .'- configured: Configured.'."\n" .'- applying: Being applied for.'."\n" .'- failed: Application failed.', 'enumValueTitles' => ['configured' => 'Configured.', 'applying' => 'Being applied for.', 'none' => 'Not configured.', 'failed' => 'Application failed.'], 'type' => 'string', 'example' => 'none', 'title' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.', 'description' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'Required parameter RecordName missing. Specify RecordName and try again.', 'description' => 'Required parameter RecordName missing. Specify RecordName and try again.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"65C66B7B-671A-8297-9187-2R5477247B76\\",\\n \\"TotalCount\\": 12,\\n \\"SiteId\\": 1234567890123,\\n \\"SiteName\\": \\"example.com \\",\\n \\"Result\\": [\\n {\\n \\"RecordName\\": \\"www.example.com \\",\\n \\"Count\\": 3,\\n \\"Certificates\\": [\\n {\\n \\"CasId\\": \\"30000137\\",\\n \\"Id\\": \\"babab022c5e9b27bf9c64d7f4b1667f4\\",\\n \\"Name\\": \\"yourCertName\\",\\n \\"Region\\": \\"cn-hangzhou\\",\\n \\"Status\\": \\"OK\\",\\n \\"Type\\": \\"free\\",\\n \\"CommonName\\": \\"www.example.com \\",\\n \\"NotBefore\\": \\"2023-02-28 06:17:11\\",\\n \\"NotAfter\\": \\"2024-02-28 06:17:11\\",\\n \\"Issuer\\": \\"GlobalSign nv-sa\\",\\n \\"IssuerCN\\": \\"GlobalSign Organization Validation CA - SHA256 - G3\\",\\n \\"SAN\\": \\"www.example.com,*.example.com\\",\\n \\"SigAlg\\": \\"SHA256-RSA\\",\\n \\"PubAlg\\": \\"RSA\\",\\n \\"CreateTime\\": \\"2023-02-28 06:17:11\\",\\n \\"UpdateTime\\": \\"2023-02-28 06:17:11\\",\\n \\"SerialNumber\\": \\"baba39055622c008b90285a8838ed09a\\",\\n \\"FingerprintSha256\\": \\"1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456aca66\\",\\n \\"KeyServerId\\": \\"baba39055622c008b90285a8838e****\\\\n\\"\\n }\\n ],\\n \\"ApplylingCount\\": 1,\\n \\"Status\\": \\"none\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Query site certificates that match records', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListCertificatesByRecord'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:ListCertificatesByRecord', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListCiphers' => [ 'summary' => 'Query TLS Cipher Suite List', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239324', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'CiphersGroup', 'in' => 'query', 'schema' => ['description' => 'The name of the cipher suite group, which can be: all, strict, custom.', 'type' => 'string', 'required' => true, 'example' => 'strict', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'Request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', 'title' => ''], 'TotalCount' => ['description' => 'Total number of cipher suites.', 'type' => 'integer', 'format' => 'int64', 'example' => '16', 'title' => ''], 'CiphersGroup' => ['description' => 'Name of the cipher suite group.', 'type' => 'string', 'example' => 'all', 'title' => ''], 'Result' => [ 'description' => 'Returned result.', 'type' => 'array', 'items' => ['description' => 'Cipher suite name', 'type' => 'string', 'example' => 'ECDHE-ECDSA-AES256-GCM-SHA384', 'title' => ''], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"TotalCount\\": 16,\\n \\"CiphersGroup\\": \\"all\\",\\n \\"Result\\": [\\n \\"ECDHE-ECDSA-AES256-GCM-SHA384\\"\\n ]\\n}","type":"json"}]', 'title' => 'ListCiphers', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListCiphers'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListCiphers', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ListClientCaCertificates' => [ 'summary' => 'Retrieves the list of client CA certificates for a specified site.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239292', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~ListSites~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number to return. Valid values: 1 to 500.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Default value: 20. Maximum value: 100. Valid values: 1 to 100.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '20', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'F61CDR30-E83C-4FDA-BF73-9A94CDD44229', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int64', 'example' => '16', 'title' => ''], 'PageNumber' => ['description' => 'The page number of the returned data.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''], 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], 'Result' => [ 'description' => 'The list of client CA certificates.', 'type' => 'array', 'items' => [ 'description' => 'The certificate information.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'The certificate ID.', 'type' => 'string', 'example' => 'babab9db65ee5efcca9f3d41d4b5****', 'title' => ''], 'Name' => ['description' => 'The certificate name.', 'type' => 'string', 'example' => 'yourCertName', 'title' => ''], 'Status' => ['description' => 'The certificate status.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'Type' => ['description' => 'The certificate type.', 'type' => 'string', 'example' => 'upload', 'title' => ''], 'CommonName' => ['description' => 'The common name of the certificate.', 'type' => 'string', 'example' => 'www.example.com ', 'title' => ''], 'NotBefore' => ['description' => 'The start time of the certificate validity period. The time is in the YYYY-MM-DD HH:MM:SS format in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2023-03-31 02:08:00', 'title' => ''], 'NotAfter' => ['description' => 'The end time of the certificate validity period. The time is in the YYYY-MM-DD HH:MM:SS format in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-03-31 02:08:00', 'title' => ''], 'Issuer' => ['description' => 'The authority that issued the certificate.', 'type' => 'string', 'example' => 'GlobalSign nv-sa', 'title' => ''], 'SAN' => ['description' => 'The Subject Alternative Name (SAN) of the certificate.', 'type' => 'string', 'example' => 'www.example.com,*.example.com', 'title' => ''], 'SignatureAlgorithm' => ['description' => 'The signature algorithm of the certificate.', 'type' => 'string', 'example' => 'SHA256-RSA', 'title' => ''], 'PubkeyAlgorithm' => ['description' => 'The public key algorithm of the certificate.', 'type' => 'string', 'example' => 'RSA', 'title' => ''], 'CreateTime' => ['description' => 'The creation time. The time is in the YYYY-MM-DD HH:MM:SS format in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-06-24 07:48:51', 'title' => ''], 'UpdateTime' => ['description' => 'The update time. The time is in the YYYY-MM-DD HH:MM:SS format in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-07-20 06:18:42', 'title' => ''], 'SerialNumber' => ['description' => 'The certificate sequence number.', 'type' => 'string', 'example' => 'babab022c5e9b27bf9c64d7f4b16****', 'title' => ''], 'FingerprintSha256' => ['description' => 'The SHA-256 fingerprint of the certificate.', 'type' => 'string', 'example' => '1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456a****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.', 'description' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F61CDR30-E83C-4FDA-BF73-9A94CDD44229\\",\\n \\"TotalCount\\": 16,\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"SiteId\\": 1234567890123,\\n \\"SiteName\\": \\"example.com\\",\\n \\"Result\\": [\\n {\\n \\"Id\\": \\"babab9db65ee5efcca9f3d41d4b5****\\",\\n \\"Name\\": \\"yourCertName\\",\\n \\"Status\\": \\"OK\\",\\n \\"Type\\": \\"upload\\",\\n \\"CommonName\\": \\"www.example.com \\",\\n \\"NotBefore\\": \\"2023-03-31 02:08:00\\",\\n \\"NotAfter\\": \\"2024-03-31 02:08:00\\",\\n \\"Issuer\\": \\"GlobalSign nv-sa\\",\\n \\"SAN\\": \\"www.example.com,*.example.com\\",\\n \\"SignatureAlgorithm\\": \\"SHA256-RSA\\",\\n \\"PubkeyAlgorithm\\": \\"RSA\\",\\n \\"CreateTime\\": \\"2024-06-24 07:48:51\\",\\n \\"UpdateTime\\": \\"2024-07-20 06:18:42\\",\\n \\"SerialNumber\\": \\"babab022c5e9b27bf9c64d7f4b16****\\",\\n \\"FingerprintSha256\\": \\"1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456a****\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Get client CA certificate list', 'changeSet' => [ ['createdAt' => '2025-03-12T03:30:13.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListClientCaCertificates'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListClientCaCertificates', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListClientCertificates' => [ 'summary' => 'Retrieves the list of client certificates for a specified site.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239148', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '20', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int64', 'example' => '5', 'title' => ''], 'PageNumber' => ['description' => 'The page number of the returned data.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''], 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], 'Result' => [ 'description' => 'The list of client certificates.', 'type' => 'array', 'items' => [ 'description' => 'The certificate information.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'The certificate ID.', 'type' => 'string', 'example' => 'babab9db65ee5efcca9f3d41d4b50d66', 'title' => ''], 'Name' => ['description' => 'The certificate name.', 'type' => 'string', 'example' => 'yourCertName', 'title' => ''], 'Status' => ['description' => 'The certificate status.', 'type' => 'string', 'example' => 'active', 'title' => ''], 'Type' => ['description' => 'The certificate type.', 'type' => 'string', 'example' => 'dcdn', 'title' => ''], 'CommonName' => ['description' => 'The common name of the certificate.', 'type' => 'string', 'example' => 'www.example.com ', 'title' => ''], 'NotBefore' => ['description' => 'The start time of the certificate validity period. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2023-03-31 02:08:00', 'title' => ''], 'NotAfter' => ['description' => 'The end time of the certificate validity period. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-03-31 02:08:00', 'title' => ''], 'Issuer' => ['description' => 'The authority that issued the certificate.', 'type' => 'string', 'example' => 'GlobalSign nv-sa', 'title' => ''], 'SAN' => ['description' => 'The Subject Alternative Name (SAN) of the certificate.', 'type' => 'string', 'example' => 'www.example.com,*.example.com', 'title' => ''], 'SignatureAlgorithm' => ['description' => 'The signature algorithm of the certificate.', 'type' => 'string', 'example' => 'SHA256-RSA', 'title' => ''], 'PubkeyAlgorithm' => ['description' => 'The public key algorithm of the certificate.', 'type' => 'string', 'example' => 'RSA', 'title' => ''], 'CreateTime' => ['description' => 'The creation time. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-06-24 07:48:51', 'title' => ''], 'UpdateTime' => ['description' => 'The update time. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-07-20 06:18:42', 'title' => ''], 'CACertificateId' => ['description' => 'The CA certificate ID.', 'type' => 'string', 'example' => 'baba39055622c008b90285a8838ed09a', 'title' => ''], 'SerialNumber' => ['description' => 'The certificate serial number.', 'type' => 'string', 'example' => 'babaded901474b9693acf530e0fb1d**', 'title' => ''], 'FingerprintSha256' => ['description' => 'The SHA-256 fingerprint of the certificate.', 'type' => 'string', 'example' => '1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456a****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.', 'description' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\",\\n \\"TotalCount\\": 5,\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"SiteId\\": 1234567890123,\\n \\"SiteName\\": \\"example.com\\",\\n \\"Result\\": [\\n {\\n \\"Id\\": \\"babab9db65ee5efcca9f3d41d4b50d66\\",\\n \\"Name\\": \\"yourCertName\\",\\n \\"Status\\": \\"active\\",\\n \\"Type\\": \\"dcdn\\",\\n \\"CommonName\\": \\"www.example.com \\",\\n \\"NotBefore\\": \\"2023-03-31 02:08:00\\",\\n \\"NotAfter\\": \\"2024-03-31 02:08:00\\",\\n \\"Issuer\\": \\"GlobalSign nv-sa\\",\\n \\"SAN\\": \\"www.example.com,*.example.com\\",\\n \\"SignatureAlgorithm\\": \\"SHA256-RSA\\",\\n \\"PubkeyAlgorithm\\": \\"RSA\\",\\n \\"CreateTime\\": \\"2024-06-24 07:48:51\\",\\n \\"UpdateTime\\": \\"2024-07-20 06:18:42\\",\\n \\"CACertificateId\\": \\"baba39055622c008b90285a8838ed09a\\",\\n \\"SerialNumber\\": \\"babaded901474b9693acf530e0fb1d**\\",\\n \\"FingerprintSha256\\": \\"1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456a****\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Get client certificate list', 'changeSet' => [ ['createdAt' => '2025-03-12T03:30:13.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListClientCertificates'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListClientCertificates', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListCompressionRules' => [ 'summary' => 'Queries the list of compression rule configurations.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257666', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '34003500310****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID. You can call the [ListRedirectRules](~~2867474~~) operation to obtain the configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '35281609698****', 'title' => ''], ], [ 'name' => 'ConfigType', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The configuration type. Valid values:'."\n" .'- global: global configuration.'."\n" .'- rule: rule configuration.', 'enumValueTitles' => ['rule' => 'rule configuration.', 'global' => 'global configuration.'], 'type' => 'string', 'enum' => ['global', 'rule'], 'required' => false, 'example' => 'rule', ], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The rule name. You do not need to set this parameter when adding a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example'], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number for a paged query. The value must be greater than or equal to 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page for a paged query. Valid values: 1 to 500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. For sites with version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F'."\n"], 'Configs' => [ 'description' => 'The list of compression rule configurations.', 'type' => 'array', 'items' => [ 'description' => 'The details of a compression rule configuration.', 'type' => 'object', 'properties' => [ 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '35281609698****'."\n", 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the site configuration. For sites with version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Sequence' => ['description' => 'The rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RuleEnable' => ['description' => 'The rule switch. You do not need to set this parameter when adding a global configuration. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'The rule content, which uses a conditional expression to match user requests. You do not need to set this parameter when adding a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: Set the value to true.'."\n" .'- Match specified requests: Set the value to a custom expression, for example, (http.host eq \\"video.example.com\\").', 'type' => 'string', 'example' => '(http.host eq "video.example.com")', 'title' => ''], 'RuleName' => ['description' => 'The rule name. You do not need to set this parameter when adding a global configuration.', 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'ConfigType' => ['description' => 'The configuration type. Valid values:'."\n" .'- global: global configuration.'."\n" .'- rule: rule configuration.', 'type' => 'string', 'example' => 'rule', 'title' => ''], 'Gzip' => ['description' => 'Gzip compression. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Brotli' => ['description' => 'Brotli compression. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Zstd' => ['description' => 'Zstd compression. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The current page number, which is the same as the PageNumber request parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '16', 'title' => ''], 'TotalPage' => ['description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\\\n\\",\\n \\"Configs\\": [\\n {\\n \\"ConfigId\\": 0,\\n \\"SiteVersion\\": 1,\\n \\"Sequence\\": 1,\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\"video.example.com\\\\\\")\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"ConfigType\\": \\"rule\\",\\n \\"Gzip\\": \\"on\\",\\n \\"Brotli\\": \\"on\\",\\n \\"Zstd\\": \\"on\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"TotalCount\\": 16,\\n \\"TotalPage\\": 1\\n}","type":"json"}]', 'title' => 'Query compression rule configurations', 'changeSet' => [ ['createdAt' => '2025-02-12T02:25:41.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListCompressionRules'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:ListCompressionRules', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListCustomHostnames' => [ 'summary' => 'Queries the list of SaaS domain names under a site, including the ID, status, and domain name verification information of each SaaS domain name. You can filter results by SaaS domain name, site ID, or associated record ID.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239634', 'abilityTreeNodes' => ['FEATUREdcdn4DMKZ4'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '744571165985008'], ], [ 'name' => 'RecordId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The associated record ID. You can call the [ListRecords](~~2850265~~) operation to obtain the record ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1234567890123'], ], [ 'name' => 'Hostname', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The SaaS domain name.', 'type' => 'string', 'required' => false, 'example' => 'custom.site.com'], ], [ 'name' => 'NameMatchType', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The search match mode for the SaaS domain name. Default value: exact. Valid values:'."\n" .'- **prefix**: prefix match.'."\n" .'- **suffix**: suffix match.'."\n" .'- **exact**: exact match.'."\n" .'- **fuzzy**: fuzzy match.', 'enumValueTitles' => ['prefix' => 'Prefix match.', 'exact' => 'Exact match.', 'suffix' => 'Suffix match.', 'fuzzy' => 'Fuzzy match.'], 'type' => 'string', 'enum' => ['prefix', 'suffix', 'exact', 'fuzzy'], 'required' => false, 'example' => 'exact', ], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The SaaS domain name status. Valid values:'."\n" .'- **pending**: pending verification.'."\n" .'- **active**: activated.'."\n" .'- **conflicted**: occupied.'."\n" .'- **offline**: offline.', 'enumValueTitles' => ['conflicted' => 'Occupied.', 'offline' => 'Offline.', 'pending' => 'Pending verification.', 'active' => 'Activated.'], 'type' => 'string', 'enum' => ['pending', 'active', 'conflicted', 'offline'], 'required' => false, 'example' => 'active', ], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number for a paged query. The value must be greater than or equal to 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page for a paged query. Valid values: 1 to 500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '500'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID, which is a unique identifier generated by Alibaba Cloud for the request.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'], 'PageNumber' => ['title' => '', 'description' => 'The current page number. This value is the same as the PageNumber request parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'PageSize' => ['title' => '', 'description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '100'], 'TotalCount' => ['title' => '', 'description' => 'The total number of SaaS domain names.', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], 'Hostnames' => [ 'title' => '', 'description' => 'The list of SaaS domain names returned.', 'type' => 'array', 'items' => [ 'description' => 'The information about a single SaaS domain name.', 'type' => 'object', 'properties' => [ 'HostnameId' => ['title' => '', 'description' => 'The ID of the SaaS domain name.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123'], 'Hostname' => ['title' => '', 'description' => 'The SaaS domain name.', 'type' => 'string', 'example' => 'custom.site.com'], 'SiteId' => ['title' => '', 'description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '890601022130656'], 'SiteName' => ['title' => '', 'description' => 'The site name.', 'type' => 'string', 'example' => 'example.com'], 'RecordId' => ['title' => '', 'description' => 'The record ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '3386032455886912'], 'RecordName' => ['title' => '', 'description' => 'The record name.', 'type' => 'string', 'example' => 'origin.example.com'], 'Status' => [ 'title' => '', 'description' => 'The SaaS domain name status. Valid values:'."\n" .'- **pending**: pending verification.'."\n" .'- **active**: activated.'."\n" .'- **conflicted**: occupied.'."\n" .'- **offline**: offline.'."\n" .'- **configuring**: being configured.', 'enumValueTitles' => ['conflicted' => 'Occupied.', 'offline' => 'Offline.', 'configuring' => 'Being configured.', 'pending' => 'Pending verification.', 'active' => 'Activated.'], 'type' => 'string', 'enum' => ['pending', 'active', 'conflicted', 'offline', 'configuring'], 'example' => 'active', ], 'SslFlag' => [ 'title' => '', 'description' => 'The SSL switch. Valid values:'."\n" .'- **on**: SSL is enabled.'."\n" .'- **off**: SSL is disabled.', 'enumValueTitles' => ['off' => 'SSL is disabled.', 'on' => 'SSL is enabled.'], 'type' => 'string', 'enum' => ['on', 'off'], 'example' => 'on', ], 'CertType' => [ 'title' => '', 'description' => 'The certificate type. Valid values:'."\n" .'- **free**: free certificate.'."\n" .'- **upload**: uploaded certificate.'."\n" .'- **cas**: SSL Certificates Service certificate.', 'enumValueTitles' => ['cas' => 'SSL Certificates Service certificate.', 'upload' => 'Uploaded certificate.', 'free' => 'Free certificate.'], 'type' => 'string', 'enum' => ['free', 'upload', 'cas'], 'example' => 'free', ], 'CertHttpKey' => ['title' => '', 'description' => 'The HTTP address for certificate verification.', 'type' => 'string', 'example' => 'http://custom.site.com/.well-known/acme-challenge/jLmMHlEaZ3jb352Qo3ciaSoAC8KZ5Hk0F-4_1xLQtgc'], 'CertHttpValue' => ['title' => '', 'description' => 'The HTTP content for certificate verification.', 'type' => 'string', 'example' => 'jLmMHlEaZ3jb352Qo3ciaSoAC8KZ5Hk0F-4_1xLQtgc.GridYdfJJB5PgFEL-t89XfaFvMPB4f2-I9fwLpKl6e0'], 'CertTxtKey' => ['title' => '', 'description' => 'The TXT record name for certificate verification.', 'type' => 'string', 'example' => ' '."\n" .'_acme-challenge.custom.site.com'."\n"], 'CertTxtValue' => ['title' => '', 'description' => 'The TXT record content for certificate verification.', 'type' => 'string', 'example' => ' '."\n" .'lcKYad3UQXgrZLvMm_6TBUYKK4xTkGmninV0Mzx4gjM'."\n"], 'VerifyHost' => ['title' => '', 'description' => 'The TXT record name for domain name verification.', 'type' => 'string', 'example' => '_esa_custom_hostname.custom.site.com'."\n"], 'VerifyCode' => ['title' => '', 'description' => 'The TXT record content for domain name verification.', 'type' => 'string', 'example' => 'verify_16ab7f4d389d4dff6655f995c6a997bd'."\n"], 'CertStatus' => [ 'title' => '', 'description' => 'The certificate status. Valid values:'."\n" .'- **OK**: normal.'."\n" .'- **Applying**: being applied.'."\n" .'- **ApplyFailed**: application failed.'."\n" .'- **Expiring**: about to expire.'."\n" .'- **Expired**: expired.', 'enumValueTitles' => ['Expiring' => 'About to expire.', 'ApplyFailed' => 'Application failed.', 'Expired' => 'Expired.', 'Applying' => 'Being applied.', 'OK' => 'Normal.'], 'type' => 'string', 'enum' => ['OK', 'Expired', 'Expiring', 'Applying', 'ApplyFailed'], 'example' => 'OK', ], 'CertNotAfter' => ['title' => '', 'description' => 'The certificate expiration time, in the ISO 8601 standard in UTC. Format: yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2026-04-19T11:15:20Z'."\n"], 'CertApplyMessage' => ['title' => '', 'description' => 'The error message for the free certificate application.', 'type' => 'string', 'example' => 'canceled'], 'CertApplyCode' => ['title' => '', 'description' => 'The error code for the free certificate application.', 'type' => 'integer', 'format' => 'int64', 'example' => '2'."\n"], 'OfflineReason' => [ 'title' => '', 'description' => 'The reason why the SaaS domain name was taken offline. Valid values:'."\n" .'- **expiration_arrears**: the subscription plan expired or the account has an overdue payment.'."\n" .'- **internally_disabled**: disabled by the system.'."\n" .'- **missing_icp**: the domain name does not have an ICP filing.'."\n" .'- **content_violation**: content violation.'."\n" .'- **proactively_disabled**: proactively disabled by you or disabled because the usage cap you configured was reached.', 'enumValueTitles' => ['expiration_arrears' => 'The subscription plan expired or the account has an overdue payment.', 'proactively_disabled' => 'Proactively disabled by you or disabled because the usage cap was reached.', 'content_violation' => 'Content violation.', 'internally_disabled' => 'Disabled by the system.', 'missing_icp' => 'The domain name does not have an ICP filing.'], 'type' => 'string', 'enum' => ['proactively_disabled', 'content_violation', 'internally_disabled', 'missing_icp', 'expiration_arrears'], 'example' => 'missing_icp', ], 'ConflictWith' => [ 'title' => '', 'description' => 'The reason why the SaaS domain name is occupied. Valid values:'."\n" .'- **existing_custom_hostname**: conflicts with an existing SaaS domain name.'."\n" .'- **existing_site**: conflicts with an existing site.'."\n" .'- **existing_record**: conflicts with an existing site record.'."\n" .'- **existing_load_balancer**: conflicts with an existing load balancing instance.'."\n" .'- **existing_origin_pool**: conflicts with an existing origin IPAM pool.', 'enumValueTitles' => ['existing_load_balancer' => 'Conflicts with an existing load balancing instance.', 'existing_custom_hostname' => 'Conflicts with an existing SaaS domain name.', 'existing_site' => 'Conflicts with an existing site.', 'existing_record' => 'Conflicts with an existing site record.', 'existing_origin_pool' => 'Conflicts with an existing origin pool.'], 'type' => 'string', 'enum' => ['existing_custom_hostname', 'existing_site', 'existing_record', 'existing_load_balancer', 'existing_origin_pool'], 'example' => 'existing_custom_hostname', ], 'CreateTime' => ['title' => '', 'description' => 'The creation time of the SaaS domain name, in the ISO 8601 standard in UTC. Format: yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2026-04-19T11:15:20Z'], 'UpdateTime' => ['title' => '', 'description' => 'The update time of the SaaS domain name, in the ISO 8601 standard in UTC. Format: yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2026-04-19T11:15:20Z'], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ], 404 => [ ['errorCode' => 'CustomHostname.NotFound', 'errorMessage' => 'The custom hostname does not exist. Modify it and try again.', 'description' => 'The custom hostname does not exist. Modify it and try again.'], ['errorCode' => 'CustomHostname.ApplyCertFailed', 'errorMessage' => 'Fail to apply a free cert for custom hostname. Please try again later.', 'description' => ''], ['errorCode' => 'CustomHostname.SetCertFailed', 'errorMessage' => 'Fail to deploy a cert for custom hostname. Please try again later.', 'description' => ''], ], ], 'title' => 'Query saaS domain names', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListCustomHostnames'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListCustomHostnames', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 100,\\n \\"TotalCount\\": 10,\\n \\"Hostnames\\": [\\n {\\n \\"HostnameId\\": 1234567890123,\\n \\"Hostname\\": \\"custom.site.com\\",\\n \\"SiteId\\": 890601022130656,\\n \\"SiteName\\": \\"example.com\\",\\n \\"RecordId\\": 3386032455886912,\\n \\"RecordName\\": \\"origin.example.com\\",\\n \\"Status\\": \\"active\\",\\n \\"SslFlag\\": \\"on\\",\\n \\"CertType\\": \\"free\\",\\n \\"CertHttpKey\\": \\"http://custom.site.com/.well-known/acme-challenge/jLmMHlEaZ3jb352Qo3ciaSoAC8KZ5Hk0F-4_1xLQtgc\\",\\n \\"CertHttpValue\\": \\"jLmMHlEaZ3jb352Qo3ciaSoAC8KZ5Hk0F-4_1xLQtgc.GridYdfJJB5PgFEL-t89XfaFvMPB4f2-I9fwLpKl6e0\\",\\n \\"CertTxtKey\\": \\"\\\\t\\\\n_acme-challenge.custom.site.com\\\\n\\",\\n \\"CertTxtValue\\": \\"\\\\t\\\\nlcKYad3UQXgrZLvMm_6TBUYKK4xTkGmninV0Mzx4gjM\\\\n\\",\\n \\"VerifyHost\\": \\"_esa_custom_hostname.custom.site.com\\\\n\\",\\n \\"VerifyCode\\": \\"verify_16ab7f4d389d4dff6655f995c6a997bd\\\\n\\",\\n \\"CertStatus\\": \\"OK\\",\\n \\"CertNotAfter\\": \\"2026-04-19T11:15:20Z\\\\n\\",\\n \\"CertApplyMessage\\": \\"canceled\\",\\n \\"CertApplyCode\\": 2,\\n \\"OfflineReason\\": \\"missing_icp\\",\\n \\"ConflictWith\\": \\"existing_custom_hostname\\",\\n \\"CreateTime\\": \\"2026-04-19T11:15:20Z\\",\\n \\"UpdateTime\\": \\"2026-04-19T11:15:20Z\\"\\n }\\n ]\\n}","type":"json"}]', ], 'ListCustomResponseCodeRules' => [ 'summary' => 'Query the list of custom response code configurations for a site.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257649', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID, which can be obtained by calling the [ListSites](~~2850189~~) API.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '340035003106221', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'Configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '436490043994112', 'title' => ''], ], [ 'name' => 'ConfigType', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'Configuration type. You can use this parameter to query global or rule configurations. Valid values:'."\n" ."\n" .'- global: queries global configurations.'."\n" .'- rule: queries rule configurations.', 'enumValueTitles' => ['rule' => 'Rule configuration', 'global' => 'Global configuration'], 'type' => 'string', 'enum' => ['global', 'rule'], 'required' => false, 'example' => 'global', ], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'Rule name.', 'type' => 'string', 'required' => false, 'example' => 'rule_example'."\n"], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. For sites with configuration version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'Page number. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'Number of entries per page. Maximum value: 500. Default value: 500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'Request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'Configs' => [ 'description' => 'The list of custom response code configurations.', 'type' => 'array', 'items' => [ 'description' => 'The details of a custom response code configuration.', 'type' => 'object', 'properties' => [ 'ConfigId' => ['description' => 'Configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '395386449776640', 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the site configuration. For sites with configuration version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Sequence' => ['description' => 'The execution order of the rule. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Rule' => ['description' => 'The rule content, which uses conditional expressions to match user requests. You do not need to set this parameter when adding a global configuration. Two usage scenarios are supported:'."\n" .'- Match all incoming requests: set the value to true.'."\n" .'- Match specific requests: set the value to a custom expression, for example: (http.host eq \\"video.example.com\\").', 'type' => 'string', 'example' => '(http.host eq "video.example.com")', 'title' => ''], 'RuleEnable' => ['description' => 'The rule switch. You do not need to set this parameter when adding a global configuration. Valid values:'."\n" .'- on: enables the rule.'."\n" .'- off: disables the rule.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'RuleName' => ['description' => 'The rule name. You do not need to set this parameter when adding a global configuration.', 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'ConfigType' => ['description' => 'The configuration type. Valid values:'."\n" .'- global: global configuration.'."\n" .'- rule: rule configuration.', 'type' => 'string', 'example' => 'global', 'title' => ''], 'ReturnCode' => ['description' => 'The response code.', 'type' => 'string', 'example' => '200', 'title' => ''], 'PageId' => ['description' => 'The response page.', 'type' => 'string', 'example' => '0', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'Page number. Default value: **1**.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'Page size. Default value: 500. Valid values: 1 to 500.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'TotalCount' => ['description' => 'Total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'TotalPage' => ['description' => 'Total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ], ], 'title' => 'Query custom response code configuration list', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListCustomResponseCodeRules'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListCustomResponseCodeRules', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"Configs\\": [\\n {\\n \\"ConfigId\\": 395386449776640,\\n \\"SiteVersion\\": 0,\\n \\"Sequence\\": 1,\\n \\"Rule\\": \\"(http.host eq \\\\\\"video.example.com\\\\\\")\\",\\n \\"RuleEnable\\": \\"on\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"ConfigType\\": \\"global\\",\\n \\"ReturnCode\\": \\"200\\",\\n \\"PageId\\": \\"0\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"TotalCount\\": 10,\\n \\"TotalPage\\": 1\\n}","type":"json"}]', ], 'ListDDoSInstances' => [ 'summary' => 'Retrieves a list of purchased DDoS protection instances.', 'path' => '', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239352', 'abilityTreeNodes' => ['FEATUREdcdnZA9EPX'], 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'SortBy', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => [ 'description' => 'Sort field. Default: CreateTime.'."\n" ."\n" .'- **CreateTime**: Time when the instance was purchased.', 'enumValueTitles' => ['CreateTime' => 'CreateTime'], 'type' => 'string', 'enum' => ['CreateTime', 'default'], 'required' => false, 'example' => 'CreateTime', 'title' => '', ], ], [ 'name' => 'SortOrder', 'in' => 'query', 'schema' => [ 'description' => 'Sort order:'."\n" ."\n" .'- asc: ascending.'."\n" ."\n" .'- desc: descending.', 'type' => 'string', 'enum' => ['asc', 'desc'], 'title' => '', 'required' => false, 'example' => 'asc', ], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'Page number. Default: **1**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'Number of entries per page. Default: 20. Maximum: 500. Valid values: integers from 1 to 500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => [ 'description' => 'Instance status.', 'enumValueTitles' => ['offline' => 'offline', 'overdue' => 'overdue', 'disable' => 'disable', 'online' => 'online'], 'type' => 'string', 'enum' => ['online', 'overdue', 'disable'], 'required' => false, 'example' => 'online', 'title' => '', ], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'Instance ID.', 'type' => 'string', 'required' => false, 'example' => 'esa-ddos-b1e0l80ugfeo', 'title' => ''], ], [ 'name' => 'SiteInstanceId', 'in' => 'query', 'schema' => ['description' => 'Associated site package instance ID.', 'type' => 'string', 'required' => false, 'example' => 'esa-site-a71k7bw1adf', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'Request ID', 'type' => 'string', 'title' => '', 'example' => '9F1DC265-BF10-5C9C-B607-760265C5F365'], 'InstanceInfo' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'InstanceId' => ['description' => 'Instance ID', 'type' => 'string', 'example' => 'sp-ddddxxxxx', 'title' => ''], 'CreateTime' => ['description' => 'Time when the instance was purchased', 'type' => 'string', 'example' => '2025-07-01T07:59:07Z', 'title' => ''], 'Status' => ['description' => 'Instance status. Valid values:'."\n" ."\n" .'- **online**: Normal service status.'."\n" ."\n" .'- **offline**: Expired but not overdue. Instance is unavailable.'."\n" ."\n" .'- **disable**: Released.'."\n" ."\n" .'- **overdue**: Service suspended due to overdue payment.', 'type' => 'string', 'example' => 'online', 'title' => ''], 'DDoSBurstableDomesticProtection' => ['description' => 'DDoS protection specification for the Chinese mainland', 'type' => 'string', 'example' => 'cn_300', 'title' => ''], 'DDoSBurstableOverseasProtection' => ['description' => 'DDoS protection specification for regions outside the Chinese mainland', 'type' => 'string', 'example' => 'overseas_300', 'title' => ''], 'SiteInstanceId' => ['description' => 'Associated site package instance ID', 'type' => 'string', 'example' => 'esa-site-b0s6kmx0r0n4', 'title' => ''], 'ReserveReleaseTime' => ['description' => 'Scheduled release time', 'type' => 'string', 'example' => '2026-03-25T16:00:00Z', 'title' => ''], ], 'description' => 'Instance details', 'title' => '', 'example' => '', ], 'description' => 'Instance details', 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'Page number. Default: **1**.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'Number of entries per page', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'TotalCount' => ['description' => 'Total number of entries', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], 'TotalPage' => ['description' => 'Total number of pages', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], ], 'title' => '', 'description' => 'Response schema', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'ListDDoSInstances', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListDDoSInstances'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:ListDDoSInstances', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9F1DC265-BF10-5C9C-B607-760265C5F365\\",\\n \\"InstanceInfo\\": [\\n {\\n \\"InstanceId\\": \\"sp-ddddxxxxx\\",\\n \\"CreateTime\\": \\"2025-07-01T07:59:07Z\\",\\n \\"Status\\": \\"online\\",\\n \\"DDoSBurstableDomesticProtection\\": \\"cn_300\\",\\n \\"DDoSBurstableOverseasProtection\\": \\"overseas_300\\",\\n \\"SiteInstanceId\\": \\"esa-site-b0s6kmx0r0n4\\",\\n \\"ReserveReleaseTime\\": \\"2026-03-25T16:00:00Z\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"TotalCount\\": 100,\\n \\"TotalPage\\": 2\\n}","type":"json"}]', ], 'ListESAIPInfo' => [ 'summary' => 'Batch query whether the IP address is included in the ESA resolution result.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '243691', 'abilityTreeNodes' => ['FEATUREdcdnWQK30N'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'VipInfo', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'You can enter IPv4 or IPv6 addresses. Separate multiple IP addresses with commas (,). You can enter up to 20 IP addresses at a time.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => '192.0.0.24,2408:8740:41FF:2:23::7FE,0.0.0.0,abcd'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.'."\n" ."\n" .'Example D03F9502-6653-127C-8A5F-0647197\\*\\*\\*\\*\\*', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225', 'title' => ''], 'Content' => [ 'description' => 'The objects that are returned.', 'type' => 'array', 'items' => [ 'description' => 'The returned result.', 'type' => 'object', 'properties' => [ 'Ip' => ['description' => 'The IP addresses.', 'type' => 'string', 'example' => '27.129.167.239', 'title' => ''], 'CdnIp' => ['description' => 'Whether the IP address in the parameter belongs to ESA POPs.'."\n" ."\n" .'- **true**'."\n" ."\n" .'- **false**', 'type' => 'string', 'example' => 'true', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'ListESAIPInfo', 'description' => 'Checks whether vs\\_addr values in the vipInfo collection are VIPs.', 'requestParamsDescription' => 'This parameter is required and cannot be empty.', 'responseParamsDescription' => 'Ip is the vs\\_addr address in vipInfo. CdnIp is the check result.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListESAIPInfo'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:ListESAIPInfo', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"Content\\": [\\n {\\n \\"Ip\\": \\"27.129.167.239\\",\\n \\"CdnIp\\": \\"true\\"\\n }\\n ]\\n}","type":"json"}]', ], 'ListEdgeContainerAppImageSecrets' => [ 'summary' => 'Retrieves the list of image secrets for an edge container application.', 'path' => '', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', 'schema' => ['description' => 'The application ID. You can call the [ListEdgeContainerApps](~~ListEdgeContainerApps~~) operation to obtain the application ID.'."\n" .'>The AppId format is the prefix app- followed by a numeric suffix, with a total length of 20 to 64 characters (example: app-8806886***83794688). Call ListEdgeContainerApps to obtain an existing AppId, or call CreateEdgeContainerApp to create an application first..', 'type' => 'string', 'required' => true, 'example' => 'app-88068867578379****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '3558df77-8a7a-4060-a900-2d7949403836'], 'ImageSecretList' => [ 'description' => 'The list of image secrets.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the image secret.', 'type' => 'string', 'example' => 'reg-123****', 'title' => ''], 'Registry' => ['description' => 'The image repository address.', 'type' => 'string', 'example' => 'registry-vpc.cn-hangzhou.aliyuncs.com', 'title' => ''], 'Username' => ['description' => 'The username of the image repository.', 'type' => 'string', 'example' => 'admin', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Invalid parameter. Check the parameter configuration.', 'description' => 'Invalid parameter. Check the parameter configuration.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'InvalidParameter.Appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the input application ID is incorrect. You can use the ListEdgeContainerApps API to obtain the application ID.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Retrieve image secret list for edge container application', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListEdgeContainerAppImageSecrets'], ], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3558df77-8a7a-4060-a900-2d7949403836\\",\\n \\"ImageSecretList\\": [\\n {\\n \\"Name\\": \\"reg-123****\\",\\n \\"Registry\\": \\"registry-vpc.cn-hangzhou.aliyuncs.com\\",\\n \\"Username\\": \\"admin\\"\\n }\\n ]\\n}","type":"json"}]', ], 'ListEdgeContainerAppRecords' => [ 'summary' => 'Lists domain names that are associated with a containerized application.', 'methods' => ['get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239590', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', 'schema' => ['description' => 'The application ID, which can be obtained by calling the [ListEdgeContainerApps](~~ListEdgeContainerApps~~) operation.'."\n", 'type' => 'string', 'required' => true, 'example' => 'app-88068867578379****', 'maxLength' => 64, 'minLength' => 20, 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. Valid values: **1** to **100000**. Default value: 1.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Default value: 20. Valid values: 1 to 500.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'OrderKey', 'in' => 'query', 'schema' => ['description' => 'The sorting field. Valid values:'."\n" ."\n" .'* CreateTime: the time when the domain name was associated.'."\n" .'* CreateTime: the time when the domain name was last modified.'."\n", 'type' => 'string', 'required' => false, 'example' => 'CreateTime', 'default' => 'CreateTime', 'title' => ''], ], [ 'name' => 'OrderType', 'in' => 'query', 'schema' => ['description' => 'The order in which you want to sort the query results. Valid values:'."\n" ."\n" .'* ASC: in ascending order.'."\n" .'* DESC: in descending order.'."\n", 'type' => 'string', 'required' => false, 'example' => 'DESC', 'default' => 'Desc', 'title' => ''], ], [ 'name' => 'SearchKey', 'in' => 'query', 'schema' => ['description' => 'The keyword that is used for the search.'."\n", 'type' => 'string', 'required' => false, 'example' => 'ver-1006157458290860032', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-A198-72F8FD6DA2FE', 'title' => ''], 'PageNumber' => ['description' => 'The page number.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'TotalCount' => ['description' => 'The number of domain names that are associated with the specified application.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'Records' => [ 'description' => 'The details about the associated domain names.'."\n", 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'AppId' => ['description' => 'The application ID.'."\n", 'type' => 'string', 'example' => 'app-88068867578379****', 'title' => ''], 'Cname' => ['description' => 'The CNAME of the associated domain name.'."\n", 'type' => 'string', 'example' => 'kdxceo****.yun****.com', 'title' => ''], 'ConfigId' => ['description' => 'The configuration ID of the associated domain name.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '27522948436****', 'title' => ''], 'CreateTime' => ['description' => 'The time when the domain name was added. The time follows the ISO 8601 standard in the YYYY-MM-DDThh:mm:ss format. The time is displayed in UTC.'."\n", 'type' => 'string', 'example' => '2023-12-24T02:01:11Z', 'title' => ''], 'RecordId' => ['description' => 'The record ID of the associated domain name.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '266****', 'title' => ''], 'RecordName' => ['description' => 'The associated domain name.'."\n", 'type' => 'string', 'example' => 'a.example.com', 'title' => ''], 'UpdateTime' => ['description' => 'The time when the scheduling domain ID or CNAME was last modified. The time follows the ISO 8601 standard in the YYYY-MM-DDThh:mm:ss format. The time is displayed in UTC.'."\n", 'type' => 'string', 'example' => '2021-12-22T08:32:02Z', 'title' => ''], 'SchemdId' => ['description' => 'The scheduling domain ID of the associated domain name.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '123456', 'title' => ''], 'SiteId' => ['description' => 'The website ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '5407498413****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidParameter.appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-A198-72F8FD6DA2FE\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 2,\\n \\"Records\\": [\\n {\\n \\"AppId\\": \\"app-88068867578379****\\",\\n \\"Cname\\": \\"kdxceo****.yun****.com\\",\\n \\"ConfigId\\": 0,\\n \\"CreateTime\\": \\"2023-12-24T02:01:11Z\\",\\n \\"RecordId\\": 0,\\n \\"RecordName\\": \\"a.example.com\\",\\n \\"UpdateTime\\": \\"2021-12-22T08:32:02Z\\",\\n \\"SchemdId\\": 123456,\\n \\"SiteId\\": 0\\n }\\n ]\\n}","type":"json"}]', 'title' => 'ListEdgeContainerAppRecords', 'changeSet' => [ ['createdAt' => '2024-09-18T06:56:38.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListEdgeContainerAppRecords'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:ListEdgeContainerAppRecords', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ListEdgeContainerAppVersions' => [ 'summary' => 'Lists versions of all containerized applications.', 'methods' => ['get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239225', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', 'schema' => ['description' => 'The application ID, which can be obtained by calling the [ListEdgeContainerApps](~~ListEdgeContainerApps~~) operation.'."\n", 'type' => 'string', 'required' => true, 'example' => 'app-88068867578379****', 'maxLength' => 64, 'minLength' => 20, 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. Valid values: 1 to 65535.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Valid values: 1 to 100.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'OrderKey', 'in' => 'query', 'schema' => ['description' => 'The sorting field. Valid values:'."\n" ."\n" .'* Name: the version name.'."\n" .'* CreateTime: the time when the version was created.'."\n" .'* UpdateTime: the time when the version was last modified.'."\n", 'type' => 'string', 'required' => false, 'example' => 'Name', 'default' => 'CreateTime', 'title' => ''], ], [ 'name' => 'OrderType', 'in' => 'query', 'schema' => ['description' => 'The order in which you want to sort the query results. Valid values:'."\n" ."\n" .'* ASC: in ascending order.'."\n" .'* DESC: in descending order.'."\n", 'type' => 'string', 'required' => false, 'example' => 'Desc', 'default' => 'Desc', 'title' => ''], ], [ 'name' => 'SearchType', 'in' => 'query', 'schema' => ['description' => 'The parameter used for fuzzy search. Valid values: VersionId and Name.'."\n", 'type' => 'string', 'required' => false, 'example' => 'VersionId', 'title' => ''], ], [ 'name' => 'SearchKey', 'in' => 'query', 'schema' => ['description' => 'The keyword used for the search.'."\n", 'type' => 'string', 'required' => false, 'example' => 'ver-100568263967926****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'F61CDR30-E83C-4FDA-BF73-9A94CDD44229', 'title' => ''], 'PageNumber' => ['description' => 'The page number.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'Versions' => [ 'description' => 'The versions.'."\n", 'type' => 'array', 'items' => [ 'description' => 'The details of the version.'."\n", 'type' => 'object', 'properties' => [ 'LastPublishTime' => ['description' => 'The time when the version was last released. The time follows the ISO 8601 standard in the YYYY-MM-DDThh:mm:ss format. The time is displayed in UTC.'."\n", 'type' => 'string', 'example' => '2023-02-10T02:48:36Z'."\n", 'title' => ''], 'PublishTime' => ['description' => 'The time when the version was released. The time follows the ISO 8601 standard in the YYYY-MM-DDThh:mm:ss format. The time is displayed in UTC.'."\n", 'type' => 'string', 'example' => '2023-02-10T02:48:36Z', 'title' => ''], 'Status' => ['description' => 'The status of the current version. Valid values:'."\n" ."\n" .'* **created**'."\n" .'* **failed**'."\n" .'* **creating**'."\n", 'type' => 'string', 'example' => 'created', 'title' => ''], 'CreateTime' => ['description' => 'The time when the version was created. The time follows the ISO 8601 standard in the YYYY-MM-DDThh:mm:ss format. The time is displayed in UTC.'."\n", 'type' => 'string', 'example' => '2022-11-10T02:53:16Z', 'title' => ''], 'AppId' => ['description' => 'The application ID.'."\n", 'type' => 'string', 'example' => 'app-88068867578379****', 'title' => ''], 'VersionId' => ['description' => 'The version ID.'."\n", 'type' => 'string', 'example' => 'ver-87962637161651****', 'title' => ''], 'Name' => ['description' => 'The version name.'."\n", 'type' => 'string', 'example' => 'version01', 'title' => ''], 'UpdateTime' => ['description' => 'The time when the version was last modified. The time follows the ISO 8601 standard in the YYYY-MM-DDThh:mm:ss format. The time is displayed in UTC.'."\n", 'type' => 'string', 'example' => '2023-04-16 10:51:00', 'title' => ''], 'Remarks' => ['description' => 'The remarks.'."\n", 'type' => 'string', 'example' => 'test version', 'title' => ''], 'Containers' => [ 'description' => 'The containers in the version.'."\n", 'type' => 'array', 'items' => [ 'description' => 'The container in the version.'."\n", 'type' => 'object', 'properties' => [ 'EnvVariables' => ['description' => 'The environment variables of the container.'."\n", 'type' => 'string', 'example' => 'ENV=prod', 'title' => ''], 'Args' => ['description' => 'The arguments that are passed to the container startup command.'."\n", 'type' => 'string', 'example' => '-c a=1', 'title' => ''], 'Spec' => ['description' => 'The compute specification of the container.'."\n", 'type' => 'string', 'example' => '1C2G', 'title' => ''], 'Image' => ['description' => 'The address of the container image.'."\n", 'type' => 'string', 'example' => 'nginx', 'title' => ''], 'Command' => ['description' => 'The command that is used to start the container.'."\n", 'type' => 'string', 'example' => 'openresty -g \\"daemon off;\\"', 'title' => ''], 'ProbeType' => ['description' => 'The probe type of the container.'."\n", 'type' => 'string', 'example' => 'httpGet', 'title' => ''], 'Name' => ['description' => 'The container name.'."\n", 'type' => 'string', 'example' => 'container1', 'title' => ''], 'PreStop' => ['description' => 'The command that is run before the container is stopped.'."\n", 'type' => 'string', 'example' => 'sh prestop.sh "echo hello world" ', 'title' => ''], 'PostStart' => ['description' => 'The command that is run before the container is started. Format: `{"exec":{"command":\\["cat","/etc/group"\\]}}`.'."\n" ."\n" .'If you want to cancel this configuration, set the parameter value to `""` or `{}`. If you do not specify this parameter, this configuration is ignored.'."\n", 'type' => 'string', 'example' => 'sh poststart.sh "echo hello world" ', 'title' => ''], 'ProbeContent' => [ 'description' => 'The container probe content.'."\n", 'type' => 'object', 'properties' => [ 'SuccessThreshold' => ['description' => 'The number of consecutive successful health checks required for a container to be considered as healthy.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Host' => ['description' => 'The domain name that is used for health checks.'."\n", 'type' => 'string', 'example' => 'test.com', 'title' => ''], 'HttpHeaders' => ['description' => 'The request headers that are included in the container health check request.'."\n", 'type' => 'string', 'example' => '{\\"Content-Type\\":\\"application/json\\"}', 'title' => ''], 'Scheme' => ['description' => 'The protocol that the container health check request uses.'."\n", 'type' => 'string', 'example' => 'http', 'title' => ''], 'InitialDelaySeconds' => ['description' => 'The latency for container probe initialization.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'Command' => ['description' => 'The probe command.'."\n", 'type' => 'string', 'example' => 'openresty -g "daemon off;', 'title' => ''], 'FailureThreshold' => ['description' => 'The number of consecutive failed health checks required for a container to be considered as unhealthy.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''], 'TimeoutSeconds' => ['description' => 'The timeout period of the container health check.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '30', 'title' => ''], 'Path' => ['description' => 'The path of the container health check.'."\n", 'type' => 'string', 'example' => '/health_check', 'title' => ''], 'Port' => ['description' => 'The port of the container health check.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '80', 'title' => ''], 'PeriodSeconds' => ['description' => 'The interval between container health checks.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'required' => false, 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.OrderType', 'errorMessage' => 'The specified OrderType is invalid. Please check the OrderType parameter. You may not have set it to either Asc or Desc. Please make the necessary changes and call the interface again.', 'description' => 'The OrderType parameter is invalid. Please check the OrderType parameter. You may not have set it to Asc or Desc. Please modify it and call the interface again.'], ['errorCode' => 'InvalidParameter.OrderKey', 'errorMessage' => 'The specified OrderKey is invalid. Please check the OrderKey parameter.', 'description' => 'The OrderKey parameter is invalid. Please check the OrderKey parameter, as it cannot be assigned illegal characters such as @, #, % etc. Please make the necessary modifications and call the interface again.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Invalid parameter. Check the parameter configuration.', 'description' => 'Invalid parameter. Check the parameter configuration.'], ['errorCode' => 'InvalidParameter.appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.'], ['errorCode' => 'InvalidPageSize.ValueNotSupported', 'errorMessage' => 'The PageSize value is invalid. The default value is set to 20. The acceptable range is between 1 and 500.', 'description' => 'The request PageSize value is invalid. The default value is 20 and the value range is 1-500.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F61CDR30-E83C-4FDA-BF73-9A94CDD44229\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 20,\\n \\"Versions\\": [\\n {\\n \\"LastPublishTime\\": \\"2023-02-10T02:48:36Z\\\\n\\",\\n \\"PublishTime\\": \\"2023-02-10T02:48:36Z\\",\\n \\"Status\\": \\"created\\",\\n \\"CreateTime\\": \\"2022-11-10T02:53:16Z\\",\\n \\"AppId\\": \\"app-88068867578379****\\",\\n \\"VersionId\\": \\"ver-87962637161651****\\",\\n \\"Name\\": \\"version01\\",\\n \\"UpdateTime\\": \\"2023-04-16 10:51:00\\",\\n \\"Remarks\\": \\"test version\\",\\n \\"Containers\\": [\\n {\\n \\"EnvVariables\\": \\"ENV=prod\\",\\n \\"Args\\": \\"-c a=1\\",\\n \\"Spec\\": \\"1C2G\\",\\n \\"Image\\": \\"nginx\\",\\n \\"Command\\": \\"openresty -g \\\\\\\\\\\\\\"daemon off;\\\\\\\\\\\\\\"\\",\\n \\"ProbeType\\": \\"httpGet\\",\\n \\"Name\\": \\"container1\\",\\n \\"PreStop\\": \\"sh prestop.sh \\\\\\"echo hello world\\\\\\" \\",\\n \\"PostStart\\": \\"sh poststart.sh \\\\\\"echo hello world\\\\\\" \\",\\n \\"ProbeContent\\": {\\n \\"SuccessThreshold\\": 1,\\n \\"Host\\": \\"test.com\\",\\n \\"HttpHeaders\\": \\"{\\\\\\\\\\\\\\"Content-Type\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"application/json\\\\\\\\\\\\\\"}\\",\\n \\"Scheme\\": \\"http\\",\\n \\"InitialDelaySeconds\\": 10,\\n \\"Command\\": \\"openresty -g \\\\\\"daemon off;\\",\\n \\"FailureThreshold\\": 3,\\n \\"TimeoutSeconds\\": 30,\\n \\"Path\\": \\"/health_check\\",\\n \\"Port\\": 80,\\n \\"PeriodSeconds\\": 5\\n }\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', 'title' => 'ListEdgeContainerAppVersions', 'changeSet' => [ ['createdAt' => '2024-11-12T02:06:26.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListEdgeContainerAppVersions'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:ListEdgeContainerAppVersions', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ListEdgeContainerApps' => [ 'summary' => 'Queries all containerized applications in your Alibaba Cloud account.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239248', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. Default value: **1**. Valid values: 1 to 65535.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Default value: **20**. Valid values: 1 to 500.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20', 'title' => ''], ], [ 'name' => 'OrderKey', 'in' => 'query', 'schema' => ['description' => 'The sorting field. This parameter is left empty by default. Valid values:'."\n" ."\n" .'* Name: the version name.'."\n" .'* CreateTime: the time when the version was created.'."\n" .'* UpdateTime: the time when the version was last modified.'."\n", 'type' => 'string', 'required' => false, 'example' => 'CreateTime', 'default' => 'CreateTime', 'title' => ''], ], [ 'name' => 'OrderType', 'in' => 'query', 'schema' => ['description' => 'The order in which you want to sort the query results. This parameter is left empty by default. Valid values:'."\n" ."\n" .'* ASC: in ascending order.'."\n" .'* DESC: in descending order.'."\n", 'type' => 'string', 'required' => false, 'example' => 'Asc'."\n", 'default' => 'Desc', 'title' => ''], ], [ 'name' => 'SearchType', 'in' => 'query', 'schema' => ['description' => 'The search criterion based on which you want to perform fuzzy search. Valid values:'."\n" ."\n" .'* Appid: the application ID.'."\n" .'* Name: the application name.'."\n", 'type' => 'string', 'required' => false, 'example' => 'AppId', 'title' => ''], ], [ 'name' => 'SearchKey', 'in' => 'query', 'schema' => ['description' => 'The search keyword.'."\n", 'type' => 'string', 'required' => false, 'example' => 'ver-1005682639679266816', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '2430E05E-1340-5773-B5E1-B743929F46F2', 'title' => ''], 'PageNumber' => ['description' => 'The page number. Default value: **1**. Valid values: 1 to 65535.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page. Valid values: 1 to 500.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'Apps' => [ 'description' => 'The queried applications.'."\n", 'type' => 'array', 'items' => [ 'description' => 'The queried application.'."\n", 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status of the application. Valid values:'."\n" ."\n" .'* creating: The application is being created.'."\n" .'* failed: The application failed to be created.'."\n" .'* created: The application is created.'."\n", 'type' => 'string', 'example' => 'created', 'title' => ''], 'GatewayType' => ['description' => 'The type of the gateway. Valid values:'."\n" ."\n" .'* l7: Layer 7 gateway.'."\n" .'* l4: Layer 4 gateway.'."\n", 'type' => 'string', 'example' => 'l7', 'title' => ''], 'CreateTime' => ['description' => 'The time when the version was created.'."\n", 'type' => 'string', 'example' => '2022-12-01T16:16:27.418298794+08:00', 'title' => ''], 'VersionCount' => ['description' => 'The number of versions of the application.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'DomainName' => ['description' => 'The domain name associated with the application.'."\n", 'type' => 'string', 'example' => 'test.com', 'title' => ''], 'Remarks' => ['description' => 'The remarks.'."\n", 'type' => 'string', 'example' => 'test app', 'title' => ''], 'ServicePort' => ['description' => 'The server port. Valid values: 1 to 65535.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '80', 'title' => ''], 'AppId' => ['description' => 'The application ID.'."\n", 'type' => 'string', 'example' => 'app-88068867578379****', 'title' => ''], 'TargetPort' => ['description' => 'The backend port, which is also the service port of the application. Valid values: 1 to 65535.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '80', 'title' => ''], 'QuicCid' => ['description' => 'Indicates whether QUIC is enabled.'."\n", 'type' => 'string', 'example' => 'false', 'title' => ''], 'Name' => ['description' => 'The application name.'."\n", 'type' => 'string', 'example' => 'app-test', 'title' => ''], 'UpdateTime' => ['description' => 'The time when the application was last modified. The time follows the ISO 8601 standard in the YYYY-MM-DDThh:mm:ss format. The time is displayed in UTC.'."\n", 'type' => 'string', 'example' => '2023-11-15T12:11:02Z', 'title' => ''], 'HealthCheck' => [ 'description' => 'The information about health checks.'."\n", 'type' => 'object', 'properties' => [ 'Timeout' => ['description' => 'The timeout period of health checks. Unit: seconds.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '60', 'title' => ''], 'Type' => ['description' => 'The type of health checks. Valid values:'."\n" ."\n" .'* l7'."\n" .'* l4'."\n", 'type' => 'string', 'example' => 'l7', 'title' => ''], 'Host' => ['description' => 'The domain name that is used for health checks.'."\n", 'type' => 'string', 'example' => 'test.com', 'title' => ''], 'Interval' => ['description' => 'The interval between health checks. Unit: seconds.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], 'SuccTimes' => ['description' => 'The number of consecutive successful health checks for an application to be considered healthy.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Method' => ['description' => 'The HTTP method used for health checks.'."\n", 'type' => 'string', 'example' => 'GET', 'title' => ''], 'HttpCode' => ['description' => 'The range of health check status codes that indicate successful health checks.'."\n", 'type' => 'string', 'example' => 'http_2XX', 'title' => ''], 'FailTimes' => ['description' => 'The number of consecutive failed health checks for an application to be considered unhealthy.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], 'Port' => ['description' => 'The health check port.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '8080', 'title' => ''], 'Uri' => ['description' => 'The health check URL.'."\n", 'type' => 'string', 'example' => '/health_check', 'title' => ''], ], 'title' => '', 'example' => '', ], 'Percentage' => ['description' => 'The progress of the application creation task in percentage.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.OrderType', 'errorMessage' => 'The specified OrderType is invalid. Please check the OrderType parameter. You may not have set it to either Asc or Desc. Please make the necessary changes and call the interface again.', 'description' => 'The OrderType parameter is invalid. Please check the OrderType parameter. You may not have set it to Asc or Desc. Please modify it and call the interface again.'], ['errorCode' => 'InvalidParameter.OrderKey', 'errorMessage' => 'The specified OrderKey is invalid. Please check the OrderKey parameter.', 'description' => 'The OrderKey parameter is invalid. Please check the OrderKey parameter, as it cannot be assigned illegal characters such as @, #, % etc. Please make the necessary modifications and call the interface again.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Invalid parameter. Check the parameter configuration.', 'description' => 'Invalid parameter. Check the parameter configuration.'], ['errorCode' => 'InvalidParameter.PageNumber', 'errorMessage' => 'Failed to verify parameter PageNumber.Check whether the parameter exists and is set to a positive integer.', 'description' => 'Failed to verify parameter PageNumber.Check whether the parameter exists and is set to a positive integer.'], ['errorCode' => 'InvalidParameter.appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.'], ['errorCode' => 'InvalidPageSize.ValueNotSupported', 'errorMessage' => 'The PageSize value is invalid. The default value is set to 20. The acceptable range is between 1 and 500.', 'description' => 'The request PageSize value is invalid. The default value is 20 and the value range is 1-500.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2430E05E-1340-5773-B5E1-B743929F46F2\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 10,\\n \\"Apps\\": [\\n {\\n \\"Status\\": \\"created\\",\\n \\"GatewayType\\": \\"l7\\",\\n \\"CreateTime\\": \\"2022-12-01T16:16:27.418298794+08:00\\",\\n \\"VersionCount\\": 10,\\n \\"DomainName\\": \\"test.com\\",\\n \\"Remarks\\": \\"test app\\",\\n \\"ServicePort\\": 80,\\n \\"AppId\\": \\"app-88068867578379****\\",\\n \\"TargetPort\\": 80,\\n \\"QuicCid\\": \\"false\\",\\n \\"Name\\": \\"app-test\\",\\n \\"UpdateTime\\": \\"2023-11-15T12:11:02Z\\",\\n \\"HealthCheck\\": {\\n \\"Timeout\\": 60,\\n \\"Type\\": \\"l7\\",\\n \\"Host\\": \\"test.com\\",\\n \\"Interval\\": 5,\\n \\"SuccTimes\\": 1,\\n \\"Method\\": \\"GET\\",\\n \\"HttpCode\\": \\"http_2XX\\",\\n \\"FailTimes\\": 5,\\n \\"Port\\": 8080,\\n \\"Uri\\": \\"/health_check\\"\\n },\\n \\"Percentage\\": 100\\n }\\n ]\\n}","type":"json"}]', 'title' => 'ListEdgeContainerApps', 'changeSet' => [ ['createdAt' => '2024-10-15T03:49:16.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListEdgeContainerApps'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:ListEdgeContainerApps', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ListEdgeContainerRecords' => [ 'summary' => 'Queries the records that are associated with Edge Container for a website.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239659', 'abilityTreeNodes' => ['FEATUREdcdnVFT29S'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID. You can call the [ListSites](~~2850189~~) operation to obtain the ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'RecordName', 'in' => 'query', 'schema' => ['description' => 'The record name.'."\n", 'type' => 'string', 'required' => false, 'example' => 'a.example.com', 'title' => ''], ], [ 'name' => 'RecordMatchType', 'in' => 'query', 'schema' => ['description' => 'The match mode to filter the record names:'."\n" ."\n" .'* **fuzzy**'."\n" .'* **prefix**'."\n" .'* **suffix**'."\n" .'* **exact** (default)'."\n", 'type' => 'string', 'required' => false, 'example' => 'fuzzy', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. Default value: **1**.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Default value: **500**.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Id of the request'."\n", 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F'."\n"], 'PageNumber' => ['description' => 'The page number.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'TotalCount' => ['description' => 'The total number of records returned.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '50', 'title' => ''], 'Records' => [ 'description' => 'The records.'."\n", 'type' => 'array', 'items' => [ 'description' => 'The queried record.'."\n", 'type' => 'object', 'properties' => [ 'CreateTime' => ['description' => 'The time when the record was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", 'type' => 'string', 'example' => '2023-12-24T02:01:11Z', 'title' => ''], 'UpdateTime' => ['description' => 'The time when the record was updated. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.'."\n", 'type' => 'string', 'example' => '2021-12-22T08:32:02Z', 'title' => ''], 'RecordName' => ['description' => 'The record name.'."\n", 'type' => 'string', 'example' => 'a.example.com', 'title' => ''], 'RecordCname' => ['description' => 'The CNAME. If you use CNAME setup when you add your website to ESA, the value is the CNAME that you configured.'."\n", 'type' => 'string', 'example' => 'a.example.com.cnamezone.com', 'title' => ''], 'SiteId' => ['description' => 'The website ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123', 'title' => ''], 'SiteName' => ['description' => 'The website name.'."\n", 'type' => 'string', 'example' => 'example.com', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\\\n\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"TotalCount\\": 50,\\n \\"Records\\": [\\n {\\n \\"CreateTime\\": \\"2023-12-24T02:01:11Z\\",\\n \\"UpdateTime\\": \\"2021-12-22T08:32:02Z\\",\\n \\"RecordName\\": \\"a.example.com\\",\\n \\"RecordCname\\": \\"a.example.com.cnamezone.com\\",\\n \\"SiteId\\": 1234567890123,\\n \\"SiteName\\": \\"example.com\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'ListEdgeContainerRecords', 'changeSet' => [ ['createdAt' => '2024-09-18T06:56:37.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListEdgeContainerRecords'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:ListEdgeContainerRecords', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'ListEdgeRoutinePlans' => [ 'summary' => 'Queries Edge Routine plans.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238723', 'abilityTreeNodes' => ['FEATUREdcdnZA9EPX'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9'], 'PlanInfo' => [ 'description' => 'The plans.'."\n", 'type' => 'array', 'items' => [ 'description' => 'The details of the plan.'."\n", 'type' => 'object', 'properties' => [ 'PlanName' => ['description' => 'The plan name.'."\n", 'type' => 'string', 'example' => 'test_plan', 'title' => ''], 'ErRoutineQuota' => ['description' => 'The maximum of routines that can be created.'."\n", 'type' => 'string', 'example' => '100', 'title' => ''], 'ErRoutineCodeVersionQuota' => ['description' => 'The maximum number of versions that each routine supports.'."\n", 'type' => 'string', 'example' => '20', 'title' => ''], 'ErRoutineRouteSiteCountQuota' => ['description' => 'The maximum number of websites with which each routine can be associated.'."\n", 'type' => 'string', 'example' => '100', 'title' => ''], 'BillingMode' => ['description' => 'The billing method. Valid values:'."\n" ."\n" .'* PREPAY: subscription.'."\n" .'* POSTPAY: pay-as-you-go.'."\n", 'type' => 'string', 'example' => 'POSTPAY', 'title' => ''], 'PaymentMethod' => ['description' => 'The payment method. Valid values:'."\n" ."\n" .'* er_free'."\n" .'* er_pay'."\n", 'type' => 'string', 'example' => 'er_free', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The page number. Default value: 1.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page. Valid values: 1 to 500.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries returned.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '12', 'title' => ''], 'TotalPage' => ['description' => 'The total number of pages returned.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"PlanInfo\\": [\\n {\\n \\"PlanName\\": \\"test_plan\\",\\n \\"ErRoutineQuota\\": \\"100\\",\\n \\"ErRoutineCodeVersionQuota\\": \\"20\\",\\n \\"ErRoutineRouteSiteCountQuota\\": \\"100\\",\\n \\"BillingMode\\": \\"POSTPAY\\",\\n \\"PaymentMethod\\": \\"er_free\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"TotalCount\\": 12,\\n \\"TotalPage\\": 1\\n}","type":"json"}]', 'title' => 'ListEdgeRoutinePlans', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListEdgeRoutinePlans'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListEdgeRoutinePlans', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ListEdgeRoutineRecords' => [ 'summary' => 'Queries the list of edge routing records for a site.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239603', 'abilityTreeNodes' => ['FEATUREdcdnVFT29S'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'RecordName', 'in' => 'query', 'schema' => ['description' => 'Filters by the specified record name.', 'type' => 'string', 'required' => false, 'example' => 'a.example.com', 'title' => ''], ], [ 'name' => 'RecordMatchType', 'in' => 'query', 'schema' => ['description' => 'The matching mode used to filter by record name. Valid values:'."\n" .'- **fuzzy**: fuzzy match.'."\n" .'- **prefix**: prefix match.'."\n" .'- **suffix**: suffix match.'."\n" .'- **exact**: exact match (default).', 'type' => 'string', 'required' => false, 'example' => 'fuzzy', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number for a paged query. The value must be greater than or equal to 1. Default value: **1**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of records per page for a paged query. Valid values: 1 to 500. Default value: **500**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F'], 'PageNumber' => ['description' => 'The current page number, which is the same as the PageNumber request parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of records displayed per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'TotalCount' => ['description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int32', 'example' => '121', 'title' => ''], 'Records' => [ 'description' => 'The list of records.', 'type' => 'array', 'items' => [ 'description' => 'The information about a single record.', 'type' => 'object', 'properties' => [ 'CreateTime' => ['description' => 'The creation time of the record. The time is in ISO 8601 format and displayed in UTC. Format: yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2023-12-24T02:01:11Z', 'title' => ''], 'UpdateTime' => ['description' => 'The update time of the record. The time is in ISO 8601 format and displayed in UTC. Format: yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2023-12-22T08:32:02Z', 'title' => ''], 'RecordName' => ['description' => 'The record name.', 'type' => 'string', 'example' => 'a.example.com', 'title' => ''], 'RecordCname' => ['description' => 'The CNAME of the record. When the site uses CNAME access, this is the CNAME value that needs to be configured for the record.', 'type' => 'string', 'example' => 'a.example.com.cnamezone.com', 'title' => ''], 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '5407498413****', 'title' => ''], 'SiteName' => ['description' => 'The name of the site to which the record belongs.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 121,\\n \\"Records\\": [\\n {\\n \\"CreateTime\\": \\"2023-12-24T02:01:11Z\\",\\n \\"UpdateTime\\": \\"2023-12-22T08:32:02Z\\",\\n \\"RecordName\\": \\"a.example.com\\",\\n \\"RecordCname\\": \\"a.example.com.cnamezone.com\\",\\n \\"SiteId\\": 0,\\n \\"SiteName\\": \\"example.com\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Query edge routing records', 'description' => '> API call frequency: 100 calls per second.', 'changeSet' => [ ['createdAt' => '2024-09-18T06:56:37.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListEdgeRoutineRecords'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:ListEdgeRoutineRecords', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListHttpIncomingRequestHeaderModificationRules' => [ 'summary' => 'Queries the list of HTTP incoming request header modification configurations for a site.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257649', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~ListSites~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '608665779308176', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID. You can call the ListHttpIncomingRequestHeaderModificationRules operation to obtain the configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '424371770570752', 'title' => ''], ], [ 'name' => 'ConfigType', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The configuration type. You can use this parameter to query global or rule configurations. Valid values:'."\n" ."\n" .'- global: queries global configurations.'."\n" .'- rule: queries rule configurations.', 'enumValueTitles' => ['rule' => 'rule configuration.', 'global' => 'global configuration.'], 'type' => 'string', 'enum' => ['global', 'rule'], 'required' => false, 'example' => 'rule', ], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The rule name.', 'type' => 'string', 'required' => false, 'example' => 'rule_example'], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number for a paged query. The value must be greater than or equal to 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page for a paged query. Valid values: 1 to 500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. For sites with version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. The default value is version 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '7FB6EBC8-8849-5FC6-890E-3A761A5CD42D'], 'Configs' => [ 'description' => 'The list of HTTP incoming request header modification configurations.', 'type' => 'array', 'items' => [ 'description' => 'The details of an HTTP incoming request header modification configuration.', 'type' => 'object', 'properties' => [ 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '429422870243328', 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the site configuration. For sites with version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. The default value is version 0.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Sequence' => ['description' => 'The execution order of the rule. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Rule' => ['description' => 'The rule content, which uses a conditional expression to match user requests. This parameter does not need to be set when adding a global configuration. Two usage scenarios exist:'."\n" .'- Match all incoming requests: Set the value to true.'."\n" .'- Match specified requests: Set the value to a custom expression, for example: (http.host eq \\"video.example.com\\").', 'type' => 'string', 'example' => '(http.host eq "video.example.com")', 'title' => ''], 'RuleEnable' => ['description' => 'The rule switch. This parameter does not need to be set when adding a global configuration. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'RuleName' => ['description' => 'The rule name. This parameter does not need to be set when adding a global configuration.', 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'ConfigType' => ['description' => 'The configuration type. Valid values:'."\n" .'- global: global configuration.'."\n" .'- rule: rule configuration.', 'type' => 'string', 'example' => 'rule', 'title' => ''], 'RequestHeaderModification' => [ 'description' => 'The request header modifications, which support add, delete, and modify operations.', 'type' => 'array', 'items' => [ 'description' => 'The details of a request header modification.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The request header name.', 'type' => 'string', 'example' => 'headerName', 'title' => ''], 'Operation' => ['description' => 'The operation type. Valid values:'."\n" ."\n" .'- add: adds a header.'."\n" .'- del: deletes a header.'."\n" .'- modify: modifies a header.', 'type' => 'string', 'example' => 'add', 'title' => ''], 'Value' => ['description' => 'The request header value.', 'type' => 'string', 'example' => 'headerValue', 'title' => ''], 'Type' => ['description' => 'The value type. Valid values:'."\n" .'- static: static pattern.'."\n" .'- dynamic: dynamic schema.', 'type' => 'string', 'example' => 'static', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The current page number, which is the same as the PageNumber request parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page. Default value: 500. Valid values: 1 to 500.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'TotalPage' => ['description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7FB6EBC8-8849-5FC6-890E-3A761A5CD42D\\",\\n \\"Configs\\": [\\n {\\n \\"ConfigId\\": 429422870243328,\\n \\"SiteVersion\\": 0,\\n \\"Sequence\\": 1,\\n \\"Rule\\": \\"(http.host eq \\\\\\"video.example.com\\\\\\")\\",\\n \\"RuleEnable\\": \\"on\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"ConfigType\\": \\"rule\\",\\n \\"RequestHeaderModification\\": [\\n {\\n \\"Name\\": \\"headerName\\",\\n \\"Operation\\": \\"add\\",\\n \\"Value\\": \\"headerValue\\",\\n \\"Type\\": \\"static\\"\\n }\\n ]\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"TotalCount\\": 10,\\n \\"TotalPage\\": 1\\n}","type":"json"}]', 'title' => 'Query HTTP incoming request header modification configurations', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListHttpIncomingRequestHeaderModificationRules'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:ListHttpIncomingRequestHeaderModificationRules', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListHttpIncomingResponseHeaderModificationRules' => [ 'summary' => 'Queries the list of configurations for modifying HTTP incoming response headers of a site.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257655', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can obtain this by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '624516866852544', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID. You can obtain this by calling the ListHttpIncomingResponseHeaderModificationRules operation.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '432915173664768', 'title' => ''], ], [ 'name' => 'ConfigType', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The configuration type. You can use this parameter to query global configurations or rule configurations. Valid values:'."\n" ."\n" .'- global: queries global configurations.'."\n" .'- rule: queries rule configurations.', 'enumValueTitles' => ['rule' => 'rule configuration.', 'global' => 'global configuration.'], 'type' => 'string', 'enum' => ['global', 'rule'], 'required' => false, 'example' => 'rule', ], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The rule name.', 'type' => 'string', 'required' => false, 'example' => 'rule_example'], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number for a paged query. The value must be greater than or equal to 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page for a paged query. Valid values: 1 to 500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. For sites with version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. The default value is version 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CF02C6F6-DB59-5438-8C05-3CE42DFCB0AD'], 'Configs' => [ 'description' => 'The list of configurations for modifying HTTP incoming response headers.', 'type' => 'array', 'items' => [ 'description' => 'The details of a configuration for modifying HTTP incoming response headers.', 'type' => 'object', 'properties' => [ 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '430559776208896', 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the site configuration. For sites with version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. The default value is version 0.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Sequence' => ['description' => 'The execution order of the rule. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RuleEnable' => ['description' => 'The rule switch. This parameter does not need to be set when adding a global configuration. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'The rule content, which uses a conditional expression to match user requests. This parameter does not need to be set when adding a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: set the value to true.'."\n" .'- Match specified requests: set the value to a custom expression, for example: (http.host eq \\"video.example.com\\").', 'type' => 'string', 'example' => '(http.host eq "video.example.com")'."\n", 'title' => ''], 'RuleName' => ['description' => 'The rule name. This parameter does not need to be set when adding a global configuration.', 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'ConfigType' => ['description' => 'The configuration type. Valid values:'."\n" .'- global: global configuration.'."\n" .'- rule: rule configuration.', 'type' => 'string', 'example' => 'rule', 'title' => ''], 'ResponseHeaderModification' => [ 'description' => 'The response header modifications. Three operations are supported: add, delete, and modify.', 'type' => 'array', 'items' => [ 'description' => 'The details of a response header modification.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The response header name.', 'type' => 'string', 'example' => 'headerName', 'title' => ''], 'Operation' => ['description' => 'The operation type. Valid values:'."\n" .'- add: adds a response header.'."\n" .'- del: deletes a response header.'."\n" .'- modify: modifies a response header.', 'type' => 'string', 'example' => 'add', 'title' => ''], 'Value' => ['description' => 'The response header value.', 'type' => 'string', 'example' => 'headerValue', 'title' => ''], 'Type' => ['description' => 'The value type. Valid values:'."\n" .'- static: static pattern.'."\n" .'- dynamic: dynamic schema.', 'type' => 'string', 'example' => 'static', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The current page number, which is the same as the PageNumber request parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page. Default value: 500. Valid values: 1 to 500.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'TotalPage' => ['description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CF02C6F6-DB59-5438-8C05-3CE42DFCB0AD\\",\\n \\"Configs\\": [\\n {\\n \\"ConfigId\\": 430559776208896,\\n \\"SiteVersion\\": 0,\\n \\"Sequence\\": 1,\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\"video.example.com\\\\\\")\\\\n\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"ConfigType\\": \\"rule\\",\\n \\"ResponseHeaderModification\\": [\\n {\\n \\"Name\\": \\"headerName\\",\\n \\"Operation\\": \\"add\\",\\n \\"Value\\": \\"headerValue\\",\\n \\"Type\\": \\"static\\"\\n }\\n ]\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"TotalCount\\": 10,\\n \\"TotalPage\\": 1\\n}","type":"json"}]', 'title' => 'Query configurations for modifying HTTP incoming response headers', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListHttpIncomingResponseHeaderModificationRules'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListHttpIncomingResponseHeaderModificationRules', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListHttpRequestHeaderModificationRules' => [ 'summary' => 'Queries the list of HTTP request header modification configurations.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257649', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****'."\n", 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID. You can call the [ListHttpRequestHeaderModificationRules](~~2867483~~) operation to obtain the configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '35281609698****', 'title' => ''], ], [ 'name' => 'ConfigType', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The configuration type. You can use this parameter to query global or rule configurations. Valid values:'."\n" .'- global: queries global configurations.'."\n" .'- rule: queries rule configurations.', 'enumValueTitles' => ['rule' => 'rule configuration.', 'global' => 'global configuration.'], 'type' => 'string', 'enum' => ['global', 'rule'], 'required' => false, 'example' => 'rule', ], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The rule name. You do not need to set this parameter when adding a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example'], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number for a paged query. The value must be greater than or equal to 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page for a paged query. Valid values: 1 to 500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. For sites with version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. The default value is version 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '35C66C7B-671H-4297-9187-2C4477247A78'], 'Configs' => [ 'description' => 'The list of HTTP request header modification configurations.', 'type' => 'array', 'items' => [ 'description' => 'The details of the HTTP request header modification.', 'type' => 'object', 'properties' => [ 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '35281609698****'."\n", 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the site configuration. For sites with version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. The default value is version 0.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Sequence' => ['description' => 'The execution order of the rule. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Rule' => ['description' => 'The rule content, which uses conditional expressions to match user requests. You do not need to set this parameter when adding a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: Set the value to true.'."\n" .'- Match specified requests: Set the value to a custom expression, such as (http.host eq \\"video.example.com\\").', 'type' => 'string', 'example' => '(http.host eq "video.example.com")', 'title' => ''], 'RuleEnable' => ['description' => 'The rule switch. You do not need to set this parameter when adding a global configuration. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'RuleName' => ['description' => 'The rule name. You do not need to set this parameter when adding a global configuration.', 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'ConfigType' => ['description' => 'The configuration type. Valid values:'."\n" .'- global: global configuration.'."\n" .'- rule: rule configuration.', 'type' => 'string', 'example' => 'global', 'title' => ''], 'RequestHeaderModification' => [ 'description' => 'The request header modifications, which support add, delete, and modify operations.', 'type' => 'array', 'items' => [ 'description' => 'The details of the request header modification.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The request header name.', 'type' => 'string', 'example' => 'headerName', 'title' => ''], 'Operation' => ['description' => 'The operation type. Valid values:'."\n" ."\n" .'- add: adds a header.'."\n" .'- del: deletes a header.'."\n" .'- modify: modifies a header.', 'type' => 'string', 'example' => 'add', 'title' => ''], 'Value' => ['description' => 'The request header value.', 'type' => 'string', 'example' => 'headerValue', 'title' => ''], 'Type' => ['description' => 'The value type. Valid values:'."\n" .'- static: static pattern.'."\n" .'- dynamic: dynamic schema.', 'type' => 'string', 'example' => 'static', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The current page number, which is the same as the PageNumber request parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page. Default value: **500**. Valid values: **1 to 500**.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'TotalPage' => ['description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"35C66C7B-671H-4297-9187-2C4477247A78\\",\\n \\"Configs\\": [\\n {\\n \\"ConfigId\\": 0,\\n \\"SiteVersion\\": 1,\\n \\"Sequence\\": 1,\\n \\"Rule\\": \\"(http.host eq \\\\\\"video.example.com\\\\\\")\\",\\n \\"RuleEnable\\": \\"on\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"ConfigType\\": \\"global\\",\\n \\"RequestHeaderModification\\": [\\n {\\n \\"Name\\": \\"headerName\\",\\n \\"Operation\\": \\"add\\",\\n \\"Value\\": \\"headerValue\\",\\n \\"Type\\": \\"static\\"\\n }\\n ]\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"TotalCount\\": 10,\\n \\"TotalPage\\": 1\\n}","type":"json"}]', 'title' => 'Query HTTP request header modification configurations', 'changeSet' => [ ['createdAt' => '2025-04-10T07:02:38.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListHttpRequestHeaderModificationRules'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:ListHttpRequestHeaderModificationRules', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListHttpResponseHeaderModificationRules' => [ 'summary' => 'Queries the list of HTTP response header modification configurations for a site.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257655', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '35281609698****', 'title' => ''], ], [ 'name' => 'ConfigType', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The configuration type. You can use this parameter to query global or rule configurations. Valid values:'."\n" .'- global: queries global configurations.'."\n" .'- rule: queries rule configurations.'."\n" ."\n" .'This parameter is optional. If you do not specify this parameter, both global and rule configurations are returned.', 'enumValueTitles' => ['rule' => 'rule configuration.', 'global' => 'global configuration.'], 'type' => 'string', 'enum' => ['global', 'rule'], 'required' => false, 'example' => 'rule', ], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The rule name. You do not need to set this parameter when you add a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example'], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number for a paged query. The value must be greater than or equal to 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page for a paged query. Valid values: 1 to 500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. For sites with version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-280B-72F8FD6DA2FE'], 'Configs' => [ 'description' => 'The list of HTTP response header modifications.', 'type' => 'array', 'items' => [ 'description' => 'The details of an HTTP response header modification.', 'type' => 'object', 'properties' => [ 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '35281609698****'."\n", 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the site configuration. For sites with version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Sequence' => ['description' => 'The execution order of the rule. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RuleEnable' => ['description' => 'The rule switch. You do not need to set this parameter when you add a global configuration. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'The rule content, which uses a conditional expression to match user requests. You do not need to set this parameter when you add a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: set the value to true.'."\n" .'- Match specific requests: set the value to a custom expression, for example, (http.host eq \\"video.example.com\\").', 'type' => 'string', 'example' => '(http.host eq "video.example.com")'."\n", 'title' => ''], 'RuleName' => ['description' => 'The rule name. You do not need to set this parameter when you add a global configuration.', 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'ConfigType' => ['description' => 'The configuration type. Valid values:'."\n" .'- global: global configuration.'."\n" .'- rule: rule configuration.', 'type' => 'string', 'example' => 'rule', 'title' => ''], 'ResponseHeaderModification' => [ 'description' => 'The response header modifications. Three operations are supported: add, delete, and modify.', 'type' => 'array', 'items' => [ 'description' => 'The details of a response header.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The response header name.', 'type' => 'string', 'example' => 'headerName', 'title' => ''], 'Operation' => ['description' => 'The operation type. Valid values:'."\n" .'- add: adds a response header.'."\n" .'- del: deletes a response header.'."\n" .'- modify: modifies a response header.', 'type' => 'string', 'example' => 'add', 'title' => ''], 'Value' => ['description' => 'The response header value.', 'type' => 'string', 'example' => 'headerValue', 'title' => ''], 'Type' => ['description' => 'The value type. Valid values:'."\n" .'- static: static pattern.'."\n" .'- dynamic: dynamic schema.', 'type' => 'string', 'example' => 'static', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The current page number, which is the same as the PageNumber request parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '14', 'title' => ''], 'TotalPage' => ['description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-280B-72F8FD6DA2FE\\",\\n \\"Configs\\": [\\n {\\n \\"ConfigId\\": 0,\\n \\"SiteVersion\\": 0,\\n \\"Sequence\\": 1,\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\"video.example.com\\\\\\")\\\\n\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"ConfigType\\": \\"rule\\",\\n \\"ResponseHeaderModification\\": [\\n {\\n \\"Name\\": \\"headerName\\",\\n \\"Operation\\": \\"add\\",\\n \\"Value\\": \\"headerValue\\",\\n \\"Type\\": \\"static\\"\\n }\\n ]\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"TotalCount\\": 14,\\n \\"TotalPage\\": 1\\n}","type":"json"}]', 'title' => 'Query HTTP response header modification configurations', 'changeSet' => [ ['createdAt' => '2025-04-10T07:02:39.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListHttpResponseHeaderModificationRules'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:ListHttpResponseHeaderModificationRules', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListHttpsApplicationConfigurations' => [ 'summary' => 'Query multiple HTTPS application configurations.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257534', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID. You can obtain it by calling the [ListSites](~~ListSites~~) API.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'Configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '3528160969****', 'title' => ''], ], [ 'name' => 'ConfigType', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'Configuration type. You can use this parameter to query global configurations or rule configurations. Valid values:'."\n" .'- global: Query global configurations.'."\n" .'- rule: Query rule configurations.'."\n" ."\n" .'This parameter is optional. If not specified, no distinction is made between global and rule configurations.', 'enumValueTitles' => ['rule' => 'Rule configuration', 'global' => 'Global configuration'], 'type' => 'string', 'enum' => ['global', 'rule'], 'required' => false, 'example' => 'global', ], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'Rule name. You can query the rule whose name matches the specified value.', 'type' => 'string', 'required' => false, 'example' => 'rule_example'], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number for paginated queries. The value must be greater than or equal to 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page for paginated queries. Valid values: 1-500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site. For sites with version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. Default value: version 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'Request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9'], 'Configs' => [ 'description' => 'Response body configurations.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ConfigId' => ['description' => 'Configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '395386449776640', 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the site configuration. For sites with configuration version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. Default value: version 0.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Sequence' => ['description' => 'Rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RuleEnable' => ['description' => 'Rule switch. This parameter does not need to be set when adding a global configuration. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'Rule content, using conditional expressions to match user requests. This parameter does not need to be set when adding a global configuration. There are two usage scenarios:'."\n" .'- Match all incoming requests: Set the value to true.'."\n" .'- Match specified requests: Set the value to a custom expression, for example: (http.host eq \\"video.example.com\\")', 'type' => 'string', 'example' => '(http.host eq \\"video.example.com\\")'."\n", 'title' => ''], 'RuleName' => ['description' => 'Rule name. This parameter does not need to be set when adding a global configuration.', 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'ConfigType' => ['description' => 'Configuration type. You can use this parameter to query global configurations or rule configurations. Valid values:'."\n" ."\n" .'- global: Query global configurations.'."\n" .'- rule: Query rule configurations.', 'type' => 'string', 'example' => 'global', 'title' => ''], 'HttpsForce' => ['description' => 'Whether to enable forced HTTPS. Disabled by default. Valid values:'."\n" ."\n" .'- on: Enabled.'."\n" ."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'HttpsForceCode' => ['description' => 'Forced HTTPS redirect status code. Valid values:'."\n" .'- 301'."\n" .'- 302'."\n" .'- 307'."\n" .'- 308', 'type' => 'string', 'example' => '301', 'title' => ''], 'AltSvc' => ['description' => 'Alt-Svc feature switch. Disabled by default. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'AltSvcClear' => ['description' => 'Whether the Alt-Svc header includes the clear parameter. Disabled by default. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'AltSvcPersist' => ['description' => 'Whether the Alt-Svc header includes the persist parameter. Disabled by default. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'AltSvcMa' => ['description' => 'Alt-Svc validity period in seconds. Default value: 86400 seconds.', 'type' => 'string', 'example' => '86400', 'title' => ''], 'Hsts' => ['description' => 'Whether to enable HSTS. Disabled by default. Valid values:'."\n" ."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'HstsMaxAge' => ['description' => 'HSTS expiration time in seconds.', 'type' => 'string', 'example' => '3600', 'title' => ''], 'HstsIncludeSubdomains' => ['description' => 'Whether to include subdomains in HSTS. Disabled by default. Valid values:'."\n" ."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'HstsPreload' => ['description' => 'Whether to enable HSTS preload. Disabled by default. Valid values:'."\n" ."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'HttpsSniVerify' => ['description' => 'Whether to enable SNI verification. Disabled by default. Valid values:'."\n" ."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'HttpsNoSniDeny' => ['description' => 'Whether to enable denial of TLS handshake requests without SNI. Disabled by default. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'HttpsSniWhitelist' => ['description' => 'Specifies the list of allowed SNI whitelist entries, separated by spaces.', 'type' => 'string', 'example' => 'abc edf', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'Current page number, same as the PageNumber request parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'Page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'TotalCount' => ['description' => 'Total number of records.', 'type' => 'integer', 'format' => 'int32', 'example' => '16', 'title' => ''], 'TotalPage' => ['description' => 'Total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"Configs\\": [\\n {\\n \\"ConfigId\\": 395386449776640,\\n \\"SiteVersion\\": 1,\\n \\"Sequence\\": 1,\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\\\\\\\\\"video.example.com\\\\\\\\\\\\\\")\\\\n\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"ConfigType\\": \\"global\\",\\n \\"HttpsForce\\": \\"on\\",\\n \\"HttpsForceCode\\": \\"301\\",\\n \\"AltSvc\\": \\"on\\",\\n \\"AltSvcClear\\": \\"on\\",\\n \\"AltSvcPersist\\": \\"on\\",\\n \\"AltSvcMa\\": \\"86400\\",\\n \\"Hsts\\": \\"on\\",\\n \\"HstsMaxAge\\": \\"3600\\",\\n \\"HstsIncludeSubdomains\\": \\"on\\",\\n \\"HstsPreload\\": \\"on\\",\\n \\"HttpsSniVerify\\": \\"on\\",\\n \\"HttpsNoSniDeny\\": \\"on\\",\\n \\"HttpsSniWhitelist\\": \\"abc edf\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 16,\\n \\"TotalPage\\": 2\\n}","type":"json"}]', 'title' => 'Query HTTPS Application Configuration List', 'changeSet' => [ ['createdAt' => '2025-06-03T07:09:13.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListHttpsApplicationConfigurations'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListHttpsApplicationConfigurations', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListHttpsBasicConfigurations' => [ 'summary' => 'Queries multiple HTTPS basic configurations.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257540', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~ListSites~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '35281609698****', 'title' => ''], ], [ 'name' => 'ConfigType', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The configuration type. You can use this parameter to query global or rule configurations. Valid values:'."\n" .'- global: queries global configurations.'."\n" .'- rule: queries rule configurations.'."\n" ."\n" .'This parameter is optional. If you do not specify this parameter, both global and rule configurations are returned.', 'enumValueTitles' => ['rule' => 'rule configuration.', 'global' => 'global configuration.'], 'type' => 'string', 'enum' => ['global', 'rule'], 'required' => false, 'example' => 'global', ], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The rule name. You can use this parameter to query the rule that matches the specified name.', 'type' => 'string', 'required' => false, 'example' => 'test'], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number for a paged query. The value must be greater than or equal to 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page for a paged query. Valid values: 1 to 500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395'], 'Configs' => [ 'description' => 'The configurations returned.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '395386449776640', 'title' => ''], 'Sequence' => ['description' => 'The rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RuleEnable' => ['description' => 'The rule switch. You do not need to set this parameter when adding a global configuration. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'The rule content, which uses a conditional expression to match user requests. You do not need to set this parameter when adding a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: set the value to true.'."\n" .'- Match specified requests: set the value to a custom expression, such as (http.host eq \\"video.example.com\\").', 'type' => 'string', 'example' => '(http.host eq \\"video.example.com\\")'."\n", 'title' => ''], 'RuleName' => ['description' => 'The rule name. You do not need to set this parameter when adding a global configuration.', 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'ConfigType' => ['description' => 'The configuration type. You can use this parameter to query global or rule configurations. Valid values:'."\n" ."\n" .'- global: queries global configurations.'."\n" .'- rule: queries rule configurations.', 'type' => 'string', 'example' => 'global', 'title' => ''], 'Https' => ['description' => 'Specifies whether to enable HTTPS. HTTPS is enabled by default. Valid values:'."\n" ."\n" .'- on: enabled.'."\n" ."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Tls10' => ['description' => 'Specifies whether to enable TLS 1.0. TLS 1.0 is disabled by default. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Tls11' => ['description' => 'Specifies whether to enable TLS 1.1. TLS 1.1 is disabled by default. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Tls12' => ['description' => 'Specifies whether to enable TLS 1.2. TLS 1.2 is disabled by default. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Tls13' => ['description' => 'Specifies whether to enable TLS 1.3. TLS 1.3 is disabled by default. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'CiphersuiteGroup' => ['description' => 'The cipher suite group. All cipher suites are enabled by default. Valid values:'."\n" .'- all: all cipher suites.'."\n" .'- strict: strong cipher suites.'."\n" .'- custom: custom cipher suites.', 'type' => 'string', 'example' => 'strict', 'title' => ''], 'Ciphersuite' => ['description' => 'The custom cipher suite, which specifies the encryption algorithms selected when CiphersuiteGroup is set to custom.', 'type' => 'string', 'example' => 'TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256', 'title' => ''], 'OcspStapling' => ['description' => 'Specifies whether to enable OCSP stapling. OCSP stapling is disabled by default. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Http2' => ['description' => 'Specifies whether to enable HTTP/2. HTTP/2 is enabled by default. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Http3' => ['description' => 'Specifies whether to enable HTTP/3. HTTP/3 is enabled by default. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The current page number, which is the same as the PageNumber request parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'TotalCount' => ['description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'TotalPage' => ['description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395\\",\\n \\"Configs\\": [\\n {\\n \\"ConfigId\\": 395386449776640,\\n \\"Sequence\\": 1,\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\\\\\\\\\"video.example.com\\\\\\\\\\\\\\")\\\\n\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"ConfigType\\": \\"global\\",\\n \\"Https\\": \\"on\\",\\n \\"Tls10\\": \\"on\\",\\n \\"Tls11\\": \\"on\\",\\n \\"Tls12\\": \\"on\\",\\n \\"Tls13\\": \\"on\\",\\n \\"CiphersuiteGroup\\": \\"strict\\",\\n \\"Ciphersuite\\": \\"TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256\\",\\n \\"OcspStapling\\": \\"on\\",\\n \\"Http2\\": \\"on\\",\\n \\"Http3\\": \\"on\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 20,\\n \\"TotalPage\\": 2\\n}","type":"json"}]', 'title' => 'Query HTTPS basic configurations', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListHttpsBasicConfigurations'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListHttpsBasicConfigurations', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListImageTransforms' => [ 'summary' => 'Queries the list of image transformation configurations for a site.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257357', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID. You can call the [ListImageTransforms](~~2869056~~) operation to obtain the configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '352816096987136', 'title' => ''], ], [ 'name' => 'ConfigType', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The configuration type. You can use this parameter to query global or rule configurations. Valid values:'."\n" .'- global: queries global configurations.'."\n" .'- rule: queries rule configurations.'."\n" ."\n" .'This parameter is optional. If not specified, both global and rule configurations are returned.', 'enumValueTitles' => ['rule' => 'rule configuration.', 'global' => 'global configuration.'], 'type' => 'string', 'enum' => ['global', 'rule'], 'required' => false, 'example' => 'global', ], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The rule name. This parameter is not required when you add a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'test1'], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number for a paged query. The value must be greater than or equal to 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page for a paged query. Valid values: 1 to 500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site. For sites with version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-A198-72F8FD6DA2FE'], 'Configs' => [ 'description' => 'The list of configurations.', 'type' => 'array', 'items' => [ 'description' => 'The configuration details.', 'type' => 'object', 'properties' => [ 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '395386449776640', 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the site configuration. For sites with version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Sequence' => ['description' => 'The execution order of the rule. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Enable' => [ 'description' => 'The switch status. Valid values:'."\n" ."\n" .'- **on**: enabled.'."\n" .'- **off**: disabled.', 'enumValueTitles' => ['off' => 'off', 'on' => 'on'], 'type' => 'string', 'example' => 'on', 'title' => '', ], 'RuleEnable' => [ 'description' => 'The rule switch. This parameter is not required when you add a global configuration. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'enumValueTitles' => ['on' => 'on'], 'type' => 'string', 'example' => 'on', 'title' => '', ], 'Rule' => ['description' => 'The rule content, which uses conditional expressions to match user requests. This parameter is not required when you add a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: set the value to true.'."\n" .'- Match specified requests: set the value to a custom expression, such as (http.host eq \\"video.example.com\\").', 'type' => 'string', 'example' => '(http.request.uri.path.file_name eq \\"jpg\\")', 'title' => ''], 'RuleName' => ['description' => 'The rule name. This parameter is not required when you add a global configuration.', 'type' => 'string', 'example' => 'test', 'title' => ''], 'ConfigType' => [ 'description' => 'The configuration type. Valid values:'."\n" .'- global: global configuration.'."\n" .'- rule: rule configuration.', 'enumValueTitles' => ['rule' => 'rule', 'global' => 'global'], 'type' => 'string', 'example' => 'global', 'title' => '', ], 'AutoWebp' => ['title' => '', 'description' => 'The adaptive WebP setting.', 'type' => 'string', 'example' => 'on'], 'AutoAvif' => ['title' => '', 'description' => 'The adaptive AVIF setting.', 'type' => 'string', 'example' => 'on'], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The current page number, which is the same as the PageNumber request parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page. Valid values: **1 to 500**. Default value: **500**.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'TotalCount' => ['description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int32', 'example' => '16', 'title' => ''], 'TotalPage' => ['description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-A198-72F8FD6DA2FE\\",\\n \\"Configs\\": [\\n {\\n \\"ConfigId\\": 395386449776640,\\n \\"SiteVersion\\": 1,\\n \\"Sequence\\": 1,\\n \\"Enable\\": \\"on\\",\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.request.uri.path.file_name eq \\\\\\\\\\\\\\"jpg\\\\\\\\\\\\\\")\\",\\n \\"RuleName\\": \\"test\\",\\n \\"ConfigType\\": \\"global\\",\\n \\"AutoWebp\\": \\"on\\",\\n \\"AutoAvif\\": \\"on\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 16,\\n \\"TotalPage\\": 2\\n}","type":"json"}]', 'title' => 'Query image transformation configurations for a site', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListImageTransforms'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:ListImageTransforms', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListInstanceQuotas' => [ 'summary' => 'Queries the quota details of the plan associated with a specific instance or site by quota name.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238984', 'abilityTreeNodes' => ['FEATUREdcdnZA9EPX'], ], 'parameters' => [ [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => [ 'description' => 'The plan instance ID. You can call the [ListSites](~~2850189~~) operation to obtain the ID. You must specify at least one of this parameter and SiteId.', 'type' => 'string', 'enum' => [], 'required' => false, 'example' => 'sp-xcdn-96wblslz****', 'title' => '', ], ], [ 'name' => 'SiteId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the ID. You must specify at least one of this parameter and InstanceId.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '2882900****', 'title' => ''], ], [ 'name' => 'QuotaNames', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => [ 'description' => 'The plan quota names, separated by commas (,). Valid values:'."\n" ."\n" .'- **waf:phase:http_anti_scan:actions**: WAF scan protection - action enumeration.'."\n" .'- **waf:phase:http_bot:actions**: WAF bot management - all action enumeration.'."\n" .'- **waf:phase:http_bot:http_custom_cc_dev:characteristic:fields**: WAF bot management - custom device rate limiting statistical object enumeration.'."\n" .'- **waf:phase:http_bot:http_custom_cc_ip:characteristic:fields**: WAF bot management - custom IP rate limiting statistical object enumeration.'."\n" .'- **waf:phase:http_bot:match:symbols**: WAF bot management - match operator enumeration.'."\n" .'- **waf:phase:http_bot:http_custom_cc:characteristic:fields**: WAF bot management - custom session rate limiting statistical object enumeration.'."\n" .'- **waf:phase:http_bot:match:fields**: WAF bot management - match field enumeration.'."\n" .'- **waf:phase:http_whitelist:match:symbols**: WAF whitelist - match operator enumeration.'."\n" .'- **waf:phase:http_whitelist:match:fields**: WAF whitelist - match field enumeration.'."\n" .'- **waf:phase:http_anti_scan:http_directory_traversal:characteristic:fields**: WAF scan protection - folder traverse blocking statistical object enumeration.'."\n" .'- **waf:phase:http_anti_scan:http_high_frequency:characteristic:fields**: WAF scan protection - high-frequency scan blocking statistical object enumeration.'."\n" .'- **waf:phase:http_anti_scan:match:symbols**: WAF scan protection - match operator enumeration.'."\n" .'- **waf:phase:http_anti_scan:match:fields**: WAF scan protection - match field enumeration.'."\n" .'- **waf:phase:http_managed:actions**: WAF managed rules - action enumeration.'."\n" .'- **waf:phase:http_managed:group:reference:ids**: WAF managed rules - referenced rule group enumeration.'."\n" .'- **waf:phase:http_ratelimit:actions**: WAF rate limiting - action enumeration.'."\n" .'- **waf:phase:http_ratelimit:ttls**: WAF rate limiting - duration enumeration.'."\n" .'- **waf:phase:http_ratelimit:intervals**: WAF rate limiting - statistical period.'."\n" .'- **waf:phase:http_ratelimit:http_ratelimit:characteristic:fields**: WAF rate limiting - control type rule match characteristic enumeration.'."\n" .'- **waf:phase:http_ratelimit:match:symbols**: WAF rate limiting rule phase match operator enumeration.'."\n" .'- **waf:phase:http_ratelimit:match:fields**: WAF rate limiting rule phase match field enumeration.'."\n" .'- **waf:phase:http_custom:actions**: WAF custom rule phase action enumeration.'."\n" .'- **waf:phase:http_custom:match:symbols**: WAF custom rule phase match operator enumeration.'."\n" .'- **waf:phase:http_custom:match:fields**: WAF custom rule phase match field.'."\n" .'- **waiting_room|queuing_method**: waiting room - queuing method.'."\n" .'- **origin_rules|origin_scheme**: back-to-origin rules - back-to-origin protocol.'."\n" .'- **origin_rules|origin_sni**: back-to-origin rules - back-to-origin SNI.'."\n" .'- **origin_rules|origin_host**: back-to-origin rules - back-to-origin host.'."\n" .'- **fourlayeracceleration**: Layer 4 acceleration.'."\n" .'- **rtlog_service**: real-time log feature switch.'."\n" .'- **dashboard_traffic**: value-added network traffic analysis capability.'."\n" .'- **custom_name_server**: custom NS name.'."\n" .'- **waf:phase:http_bot:enable**: WAF bot management switch.'."\n" .'- **waf:phase:http_whitelist:enable**: WAF whitelist switch.'."\n" .'- **instantlog**: instant log active or not.'."\n" .'- **waf:phase:http_anti_scan:enable**: WAF scan protection switch.'."\n" .'- **waf:phase:http_managed:group:reference:enable**: WAF managed rules - referenced rule group configuration switch.'."\n" .'- **waf:phase:http_managed:enable**: WAF managed rules switch.'."\n" .'- **waf:phase:http_ratelimit:on_hit:enable**: WAF rate limiting - apply to cache-hit requests switch.'."\n" .'- **ddos**: DDoS instance.'."\n" .'- **waf:phase:http_ratelimit:enable**: WAF rate limiting rule phase switch.'."\n" .'- **waf:phase:http_custom:enable**: WAF custom rule phase switch.'."\n" .'- **waf:phase:all:page:reference:enable**: WAF custom response page switch.'."\n" .'- **rules_support_regex**: whether the rule DPI engine supports regular expressions.'."\n" .'- **waiting_room_event**: waiting room - scheduled event.'."\n" .'- **waiting_room_rule**: waiting room - bypass waiting room.'."\n" .'- **waiting_room|json_response**: waiting room - enable JSON response.'."\n" .'- **waiting_room|disable_session_renewal**: waiting room - disable session renewal.'."\n" .'- **origin_rules|dns_record**: back-to-origin rules - DNS record.'."\n" .'- **managed_transforms|add_client_geolocation_headers**: whether the real client IP header is active in transform rules.'."\n" .'- **tiered_cache|regional_enable**: area cache.'."\n" .'- **real_client_ip_header**: client IP header.'."\n" .'- **data_timerange**: data query time range in minutes.'."\n" .'- **cache_rules|edge_cache_ttl**: cache - node TTL.'."\n" .'- **cache_rules|browser_cache_ttl**: cache - browser TTL.'."\n" .'- **fourLayerRecordCount**: record count limit for Layer 4 acceleration.'."\n" .'- **waitingroomRuleCount**: maximum number of rules per waiting room ID.'."\n" .'- **waitingroomEventCount**: maximum number of events per waiting room ID.'."\n" .'- **waitingroom_custom_pathhost**: waiting room - hostname and path.'."\n" .'- **er_routers**: function routing.'."\n" .'- **cache_rules|rule_quota**: cache rules.'."\n" .'- **configuration_rules|rule_quota**: configuration rules.'."\n" .'- **redirect_rules|rule_quota**: redirect rules.'."\n" .'- **compression_rules|rule_quota**: compression rules.'."\n" .'- **origin_rules|rule_quota**: back-to-origin rules.'."\n" .'- **waf:phase:http_bot:rulesets_per_instance:less_than_or_equal**: WAF bot management - maximum number of rule groups per instance.'."\n" .'- **waf:phase:http_whitelist:rules_per_instance:less_than_or_equal**: WAF whitelist - maximum number of rules per instance.'."\n" .'- **rtlog_quota**: quota for real-time log push node count.'."\n" .'- **waf:phase:http_anti_scan:rulesets_per_instance:less_than_or_equal**: WAF scan protection - maximum number of rule groups per instance.'."\n" .'- **ddos_instance**: number of DDoS instances.'."\n" .'- **waf:phase:http_ratelimit:rules_per_instance:less_than_or_equal**: maximum number of WAF rate limiting rules.'."\n" .'- **waf:phase:http_custom:rules_per_instance:less_than_or_equal**: maximum number of WAF custom rules per instance.'."\n" .'- **ruleNestedConditionalCount**: number of nesting levels for rules.'."\n" .'- **waiting_room**: waiting room.'."\n" .'- **transition_rule**: transform rules.'."\n" .'- **customHttpCert**: number of custom certificates.'."\n" .'- **free_cert**: number of free certificates.'."\n" .'- **preload**: resource prefetch.'."\n" .'- **refresh_cache_tag**: refresh - cache tag.'."\n" .'- **refresh_ignore_param**: refresh - purge without parameters.'."\n" .'- **refresh_directory**: refresh - purge by folder.'."\n" .'- **refresh_hostname**: refresh - purge by hostname.'."\n" .'- **refresh_all**: refresh - purge all cache.'."\n" .'- **refresh_file**: URL refresh.'."\n" .'- **wildcard**: number of wildcard domain names.'."\n" .'- **recordCount**: number of Layer 7 records.'."\n" .'- **siteCount**: number of sites.'."\n" .'- **https|rule_quota**: number of SSL/TLS rules.', 'type' => 'string', 'required' => true, 'enum' => [], 'example' => 'waf:phase:http_anti_scan:actions, waf:phase:http_bot:actions, siteCount', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247B78'], 'InstanceId' => ['description' => 'The plan instance ID.', 'type' => 'string', 'example' => 'sp-xcdn-96wblslz****', 'title' => ''], 'Status' => ['description' => 'The plan instance status. Valid values:'."\n" ."\n" .'- **online**: The instance is in normal service.'."\n" .'- **offline**: The instance has expired but has not exceeded the grace period and is unavailable.'."\n" .'- **disable**: The instance has been released.', 'type' => 'string', 'example' => 'online', 'title' => ''], 'Quotas' => [ 'description' => 'The list of plan instance quotas.', 'type' => 'array', 'items' => [ 'description' => 'The plan instance quota details.', 'type' => 'object', 'properties' => [ 'QuotaName' => ['description' => 'The quota name.', 'type' => 'string', 'example' => 'customHttpCert', 'title' => ''], 'QuotaValue' => ['description' => 'The quota value.', 'type' => 'string', 'example' => '10', 'title' => ''], 'QuotaValueType' => ['description' => 'The threshold type of the quota. Valid values:'."\n" ."\n" .'- **value**: enumeration type. The enumeration range of quota values.'."\n" .'- **bool**: Boolean type. Indicates whether the quota is available.'."\n" .'- **num**: numeric type. The maximum usage of the quota.'."\n" .'- **range**: range type. The value range of the quota.'."\n" .'- **custom**: custom type. Other types that do not fall into the preceding four threshold types.', 'type' => 'string', 'example' => 'bool', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'QuotaNotExist', 'errorMessage' => 'The quota item does not exist or the purchased plan has not taken effect. Confirm and try again.', 'description' => 'The quota item does not exist or the purchased plan has not taken effect. Confirm and try again.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'ErService.HasOpened', 'errorMessage' => 'You have already activated Edge Routine.', 'description' => 'You have already activated Edge Routine.'], ], 403 => [ ['errorCode' => 'Site.NotExist', 'errorMessage' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.', 'description' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.'], ], [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ['errorCode' => 'UnsupportQuota', 'errorMessage' => 'Unsupported quota is specified. Check and try again.', 'description' => 'Unsupported quota is specified. Check and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247B78\\",\\n \\"InstanceId\\": \\"sp-xcdn-96wblslz****\\",\\n \\"Status\\": \\"online\\",\\n \\"Quotas\\": [\\n {\\n \\"QuotaName\\": \\"customHttpCert\\",\\n \\"QuotaValue\\": \\"10\\",\\n \\"QuotaValueType\\": \\"bool\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Query quota details of an instance', 'changeSet' => [ ['createdAt' => '2024-10-15T09:23:51.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListInstanceQuotas'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListInstanceQuotas', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ListInstanceQuotasWithUsage' => [ 'summary' => 'Queries quotas and the actual usage in a plan based on the website or plan ID.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238752', 'abilityTreeNodes' => ['FEATUREdcdnZA9EPX'], ], 'parameters' => [ [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => [ 'description' => 'The plan ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'string', 'required' => false, 'example' => 'sp-xcdn-96wblslz****', 'enum' => [], 'title' => '', ], ], [ 'name' => 'SiteId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1232223****', 'title' => ''], ], [ 'name' => 'QuotaNames', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => [ 'description' => 'The quota names in the plan. Separate the quota names with commas (,). You can query up to 10 quota names at a time. Valid values:'."\n" ."\n" .'* **customHttpCert**: the custom certificates.'."\n" .'* **transition_rule**: the transform rules.'."\n" .'* **waiting_room**: the waiting rooms.'."\n" .'* **https|rule_quota**: the SSL/TLS rules.'."\n" .'* **cache_rules|rule_quota**: the cache rules.'."\n" .'* **configuration_rules|rule_quota**: the configuration rules.'."\n" .'* **redirect_rules|rule_quota**: the redirect rules.'."\n" .'* **compression_rules|rule_quota**: the compression rules.'."\n" .'* **origin_rules|rule_quota**: the origin rules.'."\n", 'type' => 'string', 'required' => true, 'example' => 'customHttpCert', 'enum' => [], 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '85H66C7B-671A-4297-9187-2C4477247A74'], 'InstanceId' => ['description' => 'The plan ID.[](~~2850189~~)'."\n", 'type' => 'string', 'example' => 'sp-xcdn-96wblslz****', 'title' => ''], 'Status' => ['description' => 'The plan status. Valid values:'."\n" ."\n" .'* online: The plan is in service.'."\n" .'* offline: The plan has expired within an allowable period. In this state, the plan is unavailable.'."\n" .'* disable: The plan is released.'."\n", 'type' => 'string', 'example' => 'online', 'title' => ''], 'Quotas' => [ 'description' => 'The quotas and their actual usage in the plan.'."\n", 'type' => 'array', 'items' => [ 'description' => 'The details of the quota and the quota usage in the plan.'."\n", 'type' => 'object', 'properties' => [ 'QuotaName' => ['description' => 'The quota name.'."\n", 'type' => 'string', 'example' => 'redirect_rules|rule_quota', 'title' => ''], 'QuotaValue' => ['description' => 'The quota value.'."\n", 'type' => 'string', 'example' => '10', 'title' => ''], 'Usage' => ['description' => 'The quota usage.'."\n", 'type' => 'string', 'example' => '3', 'title' => ''], 'SiteUsage' => [ 'description' => 'The usage of the quota in each website associated with the plan.'."\n", 'type' => 'array', 'items' => [ 'description' => 'The usage details of the quota in a single website.'."\n", 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The website ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '34818329392****', 'title' => ''], 'SiteUsage' => ['description' => 'The quota usage of the website.'."\n", 'type' => 'string', 'example' => '1', 'title' => ''], 'SiteName' => ['description' => 'The website name.'."\n", 'type' => 'string', 'example' => 'test.top', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'QuotaNotExist', 'errorMessage' => 'The quota item does not exist or the purchased plan has not taken effect. Confirm and try again.', 'description' => 'The quota item does not exist or the purchased plan has not taken effect. Confirm and try again.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'NoPermission', 'errorMessage' => 'You do not have permissions to access or operate on the resource.Contact your account administrator to attach the AliyunESAFullAccess policy to the current user.', 'description' => 'You do not have permissions to access or operate on the resource.Contact your account administrator to attach the AliyunESAFullAccess policy to the current user.'], ['errorCode' => 'ErService.HasOpened', 'errorMessage' => 'You have already activated Edge Routine.', 'description' => 'You have already activated Edge Routine.'], ], 403 => [ ['errorCode' => 'Site.NotExist', 'errorMessage' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.', 'description' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.'], ], [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ['errorCode' => 'UnsupportQuota', 'errorMessage' => 'Unsupported quota is specified. Check and try again.', 'description' => 'Unsupported quota is specified. Check and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"85H66C7B-671A-4297-9187-2C4477247A74\\",\\n \\"InstanceId\\": \\"sp-xcdn-96wblslz****\\",\\n \\"Status\\": \\"online\\",\\n \\"Quotas\\": [\\n {\\n \\"QuotaName\\": \\"redirect_rules|rule_quota\\",\\n \\"QuotaValue\\": \\"10\\",\\n \\"Usage\\": \\"3\\",\\n \\"SiteUsage\\": [\\n {\\n \\"SiteId\\": 0,\\n \\"SiteUsage\\": \\"1\\",\\n \\"SiteName\\": \\"test.top\\"\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', 'title' => 'ListInstanceQuotasWithUsage', 'changeSet' => [ ['createdAt' => '2024-10-15T09:23:50.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-10-10T07:16:19.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListInstanceQuotasWithUsage'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListInstanceQuotasWithUsage', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'operationType' => 'read', 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'ListKeylessServers' => [ 'summary' => 'Retrieves the list of Keyless server configurations for a site.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238842', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of records per page.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '20', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-280B-72F8FD6DA2FE', 'title' => ''], 'TotalCount' => ['description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int64', 'example' => '90', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The page size.', 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''], 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '54362329990032', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com ', 'title' => ''], 'Result' => [ 'description' => 'The result array.', 'type' => 'array', 'items' => [ 'description' => 'The result.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'Keyless server ID。', 'type' => 'string', 'example' => 'babab9db65ee5efcca9f3d41d4b5****', 'title' => ''], 'Name' => ['description' => 'The Keyless server name.', 'type' => 'string', 'example' => 'example', 'title' => ''], 'Host' => ['description' => 'The Keyless server hostname.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], 'Port' => ['description' => 'The Keyless server port. Valid values: 1 to 65535.', 'type' => 'integer', 'format' => 'int64', 'example' => '443', 'title' => ''], 'Verify' => ['description' => 'Indicates whether to verify the Keyless server certificate. Default value: false.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'CaCertificate' => ['description' => 'The CA certificate used to verify the Keyless server certificate. This parameter takes effect only when Verify is set to true.', 'type' => 'string', 'example' => '-----BEGIN CERTIFICATE-----****', 'title' => ''], 'ClientCertificate' => ['description' => 'The client certificate. This parameter must be used together with the client private key.', 'type' => 'string', 'example' => '-----BEGIN CERTIFICATE-----****', 'title' => ''], 'ClientPrivateKey' => ['description' => 'The client private key. This parameter must be used together with the client certificate.', 'type' => 'string', 'example' => '-----BEGIN RSA PRIVATE KEY-----****', 'title' => ''], 'CreateTime' => ['description' => 'The creation time. The time follows the format YYYY-MM-DDTHH:MM:SS+08:00 in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2025-07-18T20:33:31+08:00', 'title' => ''], 'UpdateTime' => ['description' => 'The update time. The time follows the format YYYY-MM-DDTHH:MM:SS+08:00 in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2025-07-18T20:33:31+08:00', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.', 'description' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Get keyless server configuration list', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListKeylessServers'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListKeylessServers', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-280B-72F8FD6DA2FE\\",\\n \\"TotalCount\\": 90,\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"SiteId\\": 54362329990032,\\n \\"SiteName\\": \\"example.com \\",\\n \\"Result\\": [\\n {\\n \\"Id\\": \\"babab9db65ee5efcca9f3d41d4b5****\\",\\n \\"Name\\": \\"example\\",\\n \\"Host\\": \\"example.com\\",\\n \\"Port\\": 443,\\n \\"Verify\\": true,\\n \\"CaCertificate\\": \\"-----BEGIN CERTIFICATE-----****\\",\\n \\"ClientCertificate\\": \\"-----BEGIN CERTIFICATE-----****\\",\\n \\"ClientPrivateKey\\": \\"-----BEGIN RSA PRIVATE KEY-----****\\",\\n \\"CreateTime\\": \\"2025-07-18T20:33:31+08:00\\",\\n \\"UpdateTime\\": \\"2025-07-18T20:33:31+08:00\\"\\n }\\n ]\\n}","type":"json"}]', ], 'ListKvs' => [ 'summary' => 'Lists all key-value pairs in a specified KV storage namespace under your account.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239076', 'abilityTreeNodes' => ['FEATUREdcdnGMYWU5'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'Namespace', 'in' => 'query', 'schema' => ['description' => 'The name specified when you called [CreatevNamespace](~~2850317~~).', 'type' => 'string', 'required' => true, 'example' => 'test_namespace', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The page size. Default value: **50**. Maximum value: **100**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '50', 'example' => '50', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. The product of PageNumber and PageSize cannot exceed 50000.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'example' => '10', 'title' => ''], ], [ 'name' => 'Prefix', 'in' => 'query', 'schema' => ['description' => 'The prefix used to filter keys.', 'type' => 'string', 'required' => false, 'maxLength' => 1000, 'example' => 'prefix-', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', 'title' => ''], 'PageSize' => ['description' => 'The number of records per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '50', 'title' => ''], 'PageNumber' => ['description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], 'TotalCount' => ['description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int32', 'example' => '1024', 'title' => ''], 'Keys' => [ 'description' => 'The list of key-value pairs retrieved in this traversal.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the key.', 'type' => 'string', 'example' => 'Key1', 'title' => ''], 'UpdateTime' => ['description' => 'The time when the key was last updated, in ISO 8601 format (for example, 2024-01-01T00:00:00+Z).', 'type' => 'string', 'example' => '2021-12-13T07:46:03Z', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidAccount.Malformed', 'errorMessage' => 'The specified account is invalid.', 'description' => 'The account number is not entered correctly, for example, the input is empty.'], ['errorCode' => 'InvalidNameSpace.Malformed', 'errorMessage' => 'The specified namespace is invalid.', 'description' => 'The bucket name is entered incorrectly, such as an empty string.'], ['errorCode' => 'InvalidKey.Malformed', 'errorMessage' => 'The specified key is invalid.', 'description' => 'Key name input error, such as entering an empty string.'], ['errorCode' => 'InvalidKey.ExceedsMaximum', 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', 'description' => 'The length of the requested key is too large.'], ['errorCode' => 'InvalidValue.ExceedsMaximum', 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', 'description' => 'The value deposited is too large.'], ], 403 => [ ['errorCode' => 'InvalidKey.ExceedsCapacity', 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', 'description' => 'The capacity of the storage space exceeds the limit.'], ['errorCode' => 'Unauthorized.InvalidParameters', 'errorMessage' => 'The specified authentication parameters are invalid.', 'description' => 'Authentication parameter input error.'], ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'InvalidAccount.NotFound', 'errorMessage' => 'The specified account does not exist.', 'description' => 'The specified account does not exist.'], ['errorCode' => 'InvalidNameSpace.NotFound', 'errorMessage' => 'The specified namespace does not exist.', 'description' => ''], ['errorCode' => 'InvalidKey.NotFound', 'errorMessage' => 'The specified key does not exist.', 'description' => 'The specified key-value pair does not exist.'], ], 406 => [ ['errorCode' => 'InvalidNameSpace.Duplicate', 'errorMessage' => 'The specified namespace already exists.', 'description' => 'Specified storage space'], ['errorCode' => 'InvalidNameSpace.QuotaFull', 'errorMessage' => 'The maximum number of namespaces is exceeded.', 'description' => 'The number of storage spaces exceeds the capacity limit.'], ], 429 => [ ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests are submitted.', 'description' => 'Submissions are too frequent, please try again later'], ['errorCode' => 'TooQuickRequests', 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', 'description' => 'The modification or deletion of key-value pairs is too frequent.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\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}","type":"json"}]', 'title' => 'List key-value pairs in a KV storage namespace', 'changeSet' => [ ['createdAt' => '2024-09-20T13:49:27.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListKvs'], ], ], 'ramActions' => [], ], 'ListLists' => [ 'summary' => 'Lists all custom lists under the account along with their details. You can use query parameters to filter results and paginate to retrieve a specific set of lists.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239589', 'abilityTreeNodes' => ['FEATUREdcdnL8HX1L'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'QueryArgs', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The query parameters passed in JSON format, which contain various filter conditions.', 'type' => 'object', 'properties' => [ 'IdLike' => ['title' => '', 'description' => 'The value used to fuzzy match list IDs.', 'type' => 'string', 'example' => '40000001', 'required' => false], 'NameLike' => ['title' => '', 'description' => 'The value used to fuzzy match list names.', 'type' => 'string', 'example' => 'example', 'required' => false], 'DescriptionLike' => ['title' => '', 'description' => 'The value used to fuzzy match list descriptions.', 'type' => 'string', 'example' => 'a custom list', 'required' => false], 'ItemLike' => ['title' => '', 'description' => 'The value used to fuzzy match list content.', 'type' => 'string', 'example' => '10.1.1.1', 'required' => false], 'NameItemLike' => ['title' => '', 'description' => 'The value used to fuzzy match both list content and list names simultaneously.', 'type' => 'string', 'example' => '10.1.1.1', 'required' => false], 'Kind' => ['description' => 'The kind of the custom list.', 'type' => 'string', 'example' => 'ip', 'required' => false, 'title' => ''], 'OrderBy' => ['title' => '', 'description' => 'The column by which to sort the results.', 'type' => 'string', 'example' => 'id', 'required' => false], 'Desc' => ['title' => '', 'description' => 'Specifies whether to sort the results in descending order.', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], 'required' => false, 'example' => 'ListLists', ], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number for paging.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page for paging.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'TotalCount' => ['title' => '', 'description' => 'The total number of records after filtering.', 'type' => 'integer', 'format' => 'int32', 'example' => '5'], 'Usage' => ['title' => '', 'description' => 'The amount of usage consumed by the user.', 'type' => 'integer', 'format' => 'int64', 'example' => '10'], 'Lists' => [ 'title' => '', 'description' => 'The array of list information, which contains the paginated list data.', 'type' => 'array', 'items' => [ 'title' => '', 'description' => 'The list information.', 'type' => 'object', 'properties' => [ 'UpdateTime' => ['title' => '', 'description' => 'The time when the list was last modified.'."\n" ."\n" .'Format: RFC 3339 / ISO 8601, UTC time zone (ending with Z).'."\n" ."\n" .'Example: 2026-06-10T14:23:45Z', 'type' => 'string', 'example' => '2024-01-01T00:00:00Z'], 'Id' => ['title' => '', 'description' => 'The ID of the custom list. You can obtain the ID by calling the [ListLists](~~2850217~~) operation.', 'type' => 'integer', 'format' => 'int64', 'example' => '40000001'], 'Name' => ['title' => '', 'description' => 'The list name.', 'type' => 'string', 'example' => 'example'], 'Kind' => ['title' => '', 'description' => 'The kind of the list.', 'type' => 'string', 'example' => 'ip'], 'Description' => ['title' => '', 'description' => 'The list description.', 'type' => 'string', 'required' => false, 'example' => 'a custom list', 'maxLength' => 1024, 'pattern' => '', 'default' => ''], 'Length' => ['title' => '', 'description' => 'The length of the list content array, which indicates the number of items in the list.', 'type' => 'integer', 'format' => 'int64', 'example' => '100'], ], 'example' => '', ], 'example' => '', ], 'PageNumber' => ['title' => '', 'description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'PageSize' => ['title' => '', 'description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], 'ItemsUsage' => ['description' => 'The total item usage.', 'type' => 'integer', 'format' => 'int64', 'example' => '5000', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"TotalCount\\": 5,\\n \\"Usage\\": 10,\\n \\"Lists\\": [\\n {\\n \\"UpdateTime\\": \\"2024-01-01T00:00:00Z\\",\\n \\"Id\\": 40000001,\\n \\"Name\\": \\"example\\",\\n \\"Kind\\": \\"ip\\",\\n \\"Description\\": \\"a custom list\\",\\n \\"Length\\": 100\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"ItemsUsage\\": 5000\\n}","type":"json"}]', 'title' => 'List custom lists', 'changeSet' => [ ['createdAt' => '2024-09-25T07:01:32.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2024-09-18T06:56:37.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListLists'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListLists', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ListLoadBalancerOriginStatus' => [ 'summary' => 'Query the status of origins in load balancers', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238350', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1159101787****', 'title' => ''], ], [ 'name' => 'LoadBalancerIds', 'in' => 'query', 'schema' => ['description' => 'Load balancer ID. When querying multiple load balancers, separate the IDs with commas. A maximum of 100 load balancer IDs can be passed at once. Load balancer IDs can be obtained by calling the [ListLoadBalancers](~~2868897~~) interface.', 'type' => 'string', 'required' => true, 'example' => '99874066052****,100892832360****', 'title' => ''], ], [ 'name' => 'PoolType', 'in' => 'query', 'schema' => ['description' => 'Source address pool type. Various source address pools are configured under the load balancer, including default pools, fallback pools, and primary region pools. Only the status of origins in the default pool affects the status of the load balancer itself. Passing `default_pool` means only querying the status of origins in the default source address pool under the load balancer.', 'type' => 'string', 'required' => false, 'example' => 'default_pool', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID, used for tracking the request.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9'], 'OriginStatus' => [ 'description' => 'List of origin statuses under the load balancer.', 'type' => 'array', 'items' => [ 'description' => 'Information about the origin status.', 'type' => 'object', 'properties' => [ 'LoadBalancerId' => ['description' => 'ID of the load balancer.', 'type' => 'integer', 'format' => 'int64', 'example' => '99874066052****', 'title' => ''], 'OriginId' => ['description' => 'ID of the origin.', 'type' => 'integer', 'format' => 'int64', 'example' => '99750209487****', 'title' => ''], 'PoolId' => ['description' => 'ID of the source address pool.', 'type' => 'integer', 'format' => 'int64', 'example' => '99750209487****', 'title' => ''], 'Status' => ['description' => 'Status of the origin:'."\n" .'- Healthy(healthy): The probe result is available.'."\n" .'- Unhealthy(unhealthy): The probe result is unavailable.'."\n" .'- Unknown(unknown): Unknown, the monitor has not yet probed.'."\n" .'- Undetected(undetected): The load balancer to which the origin belongs is not bound to a monitor.', 'type' => 'string', 'example' => 'healthy', 'title' => ''], 'Reason' => ['description' => 'Reason for the probe failure.', 'type' => 'string', 'example' => 'TCP connection error', 'title' => ''], 'PoolType' => ['description' => 'The origin pool to which the source belongs, under this load balancer. Only \'default_pool\' (default address pool) will be displayed; other types will return an empty string.', 'type' => 'string', 'example' => 'default_pool', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'LoadBalancerNotExist', 'errorMessage' => 'The specified load balancer name is invalid or load balancing is not enabled for your website.Make sure that you specify a valid load balancer name and load balancing is enabled. Then, try again.', 'description' => 'The specified load balancer name is invalid or load balancing is not enabled for your website.Make sure that you specify a valid load balancer name and load balancing is enabled. Then, try again.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"OriginStatus\\": [\\n {\\n \\"LoadBalancerId\\": 0,\\n \\"OriginId\\": 0,\\n \\"PoolId\\": 0,\\n \\"Status\\": \\"healthy\\",\\n \\"Reason\\": \\"TCP connection error\\",\\n \\"PoolType\\": \\"default_pool\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Query the Status of Origins under Load Balancers', 'description' => 'Query the status of origins under load balancers. You can pass multiple load balancer IDs at once, separated by commas. This is for load balancers that have monitors configured. It will probe the origins in the source address pools used by the load balancers and record the current status of each origin.'."\n" ."\n" .'- Healthy(healthy): The probe result is available.'."\n" .'- Unhealthy(unhealthy): The probe result is unavailable.'."\n" .'- Unknown(unknown): Unknown, the monitor has not yet probed.'."\n" .'- Undetected(undetected): The load balancer to which the origin belongs is not bound to a monitor.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListLoadBalancerOriginStatus'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListLoadBalancerOriginStatus', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'ListLoadBalancerRegions' => [ 'summary' => 'Query Load Balancer Region List', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239637', 'abilityTreeNodes' => ['FEATUREdcdnWQK30N'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'Page number.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'Page size.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1024', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID', 'type' => 'string', 'example' => '81A5E222-24BF-17EF-9E80-A68D9B8F363D'], 'Regions' => [ 'description' => 'List of region information', 'type' => 'array', 'items' => [ 'description' => 'Region information', 'type' => 'object', 'properties' => [ 'RegionCode' => ['description' => 'Primary region code', 'type' => 'string', 'example' => 'SEAS', 'title' => ''], 'RegionEnName' => ['description' => 'Primary region English full name', 'type' => 'string', 'example' => 'South East Asia', 'title' => ''], 'RegionCnName' => ['description' => 'Primary region Chinese full name', 'type' => 'string', 'example' => '东南亚', 'title' => ''], 'SubRegions' => [ 'description' => 'List of secondary region information', 'type' => 'array', 'items' => [ 'description' => 'Secondary region information', 'type' => 'object', 'properties' => [ 'SubRegionCode' => ['description' => 'Secondary region code', 'type' => 'string', 'example' => 'ID', 'title' => ''], 'SubRegionEnName' => ['description' => 'Secondary region English full name', 'type' => 'string', 'example' => 'Indonesia', 'title' => ''], 'SubRegionCnName' => ['description' => 'Secondary region Chinese full name', 'type' => 'string', 'example' => '印度尼西亚', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['title' => 'TotalCount本次请求条件下的数据总量,此参数为可选参数,默认可不返回', 'description' => 'Page number', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'PageSize' => ['description' => 'Number of records per page', 'type' => 'integer', 'format' => 'int32', 'example' => '1024', 'title' => ''], 'TotalCount' => ['title' => 'MaxResults本次请求所返回的最大记录条数', 'description' => 'Total number of records', 'type' => 'integer', 'format' => 'int32', 'example' => '12'], 'TotalPage' => ['description' => 'Total number of pages', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 500 => [ ['errorCode' => 'QueryDBError', 'errorMessage' => 'An internal exception occurred when query data, please try again later.', 'description' => 'An internal exception occurred when query data, please try again later.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Query Load Balancer Region Information', 'description' => 'When creating a load balancer \'based on country/region scheduling\' strategy through OpenAPI, use the code of primary or secondary regions to represent traffic from this geographical area.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListLoadBalancerRegions'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:ListLoadBalancerRegions', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"81A5E222-24BF-17EF-9E80-A68D9B8F363D\\",\\n \\"Regions\\": [\\n {\\n \\"RegionCode\\": \\"SEAS\\",\\n \\"RegionEnName\\": \\"South East Asia\\",\\n \\"RegionCnName\\": \\"东南亚\\",\\n \\"SubRegions\\": [\\n {\\n \\"SubRegionCode\\": \\"ID\\",\\n \\"SubRegionEnName\\": \\"Indonesia\\",\\n \\"SubRegionCnName\\": \\"印度尼西亚\\"\\n }\\n ]\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 1024,\\n \\"TotalCount\\": 12,\\n \\"TotalPage\\": 1\\n}","type":"json"}]', ], 'ListLoadBalancers' => [ 'summary' => 'Queries the list of load balancers under a site and returns load balancing information. You can query by load balancer name. Paging is supported.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238617', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number settings for the paging query. The value must be greater than or equal to 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page for the paging query. Valid values: 1 to 500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20', 'title' => ''], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The load balancing name. You can query by name.', 'type' => 'string', 'required' => false, 'example' => 'lb.example.com', 'title' => ''], ], [ 'name' => 'MatchType', 'in' => 'query', 'schema' => ['description' => 'The name matching strategy when querying by name. Valid values:'."\n" ."\n" .'- fuzzy: fuzzy match.'."\n" .'- exact: exact match.', 'type' => 'string', 'required' => false, 'example' => 'fuzzy', 'title' => ''], ], [ 'name' => 'OrderBy', 'in' => 'query', 'schema' => ['description' => 'The sort field. Currently, only sorting by ID is supported. id indicates ascending order by ID, and -id indicates descending order by ID. The ID value is positively correlated with the creation time. If this parameter is not specified, the default sort order is descending by ID.', 'type' => 'string', 'required' => false, 'example' => 'id', 'title' => ''], ], [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~ListSites~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '21655860979****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-A198-72F8FD6DA2FE', 'title' => ''], 'LoadBalancers' => [ 'description' => 'The list of load balancing instances returned in array format.', 'type' => 'array', 'items' => [ 'description' => 'The details of a load balancing instance.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'The unique identity ID of the load balancing instance.', 'type' => 'integer', 'format' => 'int64', 'example' => '998676487607104', 'title' => ''], 'Name' => ['description' => 'The name of the load balancing instance.', 'type' => 'string', 'example' => 'lb.example.com'."\n", 'title' => ''], 'SiteId' => ['description' => 'The ID of the site to which the load balancing instance belongs.', 'type' => 'integer', 'format' => 'int64', 'example' => '1159101787****', 'title' => ''], 'Enabled' => ['description' => 'Indicates whether the load balancing instance is enabled. Valid values:'."\n" ."\n" .'- true: Enabled.'."\n" .'- false: Disabled.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'Ttl' => ['description' => 'The TTL value, which specifies the time-to-live of the DNS record. Default value: 30.', 'type' => 'integer', 'format' => 'int32', 'example' => '30', 'title' => ''], 'SessionAffinity' => ['description' => 'The session persistence mode. Valid values:'."\n" .'- off: Disabled.'."\n" .'- ip: IP-based session persistence.'."\n" .'- cookie: Cookie-based session persistence.'."\n" .'- http_header: HTTP header-based session persistence.', 'type' => 'string', 'example' => 'ip', 'title' => ''], 'FallbackPool' => ['description' => 'The ID of the fallback address pool. When all other address pools are unavailable, traffic is redirected to this address pool.', 'type' => 'integer', 'format' => 'int64', 'example' => '96228666776****', 'title' => ''], 'SteeringPolicy' => ['description' => 'The load balancing policy.', 'type' => 'string', 'example' => 'order', 'title' => ''], 'Description' => ['description' => 'The description of the load balancing instance.', 'type' => 'string', 'example' => 'test', 'title' => ''], 'AdaptiveRouting' => [ 'description' => 'The cross-origin address pool back-to-origin configuration.', 'type' => 'object', 'properties' => [ 'FailoverAcrossPools' => ['description' => 'Indicates whether cross-origin address pool failover is enabled. Valid values:'."\n" ."\n" .'- true: Enabled.'."\n" .'- false: Disabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'OriginLevelRetry' => ['description' => 'Specifies whether to retry the next IP address when back-to-origin fails and the origin server is a domain name that resolves to multiple IP addresses.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'title' => '', 'example' => '', ], 'DefaultPools' => [ 'description' => 'The list of default address pool IDs.', 'type' => 'array', 'items' => ['description' => 'The default address pool.', 'type' => 'integer', 'format' => 'int64', 'example' => '96228666776****', 'title' => ''], 'title' => '', 'example' => '', ], 'RandomSteering' => [ 'description' => 'The weighted round-robin configuration, which controls the traffic distribution weight across different address pools.', 'type' => 'object', 'properties' => [ 'DefaultWeight' => ['description' => 'The weight configuration for each backend server pool. The key is the pool ID and the value is the weight coefficient. The weight coefficient represents the relative proportion of traffic distribution.', 'type' => 'integer', 'format' => 'int32', 'example' => '50'."\n", 'title' => ''], 'PoolWeights' => [ 'description' => 'The weight configuration for each backend server pool. The key is the pool ID and the value is the weight coefficient.', 'type' => 'object', 'additionalProperties' => ['description' => 'The weight value. Valid values: 0 to 100. A value of 0 indicates that no traffic is routed to the origin server.', 'type' => 'integer', 'format' => 'int32', 'example' => '50'."\n", 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'Rules' => [ 'description' => 'The list of rule configurations that define behaviors under specific conditions.', 'type' => 'array', 'items' => [ 'description' => 'The rule configuration in the rule set.', 'type' => 'object', 'properties' => [ 'FixedResponse' => [ 'description' => 'The fixed response content returned after a rule is matched.', 'type' => 'object', 'properties' => [ 'ContentType' => ['description' => 'The Content-Type field in the HTTP header.', 'type' => 'string', 'example' => 'application/json'."\n", 'title' => ''], 'Location' => ['description' => 'The location field in the HTTP response.', 'type' => 'string', 'example' => 'http://www.example.com/index.html'."\n", 'title' => ''], 'MessageBody' => ['description' => 'The response body value.', 'type' => 'string', 'example' => 'Hello World.'."\n", 'title' => ''], 'StatusCode' => ['description' => 'The status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], ], 'title' => '', 'example' => '', ], 'Overrides' => ['description' => 'The load balancing configuration overrides applied after a rule is matched. The configured fields override the corresponding fields in the load balancer configuration.', 'type' => 'any', 'example' => '{'."\n" .' "adaptive_routing": {'."\n" .' "failover_across_pools": true'."\n" .' },'."\n" .' "sub_region_pools": {'."\n" .' "GB": ['."\n" .' 96228666776****'."\n" .' ],'."\n" .' "US": ['."\n" .' 96228666776****'."\n" .' ]'."\n" .' },'."\n" .' "default_pools": ['."\n" .' 96228666776****,'."\n" .' 96228666776****'."\n" .' ],'."\n" .' "fallback_pool": 96228666776****,'."\n" .' "location_strategy": {'."\n" .' "mode": "resolver_ip",'."\n" .' "prefer_ecs": "always"'."\n" .' },'."\n" .' "random_steering": {'."\n" .' "default_weight": 30,'."\n" .' "pool_weights": {'."\n" .' "96228666776****": 70,'."\n" .' "96228666776****": 80'."\n" .' }'."\n" .' },'."\n" .' "region_pools": {'."\n" .' "ENAM": ['."\n" .' 96228666776****,'."\n" .' 92843536908****'."\n" .' ],'."\n" .' "WNAM": ['."\n" .' 92843536908****'."\n" .' ]'."\n" .' },'."\n" .' "session_affinity": "cookie",'."\n" .' "session_affinity_attributes": {'."\n" .' "drain_duration": 100,'."\n" .' "headers": ["none"],'."\n" .' "require_all_headers": false,'."\n" .' "samesite": "Auto",'."\n" .' "secure": "Auto",'."\n" .' "zero_downtime_failover": "sticky"'."\n" .' },'."\n" .' "session_affinity_ttl": 1800,'."\n" .' "steering_policy": "dynamic_latency",'."\n" .' "ttl": 30'."\n" .' }', 'title' => ''], 'Rule' => ['description' => 'The rule content, which uses conditional expressions to match user requests. This parameter does not need to be set when adding a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: Set the value to true.'."\n" .'- Match specific requests: Set the value to a custom expression, such as (http.host eq \\"video.example.com\\").', 'type' => 'string', 'example' => 'http.request.uri.path contains "/testing"'."\n", 'title' => ''], 'RuleName' => ['description' => 'The rule name. This parameter does not need to be set when adding a global configuration.', 'type' => 'string', 'example' => 'r2', 'title' => ''], 'RuleEnable' => ['description' => 'The rule switch. This parameter does not need to be set when adding a global configuration. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Sequence' => ['description' => 'The rule execution order. A higher value indicates higher priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Terminates' => ['description' => 'Indicates whether to stop executing subsequent rules. Valid values:'."\n" ."\n" .'- true: Yes.'."\n" .'- false: No. This is the default value.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'Monitor' => [ 'description' => 'The monitor configuration.', 'type' => 'object', 'properties' => [ 'Type' => ['description' => 'The monitor protocol type, such as HTTP, used for health checks. A value of off indicates that no health check is performed.', 'type' => 'string', 'example' => 'HTTP'."\n", 'title' => ''], 'Method' => ['description' => 'The method used for the health check.', 'type' => 'string', 'example' => 'GET'."\n", 'title' => ''], 'Port' => ['description' => 'The target port.', 'type' => 'integer', 'format' => 'int32', 'example' => '80'."\n", 'title' => ''], 'Path' => ['description' => 'The path.', 'type' => 'string', 'example' => '/'."\n", 'title' => ''], 'Interval' => ['description' => 'The interval of the health check, in seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '60', 'title' => ''], 'ExpectedCodes' => ['description' => 'The expected status codes for a successful HTTP response, such as 200,202.', 'type' => 'string', 'example' => '200,202'."\n", 'title' => ''], 'FollowRedirects' => ['description' => 'Indicates whether to follow redirects. Valid values:'."\n" ."\n" .'- true: Yes.'."\n" .'- false: No.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'ConsecutiveUp' => ['description' => 'The number of consecutive successful probes required to consider the check successful, such as 3.', 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''], 'ConsecutiveDown' => ['description' => 'The number of consecutive failed probes required to consider the check failed, such as 5.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], 'Header' => ['description' => 'The HTTP header information included in the probe request.', 'type' => 'any', 'example' => '{'."\n" .' "host": ['."\n" .' "example1.com",'."\n" .' "example2.com"'."\n" .' ]'."\n" .' }', 'title' => ''], 'Timeout' => ['description' => 'The timeout period of the health check, in seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], 'MonitoringRegion' => ['description' => 'The region where the probe nodes are located. Default value: Global. Valid values:'."\n" ."\n" .'- Global: worldwide.'."\n" .'- ChineseMainland: the Chinese mainland.'."\n" .'- OutsideChineseMainland: worldwide (excluding the Chinese mainland).', 'type' => 'string', 'example' => 'Global', 'title' => ''], ], 'title' => '', 'example' => '', ], 'Status' => ['description' => 'The status of the load balancing instance.', 'type' => 'string', 'example' => 'healthy', 'title' => ''], 'SubRegionPools' => ['description' => 'The address pools mapped to secondary regions. When multiple secondary regions share the same set of address pools, the secondary region names can be concatenated with commas as the key.', 'type' => 'any', 'example' => '{"AL,MO": [92298024898****],"CN-SH,CN-SX,CN-SC":[92304347804****,92843536908****]}', 'title' => ''], 'RegionPools' => ['description' => 'The address pools mapped to primary regions.', 'type' => 'any', 'example' => '{'."\n" .' "ENAM": ['."\n" .' 12345678****'."\n" .' ],'."\n" .' "WNAM": ['."\n" .' 23456789****,'."\n" .' 23456789****'."\n" .' ]'."\n" .'}', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The page number, which is the same as the PageNumber request parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], 'TotalPage' => ['description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-A198-72F8FD6DA2FE\\",\\n \\"LoadBalancers\\": [\\n {\\n \\"Id\\": 998676487607104,\\n \\"Name\\": \\"lb.example.com\\\\n\\",\\n \\"SiteId\\": 0,\\n \\"Enabled\\": false,\\n \\"Ttl\\": 30,\\n \\"SessionAffinity\\": \\"ip\\",\\n \\"FallbackPool\\": 0,\\n \\"SteeringPolicy\\": \\"order\\",\\n \\"Description\\": \\"test\\",\\n \\"AdaptiveRouting\\": {\\n \\"FailoverAcrossPools\\": true,\\n \\"OriginLevelRetry\\": true\\n },\\n \\"DefaultPools\\": [\\n 0\\n ],\\n \\"RandomSteering\\": {\\n \\"DefaultWeight\\": 50,\\n \\"PoolWeights\\": {\\n \\"key\\": 50\\n }\\n },\\n \\"Rules\\": [\\n {\\n \\"FixedResponse\\": {\\n \\"ContentType\\": \\"application/json\\\\n\\",\\n \\"Location\\": \\"http://www.example.com/index.html\\\\n\\",\\n \\"MessageBody\\": \\"Hello World.\\\\n\\",\\n \\"StatusCode\\": 200\\n },\\n \\"Overrides\\": \\"{\\\\n \\\\\\"adaptive_routing\\\\\\": {\\\\n \\\\\\"failover_across_pools\\\\\\": true\\\\n },\\\\n \\\\\\"sub_region_pools\\\\\\": {\\\\n \\\\\\"GB\\\\\\": [\\\\n 96228666776****\\\\n ],\\\\n \\\\\\"US\\\\\\": [\\\\n 96228666776****\\\\n ]\\\\n },\\\\n \\\\\\"default_pools\\\\\\": [\\\\n 96228666776****,\\\\n 96228666776****\\\\n ],\\\\n \\\\\\"fallback_pool\\\\\\": 96228666776****,\\\\n \\\\\\"location_strategy\\\\\\": {\\\\n \\\\\\"mode\\\\\\": \\\\\\"resolver_ip\\\\\\",\\\\n \\\\\\"prefer_ecs\\\\\\": \\\\\\"always\\\\\\"\\\\n },\\\\n \\\\\\"random_steering\\\\\\": {\\\\n \\\\\\"default_weight\\\\\\": 30,\\\\n \\\\\\"pool_weights\\\\\\": {\\\\n \\\\\\"96228666776****\\\\\\": 70,\\\\n \\\\\\"96228666776****\\\\\\": 80\\\\n }\\\\n },\\\\n \\\\\\"region_pools\\\\\\": {\\\\n \\\\\\"ENAM\\\\\\": [\\\\n 96228666776****,\\\\n 92843536908****\\\\n ],\\\\n \\\\\\"WNAM\\\\\\": [\\\\n 92843536908****\\\\n ]\\\\n },\\\\n \\\\\\"session_affinity\\\\\\": \\\\\\"cookie\\\\\\",\\\\n \\\\\\"session_affinity_attributes\\\\\\": {\\\\n \\\\\\"drain_duration\\\\\\": 100,\\\\n \\\\\\"headers\\\\\\": [\\\\\\"none\\\\\\"],\\\\n \\\\\\"require_all_headers\\\\\\": false,\\\\n \\\\\\"samesite\\\\\\": \\\\\\"Auto\\\\\\",\\\\n \\\\\\"secure\\\\\\": \\\\\\"Auto\\\\\\",\\\\n \\\\\\"zero_downtime_failover\\\\\\": \\\\\\"sticky\\\\\\"\\\\n },\\\\n \\\\\\"session_affinity_ttl\\\\\\": 1800,\\\\n \\\\\\"steering_policy\\\\\\": \\\\\\"dynamic_latency\\\\\\",\\\\n \\\\\\"ttl\\\\\\": 30\\\\n }\\",\\n \\"Rule\\": \\"http.request.uri.path contains \\\\\\"/testing\\\\\\"\\\\n\\",\\n \\"RuleName\\": \\"r2\\",\\n \\"RuleEnable\\": \\"on\\",\\n \\"Sequence\\": 1,\\n \\"Terminates\\": true\\n }\\n ],\\n \\"Monitor\\": {\\n \\"Type\\": \\"HTTP\\\\n\\",\\n \\"Method\\": \\"GET\\\\n\\",\\n \\"Port\\": 80,\\n \\"Path\\": \\"/\\\\n\\",\\n \\"Interval\\": 60,\\n \\"ExpectedCodes\\": \\"200,202\\\\n\\",\\n \\"FollowRedirects\\": true,\\n \\"ConsecutiveUp\\": 3,\\n \\"ConsecutiveDown\\": 5,\\n \\"Header\\": \\"{\\\\n \\\\\\"host\\\\\\": [\\\\n \\\\\\"example1.com\\\\\\",\\\\n \\\\\\"example2.com\\\\\\"\\\\n ]\\\\n }\\",\\n \\"Timeout\\": 5,\\n \\"MonitoringRegion\\": \\"Global\\"\\n },\\n \\"Status\\": \\"healthy\\",\\n \\"SubRegionPools\\": \\"{\\\\\\"AL,MO\\\\\\": [92298024898****],\\\\\\"CN-SH,CN-SX,CN-SC\\\\\\":[92304347804****,92843536908****]}\\",\\n \\"RegionPools\\": \\"{\\\\n \\\\\\"ENAM\\\\\\": [\\\\n 12345678****\\\\n ],\\\\n \\\\\\"WNAM\\\\\\": [\\\\n 23456789****,\\\\n 23456789****\\\\n ]\\\\n}\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 100,\\n \\"TotalPage\\": 10\\n}","type":"json"}]', 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Query load balancers under a site', 'changeSet' => [ ['createdAt' => '2025-06-16T02:25:11.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-02-13T01:34:54.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListLoadBalancers'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListLoadBalancers', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListManagedRulesGroups' => [ 'summary' => 'Lists all WAF managed rule groups under the current account. You can call this operation to retrieve a list of all rule groups and their summary information.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239646', 'abilityTreeNodes' => ['FEATUREdcdnL8HX1L'], ], 'parameters' => [ [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number for the paged query.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page for the paged query.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'TotalCount' => ['title' => '', 'description' => 'The total number of records after filtering.', 'type' => 'integer', 'format' => 'int32', 'example' => '5'], 'ManagedRulesGroups' => [ 'title' => '', 'description' => 'The list of managed rule groups.', 'type' => 'array', 'items' => [ 'title' => '', 'description' => 'The managed rule group information.', 'type' => 'object', 'properties' => [ 'Name' => ['title' => '', 'description' => 'The name of the managed rule group.', 'type' => 'string', 'example' => 'example'], 'RuleCount' => ['description' => 'The number of rules in the managed rule group.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000', 'title' => ''], ], 'example' => '', ], 'example' => '', ], 'PageNumber' => ['title' => '', 'description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'PageSize' => ['title' => '', 'description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"TotalCount\\": 5,\\n \\"ManagedRulesGroups\\": [\\n {\\n \\"Name\\": \\"example\\",\\n \\"RuleCount\\": 1000\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20\\n}","type":"json"}]', 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'List WAF managed rule groups', 'changeSet' => [ ['createdAt' => '2024-12-26T15:07:29.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-29T05:46:33.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2024-09-18T06:56:37.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListManagedRulesGroups'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListManagedRulesGroups', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ListNetworkOptimizations' => [ 'summary' => 'Queries multiple network optimization configurations.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257562', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~ListSites~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1231231221****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '3528160969****', 'title' => ''], ], [ 'name' => 'ConfigType', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The configuration type. You can use this parameter to query global or rule configurations. Valid values:'."\n" ."\n" .'- global: queries global configurations.'."\n" .'- rule: queries rule configurations.'."\n" ."\n" .'This parameter is optional. If you do not specify this parameter, both global and rule configurations are returned.', 'enumValueTitles' => ['rule' => 'rule configuration.', 'global' => 'global configuration.'], 'type' => 'string', 'enum' => ['global', 'rule'], 'required' => false, 'example' => 'global', ], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The rule name. You can use this parameter to query the rule that matches the specified name.', 'type' => 'string', 'required' => false, 'example' => 'test'], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number for a paged query. The value must be greater than or equal to 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page for a paged query. Valid values: 1 to 500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site. For sites with version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F'], 'Configs' => [ 'description' => 'The configurations returned in the response body.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '395386449776640', 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the site configuration. For sites with configuration version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Sequence' => ['description' => 'The rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RuleEnable' => ['description' => 'The rule switch. You do not need to set this parameter when adding a global configuration. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'The rule content, which uses conditional expressions to match user requests. You do not need to set this parameter when adding a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: set the value to true.'."\n" .'- Match specified requests: set the value to a custom expression, such as (http.host eq \\"video.example.com\\").', 'type' => 'string', 'example' => '(http.host eq \\"video.example.com\\")'."\n", 'title' => ''], 'RuleName' => ['description' => 'The rule name. You do not need to set this parameter when adding a global configuration.', 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'ConfigType' => ['description' => 'The configuration type. You can use this parameter to query global or rule configurations. Valid values:'."\n" ."\n" .'- global: global configuration.'."\n" .'- rule: rule configuration.', 'type' => 'string', 'example' => 'global', 'title' => ''], 'SmartRouting' => ['description' => 'Specifies whether to enable the smart routing service. This feature is disabled by default. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Http2Origin' => ['description' => 'Specifies whether to enable HTTP/2 back-to-origin. This feature is disabled by default. Valid values:'."\n" ."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Websocket' => ['description' => 'Specifies whether to enable WebSocket. This feature is enabled by default. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Grpc' => ['description' => 'Specifies whether to enable gRPC. This feature is disabled by default. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'UploadMaxFilesize' => ['description' => 'The maximum upload file size, in MB. Valid values: 100 to 500.', 'type' => 'string', 'example' => '500', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The current page number, which is the same as the PageNumber request parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'TotalCount' => ['description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], 'TotalPage' => ['description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\",\\n \\"Configs\\": [\\n {\\n \\"ConfigId\\": 395386449776640,\\n \\"SiteVersion\\": 1,\\n \\"Sequence\\": 1,\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\\\\\\\\\"video.example.com\\\\\\\\\\\\\\")\\\\n\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"ConfigType\\": \\"global\\",\\n \\"SmartRouting\\": \\"on\\",\\n \\"Http2Origin\\": \\"on\\",\\n \\"Websocket\\": \\"on\\",\\n \\"Grpc\\": \\"on\\",\\n \\"UploadMaxFilesize\\": \\"500\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 100,\\n \\"TotalPage\\": 2\\n}","type":"json"}]', 'title' => 'Query network optimization configurations', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListNetworkOptimizations'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:ListNetworkOptimizations', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListOriginCaCertificates' => [ 'summary' => 'Queries the list of origin server CA certificates.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '261742', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. Default value: 1.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Default value: **20**. Valid values: **1 to 500**.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '34DCBC8A-****-****-****-6DAA11D7DDBD', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''], 'PageNumber' => ['description' => 'The current page number.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''], 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456789****', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com ', 'title' => ''], 'Result' => [ 'description' => 'The result.', 'type' => 'array', 'items' => [ 'description' => 'The certificate information.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'The certificate ID.', 'type' => 'string', 'example' => 'babaabcd****', 'title' => ''], 'Name' => ['description' => 'The certificate name.', 'type' => 'string', 'example' => 'yourCertName', 'title' => ''], 'Status' => ['description' => 'The certificate status.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'Type' => ['description' => 'The certificate type.', 'type' => 'string', 'example' => 'upload', 'title' => ''], 'CommonName' => ['description' => 'The common name of the certificate.', 'type' => 'string', 'example' => 'www.example.com', 'title' => ''], 'NotBefore' => ['description' => 'The start time of the certificate validity period. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2023-11-26 16:00:00', 'title' => ''], 'NotAfter' => ['description' => 'The end time of the certificate validity period. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-03-31 02:08:00', 'title' => ''], 'Issuer' => ['description' => 'The certification authority.', 'type' => 'string', 'example' => 'GlobalSign nv-sa', 'title' => ''], 'SAN' => ['description' => 'The Subject Alternative Name (SAN) of the certificate.', 'type' => 'string', 'example' => 'www.example.com,*.example.com', 'title' => ''], 'SignatureAlgorithm' => ['description' => 'The signature algorithm of the certificate.', 'type' => 'string', 'example' => 'SHA256-RSA', 'title' => ''], 'PubkeyAlgorithm' => ['description' => 'The public key algorithm of the certificate.', 'type' => 'string', 'example' => 'RSA', 'title' => ''], 'CreateTime' => ['description' => 'The creation time. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-06-24 07:48:51', 'title' => ''], 'UpdateTime' => ['description' => 'The update time. Format: YYYY-MM-DD HH:MM:SS, in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-07-20 06:18:42', 'title' => ''], 'SerialNumber' => ['description' => 'The certificate serial number.', 'type' => 'string', 'example' => 'babaded901474b9693acf530e0fb1d**', 'title' => ''], 'FingerprintSha256' => ['description' => 'The SHA-256 fingerprint of the certificate.', 'type' => 'string', 'example' => '1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456a****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.', 'description' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"34DCBC8A-****-****-****-6DAA11D7DDBD\\",\\n \\"TotalCount\\": 20,\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"SiteId\\": 0,\\n \\"SiteName\\": \\"example.com \\",\\n \\"Result\\": [\\n {\\n \\"Id\\": \\"babaabcd****\\",\\n \\"Name\\": \\"yourCertName\\",\\n \\"Status\\": \\"OK\\",\\n \\"Type\\": \\"upload\\",\\n \\"CommonName\\": \\"www.example.com\\",\\n \\"NotBefore\\": \\"2023-11-26 16:00:00\\",\\n \\"NotAfter\\": \\"2024-03-31 02:08:00\\",\\n \\"Issuer\\": \\"GlobalSign nv-sa\\",\\n \\"SAN\\": \\"www.example.com,*.example.com\\",\\n \\"SignatureAlgorithm\\": \\"SHA256-RSA\\",\\n \\"PubkeyAlgorithm\\": \\"RSA\\",\\n \\"CreateTime\\": \\"2024-06-24 07:48:51\\",\\n \\"UpdateTime\\": \\"2024-07-20 06:18:42\\",\\n \\"SerialNumber\\": \\"babaded901474b9693acf530e0fb1d**\\",\\n \\"FingerprintSha256\\": \\"1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456a****\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'ListOriginCaCertificates', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListOriginCaCertificates'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListOriginCaCertificates', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListOriginClientCertificates' => [ 'summary' => 'Queries the list of back-to-origin client certificates at the domain name granularity.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '261754', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. Default value: **1**.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '20', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '3558df77-8a7a-4060-a900-2d7949403836', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''], 'PageNumber' => ['description' => 'The page number. Default value: **1**.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''], 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456789****', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com'."\n", 'title' => ''], 'Result' => [ 'description' => 'The list of certificate information.', 'type' => 'array', 'items' => [ 'description' => 'The certificate information.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'The certificate ID.', 'type' => 'string', 'example' => 'babaabcd****', 'title' => ''], 'Name' => ['description' => 'The certificate name.', 'type' => 'string', 'example' => 'yourCertName', 'title' => ''], 'Status' => ['description' => 'The certificate status.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'Type' => ['description' => 'The certificate type.', 'type' => 'string', 'example' => 'upload', 'title' => ''], 'CommonName' => ['description' => 'The common name of the certificate.', 'type' => 'string', 'example' => 'www.example.com ', 'title' => ''], 'NotBefore' => ['description' => 'The start time of the certificate validity period. The time is in the YYYY-MM-DD HH:MM:SS format in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2023-03-31 02:08:00', 'title' => ''], 'NotAfter' => ['description' => 'The end time of the certificate validity period. The time is in the YYYY-MM-DD HH:MM:SS format in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-03-31 02:08:00', 'title' => ''], 'Issuer' => ['description' => 'The certification authority.', 'type' => 'string', 'example' => 'DigiCert', 'title' => ''], 'SAN' => ['description' => 'The Subject Alternative Name (SAN) of the certificate.', 'type' => 'string', 'example' => 'www.example.com,*.example.com', 'title' => ''], 'SignatureAlgorithm' => ['description' => 'The signature algorithm of the certificate.', 'type' => 'string', 'example' => 'SHA256-RSA', 'title' => ''], 'PubkeyAlgorithm' => ['description' => 'The public key algorithm of the certificate.', 'type' => 'string', 'example' => 'RSA', 'title' => ''], 'CreateTime' => ['description' => 'The creation time. The time is in the YYYY-MM-DD HH:MM:SS format in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-06-24 07:48:51', 'title' => ''], 'UpdateTime' => ['description' => 'The update time. The time is in the YYYY-MM-DD HH:MM:SS format in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-07-20 06:18:42', 'title' => ''], 'SerialNumber' => ['description' => 'The certificate serial number.', 'type' => 'string', 'example' => 'babaded901474b9693acf530e0fb1d**', 'title' => ''], 'FingerprintSha256' => ['description' => 'The SHA-256 fingerprint of the certificate.', 'type' => 'string', 'example' => '1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456a****', 'title' => ''], 'Hostnames' => [ 'description' => 'The list of associated domain names.', 'type' => 'array', 'items' => ['description' => 'The domain name.', 'type' => 'string', 'example' => 'www.example.com', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.', 'description' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3558df77-8a7a-4060-a900-2d7949403836\\",\\n \\"TotalCount\\": 20,\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"SiteId\\": 0,\\n \\"SiteName\\": \\"example.com\\\\n\\",\\n \\"Result\\": [\\n {\\n \\"Id\\": \\"babaabcd****\\",\\n \\"Name\\": \\"yourCertName\\",\\n \\"Status\\": \\"OK\\",\\n \\"Type\\": \\"upload\\",\\n \\"CommonName\\": \\"www.example.com \\",\\n \\"NotBefore\\": \\"2023-03-31 02:08:00\\",\\n \\"NotAfter\\": \\"2024-03-31 02:08:00\\",\\n \\"Issuer\\": \\"DigiCert\\",\\n \\"SAN\\": \\"www.example.com,*.example.com\\",\\n \\"SignatureAlgorithm\\": \\"SHA256-RSA\\",\\n \\"PubkeyAlgorithm\\": \\"RSA\\",\\n \\"CreateTime\\": \\"2024-06-24 07:48:51\\",\\n \\"UpdateTime\\": \\"2024-07-20 06:18:42\\",\\n \\"SerialNumber\\": \\"babaded901474b9693acf530e0fb1d**\\",\\n \\"FingerprintSha256\\": \\"1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456a****\\",\\n \\"Hostnames\\": [\\n \\"www.example.com\\"\\n ]\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Query back-to-origin client certificates by domain name', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListOriginClientCertificates'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListOriginClientCertificates', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListOriginPools' => [ 'summary' => 'Lists all origin pools within a site. Supports pagination and searching by origin pool name (exact or fuzzy).', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238398', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. The default value is 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. The value must be an integer from 1 to 500. If you specify a value greater than 500, the system uses 500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20', 'title' => ''], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The name of the origin pool.', 'type' => 'string', 'required' => false, 'example' => 'pool1', 'title' => ''], ], [ 'name' => 'MatchType', 'in' => 'query', 'schema' => ['description' => 'Specifies how to match the origin pool name. The default is `exact`. Valid values:'."\n" ."\n" .'- `fuzzy`: Performs a fuzzy search.'."\n" ."\n" .'- `exact`: Performs an exact match.', 'type' => 'string', 'required' => false, 'example' => 'exact', 'title' => ''], ], [ 'name' => 'OrderBy', 'in' => 'query', 'schema' => ['description' => 'Specifies how the results are sorted. By default, results are sorted by ID in descending order. To sort by ID in ascending order, set this parameter to `id`. IDs increase with creation time.'."\n" ."\n" .'- id: Sorts by ID in descending order.'."\n" ."\n" .'- id: Sorts by ID in ascending order.', 'type' => 'string', 'required' => false, 'example' => 'id', 'title' => ''], ], [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. To get this ID, call the [ListSites](~~ListSites~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '151538882642832', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response schema.', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74', 'title' => ''], 'OriginPools' => [ 'description' => 'A list of origin pools.', 'type' => 'array', 'items' => [ 'description' => 'An origin pool.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'The ID of the origin pool.', 'type' => 'integer', 'format' => 'int64', 'example' => '1038520525196928', 'title' => ''], 'Name' => ['description' => 'The name of the origin pool. The name must be unique within a site.', 'type' => 'string', 'example' => 'pool1', 'title' => ''], 'SiteId' => ['description' => 'The ID of the site to which the origin pool belongs.', 'type' => 'integer', 'format' => 'int64', 'example' => '216558609793952', 'title' => ''], 'RecordName' => ['description' => 'The domain name assigned to the origin pool. This can be used as the origin address for records within the site.', 'type' => 'string', 'example' => 'pool1.example.com'."\n", 'title' => ''], 'Enabled' => ['description' => 'Indicates whether the origin pool is enabled.'."\n" ."\n" .'- `true`: Enabled.'."\n" ."\n" .'- `false`: Disabled.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'References' => [ 'description' => 'The resources that reference this origin pool. An origin pool is considered referenced when it is configured as an origin for a load balancer or a record.', 'type' => 'object', 'properties' => [ 'LoadBalancers' => [ 'description' => 'A list of load balancers that use this origin pool.', 'type' => 'array', 'items' => [ 'description' => 'A load balancer that uses this origin pool.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the load balancer.', 'type' => 'string', 'example' => 'lb1.example.com'."\n", 'title' => ''], 'Id' => ['description' => 'The ID of the load balancer.', 'type' => 'integer', 'format' => 'int64', 'example' => '998740660522624'."\n", 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'DnsRecords' => [ 'description' => 'A list of Layer 7 records that use this origin pool as an origin.', 'type' => 'array', 'items' => [ 'description' => 'A Layer 7 record that uses this origin pool as an origin.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the record.', 'type' => 'string', 'example' => 'www.example.com'."\n", 'title' => ''], 'Id' => ['description' => 'The ID of the record.', 'type' => 'integer', 'format' => 'int64', 'example' => '1042852886352704', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'IPARecords' => [ 'description' => 'A list of Layer 4 records that use this origin pool as an origin.', 'type' => 'array', 'items' => [ 'description' => 'A Layer 4 record that uses this origin pool as an origin.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the record.', 'type' => 'string', 'example' => 'ipa.example.com'."\n", 'title' => ''], 'Id' => ['description' => 'The ID of the record.', 'type' => 'integer', 'format' => 'int64', 'example' => '1042852886352704'."\n", 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'ReferenceLBCount' => ['description' => 'The number of load balancers that reference this origin pool.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], 'Origins' => [ 'description' => 'The origins in the origin pool.', 'type' => 'array', 'items' => [ 'description' => 'An origin in the origin pool.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'The ID of the origin.', 'type' => 'integer', 'format' => 'int64', 'example' => '997502094872132', 'title' => ''], 'Name' => ['description' => 'The name of the origin.', 'type' => 'string', 'example' => 'origin1', 'title' => ''], 'Address' => ['description' => 'The address of the origin, such as `www.example.com`.', 'type' => 'string', 'example' => 'www.example.com', 'title' => ''], 'Enabled' => ['description' => 'Indicates whether the origin is enabled.'."\n" ."\n" .'- `true`: Enabled.'."\n" ."\n" .'- `false`: Disabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Weight' => ['description' => 'The weight of the origin, an integer from 0 to 100.', 'type' => 'integer', 'format' => 'int32', 'example' => '50', 'title' => ''], 'Type' => ['description' => 'The type of the origin. Valid values:'."\n" ."\n" .'- `ip_domain`: An origin with an IP address or domain name.'."\n" ."\n" .'- `OSS`: An Alibaba Cloud Object Storage Service (OSS) origin.'."\n" ."\n" .'- `S3`: An AWS S3 origin.', 'type' => 'string', 'example' => 'S3', 'title' => ''], 'Header' => ['description' => 'The request header to include in origin fetches. Only the `Host` header is supported.', 'type' => 'any', 'example' => '{'."\n" .' "Host": ['."\n" .' "example.com"'."\n" .' ]'."\n" .' }', 'title' => ''], 'AuthConf' => [ 'description' => 'The authentication configuration. This parameter is required if the origin is an OSS or AWS S3 bucket that requires authentication.', 'type' => 'object', 'properties' => [ 'AuthType' => ['description' => 'The authentication type. Valid values:'."\n" ."\n" .'- `public`: Public read/write. Use for OSS or AWS S3 origins that have public access permissions.'."\n" ."\n" .'- `private_same_account`: Private, same account. Use for OSS origins that use private authentication within the same account.'."\n" ."\n" .'- `private_cross_account`: Private, cross-account. Use for OSS origins that use private authentication from a different account.'."\n" ."\n" .'- `private`: Private. Use for AWS S3 origins that require private authentication.', 'type' => 'string', 'example' => 'public', 'title' => ''], 'AccessKey' => ['description' => 'The Access Key ID required for private authentication.', 'type' => 'string', 'example' => 'yourAccessKeyID', 'title' => ''], 'SecretKey' => ['description' => 'The Secret Access Key required for private authentication.', 'type' => 'string', 'example' => 'yourAccessKeySecret', 'title' => ''], 'Version' => ['description' => 'The signature version. Required for AWS S3 origins.', 'type' => 'string', 'example' => 'v2', 'title' => ''], 'Region' => ['description' => 'The region of the origin. Required for AWS S3 origins.', 'type' => 'string', 'example' => 'us-east-1'."\n", 'title' => ''], ], 'title' => '', 'example' => '', ], 'IpVersionPolicy' => ['description' => 'The IP protocol version used for origin fetch requests. Valid values:'."\n" ."\n" .'- `round_robin`: Randomly selects an IPv4 or IPv6 origin.'."\n" ."\n" .'- `ipv4_first`: Prioritizes IPv4 origins.'."\n" ."\n" .'- `ipv6_first`: Prioritizes IPv6 origins.'."\n" ."\n" .'- `follow`: Follows the IP version used by the client.', 'type' => 'string', 'example' => 'round_robin', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of items returned per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'TotalCount' => ['description' => 'The total number of origin pools found.', 'type' => 'integer', 'format' => 'int32', 'example' => '16', 'title' => ''], 'TotalPage' => ['description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.Coverage', 'errorMessage' => 'The selected location is unavailable in your plan. Change the location to one that is covered by the plan and try again.', 'description' => 'The selected location is unavailable in your plan. Change the location to one that is covered by the plan and try again.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\",\\n \\"OriginPools\\": [\\n {\\n \\"Id\\": 1038520525196928,\\n \\"Name\\": \\"pool1\\",\\n \\"SiteId\\": 216558609793952,\\n \\"RecordName\\": \\"pool1.example.com\\\\n\\",\\n \\"Enabled\\": false,\\n \\"References\\": {\\n \\"LoadBalancers\\": [\\n {\\n \\"Name\\": \\"lb1.example.com\\\\n\\",\\n \\"Id\\": 998740660522624\\n }\\n ],\\n \\"DnsRecords\\": [\\n {\\n \\"Name\\": \\"www.example.com\\\\n\\",\\n \\"Id\\": 1042852886352704\\n }\\n ],\\n \\"IPARecords\\": [\\n {\\n \\"Name\\": \\"ipa.example.com\\\\n\\",\\n \\"Id\\": 1042852886352704\\n }\\n ]\\n },\\n \\"ReferenceLBCount\\": 5,\\n \\"Origins\\": [\\n {\\n \\"Id\\": 997502094872132,\\n \\"Name\\": \\"origin1\\",\\n \\"Address\\": \\"www.example.com\\",\\n \\"Enabled\\": true,\\n \\"Weight\\": 50,\\n \\"Type\\": \\"S3\\",\\n \\"Header\\": \\"{\\\\n \\\\\\"Host\\\\\\": [\\\\n \\\\\\"example.com\\\\\\"\\\\n ]\\\\n }\\",\\n \\"AuthConf\\": {\\n \\"AuthType\\": \\"public\\",\\n \\"AccessKey\\": \\"yourAccessKeyID\\",\\n \\"SecretKey\\": \\"yourAccessKeySecret\\",\\n \\"Version\\": \\"v2\\",\\n \\"Region\\": \\"us-east-1\\\\n\\"\\n },\\n \\"IpVersionPolicy\\": \\"round_robin\\"\\n }\\n ]\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"TotalCount\\": 16,\\n \\"TotalPage\\": 10\\n}","type":"json"}]', 'title' => 'List Origin Pools', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListOriginPools'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListOriginPools', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListOriginRules' => [ 'summary' => 'Query multiple back-to-origin rule configurations.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257559', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can obtain the site ID by calling the [ListSites](~~ListSites~~) API operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '35281609698****', 'title' => ''], ], [ 'name' => 'ConfigType', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The configuration type. You can use this parameter to query global or rule configurations. Valid values:'."\n" .'- global: Query global configurations.'."\n" .'- rule: Query rule configurations.'."\n" ."\n" .'This parameter is optional. If not specified, both global and rule configurations are returned without distinction.', 'enumValueTitles' => ['rule' => 'Rule configuration', 'global' => 'Global configuration'], 'type' => 'string', 'enum' => ['global', 'rule'], 'required' => false, 'example' => 'global', ], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The rule name. You do not need to set this parameter when adding a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'test'], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number for paginated queries. The value must be greater than or equal to 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page for paginated queries. Valid values: 1 to 500. Default value: 500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site. For sites with version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9'], 'Configs' => [ 'description' => 'The configurations in the response.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '395386449776640', 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the site configuration. For sites with configuration version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Sequence' => ['description' => 'The execution order of the rule. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RuleEnable' => ['description' => 'The rule switch. You do not need to set this parameter when adding a global configuration. Valid values:'."\n" .'- on: Enable.'."\n" .'- off: Disable.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'The rule content, which uses conditional expressions to match user requests. You do not need to set this parameter when adding a global configuration. There are two usage scenarios:'."\n" .'- Match all incoming requests: Set the value to true.'."\n" .'- Match specified requests: Set the value to a custom expression, for example: (http.host eq \\"video.example.com\\")', 'type' => 'string', 'example' => '(http.host eq \\"video.example.com\\")'."\n", 'title' => ''], 'RuleName' => ['description' => 'The rule name. You do not need to set this parameter when adding a global configuration.', 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'ConfigType' => ['description' => 'The configuration type. You can query global or rule configurations based on this parameter. Valid values:'."\n" ."\n" .'- global: Query global configurations.'."\n" .'- rule: Query rule configurations.', 'type' => 'string', 'example' => 'global', 'title' => ''], 'OriginHost' => ['description' => 'The HOST carried in the back-to-origin request.', 'type' => 'string', 'example' => 'origin.example.com'."\n", 'title' => ''], 'OriginScheme' => ['description' => 'The protocol used for back-to-origin requests. Valid values:'."\n" .'- http: Use the HTTP protocol for back-to-origin.'."\n" .'- https: Use the HTTPS protocol for back-to-origin.'."\n" .'- follow: Follow the client protocol for back-to-origin.', 'type' => 'string', 'example' => 'http', 'title' => ''], 'OriginSni' => ['description' => 'The SNI carried in the back-to-origin request.', 'type' => 'string', 'example' => 'origin.example.com', 'title' => ''], 'DnsRecord' => ['description' => 'The rewritten DNS resolution record for back-to-origin requests.', 'type' => 'string', 'example' => 'test.example.com'."\n", 'title' => ''], 'OriginHttpPort' => ['description' => 'The origin server port accessed when using the HTTP protocol for back-to-origin.', 'type' => 'string', 'example' => '8080', 'title' => ''], 'OriginHttpsPort' => ['description' => 'The origin server port accessed when using the HTTPS protocol for back-to-origin.', 'type' => 'string', 'example' => '4433', 'title' => ''], 'Range' => ['description' => 'Use range-based slicing for back-to-origin file downloads. Valid values:'."\n" .'- on: Enable.'."\n" .'- off: Disable.'."\n" .'- force: Force enable.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'OriginMtls' => ['description' => 'The mTLS switch. Valid values:'."\n" .'- on: Enable.'."\n" .'- off: Disable.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'OriginVerify' => ['description' => 'The origin server certificate verification switch. Valid values:'."\n" .'- on: Enable.'."\n" .'- off: Disable.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'RangeChunkSize' => ['description' => 'The range chunk size.', 'type' => 'string', 'example' => '1MB', 'title' => ''], 'OriginReadTimeout' => ['description' => 'The origin server read timeout period, in seconds.', 'type' => 'string', 'example' => '10', 'title' => ''], 'Follow302Enable' => ['description' => 'The back-to-origin 302 redirect follow switch. Valid values:'."\n" .'- on: Enable.'."\n" .'- off: Disable.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Follow302MaxTries' => ['description' => 'The maximum number of 302 redirect follows. Valid values: 1 to 5.', 'type' => 'string', 'example' => '1', 'title' => ''], 'Follow302RetainArgs' => ['description' => 'The switch for retaining original request parameters. Valid values:'."\n" .'- on: Enable.'."\n" .'- off: Disable.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Follow302RetainHeader' => ['description' => 'The switch for retaining original request headers. Valid values:'."\n" .'- on: Enable.'."\n" .'- off: Disable.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Follow302TargetHost' => ['description' => 'The back-to-origin host after 302 redirect modification.', 'type' => 'string', 'example' => 'test.com', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The current page number, same as the PageNumber request parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'TotalCount' => ['description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], 'TotalPage' => ['description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"Configs\\": [\\n {\\n \\"ConfigId\\": 395386449776640,\\n \\"SiteVersion\\": 1,\\n \\"Sequence\\": 1,\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\\\\\\\\\"video.example.com\\\\\\\\\\\\\\")\\\\n\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"ConfigType\\": \\"global\\",\\n \\"OriginHost\\": \\"origin.example.com\\\\n\\",\\n \\"OriginScheme\\": \\"http\\",\\n \\"OriginSni\\": \\"origin.example.com\\",\\n \\"DnsRecord\\": \\"test.example.com\\\\n\\",\\n \\"OriginHttpPort\\": \\"8080\\",\\n \\"OriginHttpsPort\\": \\"4433\\",\\n \\"Range\\": \\"on\\",\\n \\"OriginMtls\\": \\"on\\",\\n \\"OriginVerify\\": \\"on\\",\\n \\"RangeChunkSize\\": \\"1MB\\",\\n \\"OriginReadTimeout\\": \\"10\\",\\n \\"Follow302Enable\\": \\"on\\",\\n \\"Follow302MaxTries\\": \\"1\\",\\n \\"Follow302RetainArgs\\": \\"on\\",\\n \\"Follow302RetainHeader\\": \\"on\\",\\n \\"Follow302TargetHost\\": \\"test.com\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 100,\\n \\"TotalPage\\": 2\\n}","type":"json"}]', 'title' => 'Query the list of site back-to-origin rule configurations', 'changeSet' => [ ['createdAt' => '2025-04-17T08:47:33.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-04-01T01:57:04.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-03-20T05:57:46.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-02-27T09:16:40.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListOriginRules'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListOriginRules', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListPages' => [ 'summary' => 'Lists all custom response pages created by the user. This operation supports pagination and allows you to retrieve the response page list by specifying the page number and page size.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239580', 'abilityTreeNodes' => ['FEATUREdcdnL8HX1L'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'QueryArgs', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The query parameters passed in JSON format, which contain various filter conditions.', 'type' => 'object', 'properties' => [ 'NameDescriptionLike' => ['description' => 'The keyword used for fuzzy matching against the name or description of custom pages.', 'type' => 'string', 'required' => false, 'example' => 'example', 'title' => ''], 'ContentType' => ['title' => '', 'description' => 'The Content-Type field in the HTTP header. Example values:'."\n" .'* text/html'."\n" .'* application/json', 'type' => 'string', 'example' => 'application/json', 'required' => false], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number. Valid values: **1 to 100000**. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page. Default value: 20.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'Usage' => ['title' => '', 'description' => 'The number of custom response pages created by the user.', 'type' => 'integer', 'format' => 'int64', 'example' => '10'], 'TotalCount' => ['title' => '', 'description' => 'The number of custom response pages after filtering.', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], 'Pages' => [ 'title' => '', 'description' => 'The array of custom response pages. Each object in the array contains the details of a page.', 'type' => 'array', 'items' => [ 'title' => '', 'description' => 'WafPageItemType', 'type' => 'object', 'properties' => [ 'UpdateTime' => ['title' => '', 'description' => 'The time when the custom response page was last modified.'."\n" ."\n" .'Format: RFC 3339 / ISO 8601, UTC time zone (ending with Z).'."\n" ."\n" .'Example: 2026-06-10T14:23:45Z', 'type' => 'string', 'example' => '2024-01-01T00:00:00Z'], 'Id' => ['title' => '', 'description' => 'The ID of the custom response page. You can call the [ListPages](~~2850223~~) operation to obtain the ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '50000001'], 'Name' => ['title' => '', 'description' => 'The name of the custom response page.', 'type' => 'string', 'example' => 'example'], 'Kind' => ['title' => '', 'description' => 'The type of the custom response page.', 'type' => 'string', 'example' => 'custom'], 'Description' => ['title' => '', 'description' => 'The description of the custom response page.', 'type' => 'string', 'required' => false, 'example' => 'a custom deny page', 'maxLength' => 1024, 'pattern' => '', 'default' => ''], 'ContentType' => ['title' => '', 'description' => 'The Content-Type field in the HTTP header.', 'type' => 'string', 'required' => true, 'example' => 'text/html', 'pattern' => '', 'default' => ''], 'Content' => ['title' => '', 'description' => 'The Base64-encoded response page content corresponding to the Content-Type.', 'type' => 'string', 'required' => true, 'example' => 'PGh0bWw+aGVsbG8gcGFnZTwvaHRtbD4=', 'pattern' => '', 'default' => ''], ], 'example' => '', ], 'example' => '', ], 'PageNumber' => ['title' => '', 'description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'PageSize' => ['title' => '', 'description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"Usage\\": 10,\\n \\"TotalCount\\": 10,\\n \\"Pages\\": [\\n {\\n \\"UpdateTime\\": \\"2024-01-01T00:00:00Z\\",\\n \\"Id\\": 50000001,\\n \\"Name\\": \\"example\\",\\n \\"Kind\\": \\"custom\\",\\n \\"Description\\": \\"a custom deny page\\",\\n \\"ContentType\\": \\"text/html\\",\\n \\"Content\\": \\"PGh0bWw+aGVsbG8gcGFnZTwvaHRtbD4=\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20\\n}","type":"json"}]', 'title' => 'List custom response pages', 'changeSet' => [ ['createdAt' => '2025-01-09T06:24:33.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-09-25T07:02:48.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T06:56:37.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListPages'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListPages', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ListPostpaidRatePlanInstances' => [ 'summary' => 'Queries the list of pay-as-you-go plan instances.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239352', 'abilityTreeNodes' => ['FEATUREdcdnZA9EPX'], 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'CheckRemainingSiteQuota', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to check for remaining site quota. Valid values:'."\n" ."\n" .'- true: Queries instances that have remaining site quota.'."\n" ."\n" .'- false: Does not filter by this condition.', 'enumValueTitles' => [], 'type' => 'string', 'enum' => ['true', 'false'], 'required' => false, 'example' => 'true', 'title' => '', ], ], [ 'name' => 'SortBy', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => [ 'description' => 'The field by which to sort the results. Valid values:'."\n" ."\n" .'- CreateTime: sorts by creation time.', 'enumValueTitles' => ['CreateTime' => 'Sorts by creation time.'], 'type' => 'string', 'enum' => ['CreateTime', 'default'], 'required' => false, 'example' => 'CreateTime', 'title' => '', ], ], [ 'name' => 'SortOrder', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The sort order. Valid values:'."\n" ."\n" .' * asc: ascending order'."\n" ."\n" .' * desc: descending order.', 'enumValueTitles' => ['asc' => 'ascending order.', 'desc' => 'descending order.'], 'type' => 'string', 'enum' => ['asc', 'desc'], 'required' => false, 'example' => 'desc', ], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number for paging. The value must be greater than or equal to 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page for paging. Valid values: 1 to 500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '12', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => [ 'description' => 'The instance status. Valid values:'."\n" ."\n" .' * online: Normal.'."\n" ."\n" .' * overdue: Overdue payment.'."\n" ."\n" .' * disable: Released.', 'enumValueTitles' => ['overdue' => 'Overdue payment.', 'disable' => 'Released.', 'online' => 'Normal.'], 'type' => 'string', 'enum' => ['online', 'overdue', 'disable'], 'required' => false, 'example' => 'online', 'title' => '', ], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID. Use this parameter to query a specific instance.', 'type' => 'string', 'required' => false, 'example' => 'sp-dps-xxxxxx', 'title' => ''], ], [ 'name' => 'UnrelatedType', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether the instance has purchased additional bot or DDoS protection.', 'enumValueTitles' => ['bot' => 'Bot protection.', 'ddos' => 'DDoS protection.'], 'type' => 'string', 'enum' => ['bot', 'ddos'], 'required' => false, 'example' => 'bot', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response information.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A123425345'], 'InstanceInfo' => [ 'description' => 'The list of instance information.', 'type' => 'array', 'items' => [ 'description' => 'The details of a plan instance.', 'type' => 'object', 'properties' => [ 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'sp-xcdn-96wblslz****', 'title' => ''], 'PlanName' => ['description' => 'The plan name in English.', 'type' => 'string', 'example' => 'basic', 'title' => ''], 'PlanType' => ['description' => 'The plan type of the instance. Valid values:'."\n" .'- normal: Fixed plan.'."\n" .'- enterprise: Enterprise plan.', 'type' => 'string', 'example' => 'normal', 'title' => ''], 'SiteQuota' => ['description' => 'The site quota.', 'type' => 'string', 'example' => '1', 'title' => ''], 'CreateTime' => ['description' => 'The time when the instance was created. The value is in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.', 'type' => 'string', 'example' => '2026-04-19T11:15:20Z', 'title' => ''], 'Sites' => [ 'description' => 'The list of sites.', 'type' => 'array', 'items' => [ 'description' => 'The list of sites that are associated with the plan instance.', 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456****', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], 'SiteStatus' => ['description' => 'The site status. Valid values:'."\n" ."\n" .'- pending: The site is pending configuration.'."\n" .'- active: The site is activated.'."\n" .'- offline: The site is offline.'."\n" .'- moved: The site has been replaced.', 'type' => 'string', 'example' => 'pending', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'Status' => ['description' => 'The instance status.', 'type' => 'string', 'example' => 'online', 'title' => ''], 'Coverages' => ['description' => 'The acceleration regions to which the instance can bindable sites. Multiple values are separated by commas (,). Valid values:'."\n" ."\n" .'- domestic: the Chinese mainland.'."\n" .'- overseas: global (excluding the Chinese mainland).'."\n" .'- global: global (including the Chinese mainland).', 'type' => 'string', 'example' => 'domestic', 'title' => ''], 'BillingMethod' => ['description' => 'The billable methods. Valid values:'."\n" .'- dps_month95: monthly 95th percentile billing.', 'type' => 'string', 'example' => 'SUBSCRIBE', 'title' => ''], 'PlanNameCn' => ['description' => 'The plan name in Chinese.', 'type' => 'string', 'example' => '测试套餐', 'title' => ''], 'BillingMode' => ['description' => 'The billing mode. Valid values:'."\n" ."\n" .' * POSTPAY: pay-as-you-go.', 'type' => 'string', 'example' => 'POSTPAY', 'title' => ''], 'ExpectedUpdateTime' => ['description' => 'The scheduled specification change time. The value is in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.', 'type' => 'string', 'example' => '2026-04-19T11:15:20Z', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The current page number, which is the same as the PageNumber request parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'TotalCount' => ['description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalPage' => ['description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A123425345\\",\\n \\"InstanceInfo\\": [\\n {\\n \\"InstanceId\\": \\"sp-xcdn-96wblslz****\\",\\n \\"PlanName\\": \\"basic\\",\\n \\"PlanType\\": \\"normal\\",\\n \\"SiteQuota\\": \\"1\\",\\n \\"CreateTime\\": \\"2026-04-19T11:15:20Z\\",\\n \\"Sites\\": [\\n {\\n \\"SiteId\\": 0,\\n \\"SiteName\\": \\"example.com\\",\\n \\"SiteStatus\\": \\"pending\\"\\n }\\n ],\\n \\"Status\\": \\"online\\",\\n \\"Coverages\\": \\"domestic\\",\\n \\"BillingMethod\\": \\"SUBSCRIBE\\",\\n \\"PlanNameCn\\": \\"测试套餐\\",\\n \\"BillingMode\\": \\"POSTPAY\\",\\n \\"ExpectedUpdateTime\\": \\"2026-04-19T11:15:20Z\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"TotalCount\\": 1,\\n \\"TotalPage\\": 2\\n}","type":"json"}]', 'title' => 'Query pay-as-you-go plan instances for sites', 'description' => 'Queries the list of pay-as-you-go plan instances under your account. You can filter and sort the results by multiple conditions.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListPostpaidRatePlanInstances', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ListRecords' => [ 'summary' => 'Queries the list of DNS records under a site, including record values, priorities, authentication configurations, etc. Supports filtering by conditions such as record name and record type.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239634', 'abilityTreeNodes' => ['FEATUREdcdnVFT29S'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID, which can be obtained by calling the [ListSites](~~2850189~~) API.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'RecordName', 'in' => 'query', 'schema' => ['description' => 'Record name. Used as a filter condition for queries.', 'type' => 'string', 'required' => false, 'example' => 'www.example.com', 'title' => ''], ], [ 'name' => 'RecordMatchType', 'in' => 'query', 'schema' => ['description' => 'The search matching mode for record names. Defaults to exact match. Valid values:'."\n" ."\n" .'- **prefix**: Prefix match.'."\n" .'- **suffix**: Suffix match.'."\n" .'- **exact**: Exact match.'."\n" .'- **fuzzy**: Fuzzy match.', 'type' => 'string', 'required' => false, 'example' => 'fuzzy', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number for paginated queries. The value must be greater than or equal to 1. Default value: **1**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page for paginated queries. Valid values: 1 to 500. Default value: **500**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'SourceType', 'in' => 'query', 'schema' => ['description' => 'The origin type of the record. Used as a filter condition for queries (only CNAME records can be filtered by this field). Valid values:'."\n" .'- **OSS**: OSS origin.'."\n" .'- **S3**: S3 origin.'."\n" .'- **LB**: Load balancer origin.'."\n" .'- **OP**: Origin pool.'."\n" .'- **Domain**: Standard domain origin.', 'type' => 'string', 'required' => false, 'example' => 'OSS', 'title' => ''], ], [ 'name' => 'BizName', 'in' => 'query', 'schema' => ['description' => 'The business scenario for record acceleration. Used as a filter condition for queries. Valid values:'."\n" .'- **image_video**: Image and video.'."\n" .'- **api**: API.'."\n" .'- **web**: Web page.', 'type' => 'string', 'required' => false, 'example' => 'web', 'title' => ''], ], [ 'name' => 'Proxied', 'in' => 'query', 'schema' => ['description' => 'Specifies whether proxy acceleration is enabled for the record. Used as a filter condition for queries. Valid values:'."\n" ."\n" .'- **true**: Proxy enabled.'."\n" .'- **false**: Proxy acceleration disabled.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'Type', 'in' => 'query', 'schema' => ['description' => 'The DNS record type of the record. Used as a filter condition for queries.', 'type' => 'string', 'required' => false, 'example' => 'CNAME', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74'], 'PageNumber' => ['description' => 'The current page number, same as the PageNumber request parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of records displayed per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'TotalCount' => ['description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'Records' => [ 'description' => 'DNS information of the records. For details, refer to [Documentation](~~2708761~~)[Documentation](https://www.alibabacloud.com/help/doc-detail/2708761.html).', 'type' => 'array', 'items' => [ 'description' => 'Information about a single record.', 'type' => 'object', 'properties' => [ 'BizName' => ['description' => 'The business scenario for record acceleration. Valid values:'."\n" .'- **image_video**: Image and video.'."\n" .'- **api**: API.'."\n" .'- **web**: Web page.', 'type' => 'string', 'example' => 'web', 'title' => ''], 'Data' => [ 'description' => 'The specific DNS information of the record. Different record types contain different information.', 'type' => 'object', 'properties' => [ 'Value' => ['description' => 'The record value or partial content. This parameter is included in A/AAAA, CNAME, NS, MX, TXT, CAA, SRV, and URI records. It has different meanings for different record types:'."\n" ."\n" .'- **A/AAAA**: The IP address pointed to. When there are multiple IPs, they are separated by commas (,). At least one IPv4 address is required.'."\n" .'- **CNAME**: The target domain name pointed to.'."\n" .'- **NS**: The name server for the specified domain.'."\n" .'- **MX**: A valid target mail server domain name.'."\n" .'- **TXT**: A valid text string.'."\n" .'- **CAA**: A valid certificate authority domain name.'."\n" .'- **SRV**: A valid target host domain name.'."\n" .'- **URI**: A valid URI string.', 'type' => 'string', 'example' => 'CNAME', 'title' => ''], 'Priority' => ['description' => 'The priority of the record. Valid values: **0 to 65535**. A smaller value indicates a higher priority. Exclusive to MX, SRV, and URI records.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Flag' => ['description' => 'The flag of the record. The Flag of a CAA record indicates its priority and processing method. Valid values: **0 to 255**. Exclusive to CAA records.', 'type' => 'integer', 'format' => 'int32', 'example' => '128', 'title' => ''], 'Tags' => ['description' => 'The tags of the record.', 'type' => 'object', 'example' => '{\\"Name\\":\\"PARAMETER\\"}', 'title' => ''], 'Weight' => ['description' => 'The weight of the record. Valid values: **0 to 65535**. Exclusive to SRV and URI records.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Port' => ['description' => 'The port of the record. Valid values: **0 to 65535**. Exclusive to SRV records.', 'type' => 'integer', 'format' => 'int32', 'example' => '80', 'title' => ''], 'Type' => ['description' => 'The certificate type of the record (in CERT records), or the public key type (in SSHFP records).', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'KeyTag' => ['description' => 'The public key identifier of the record. Valid values: **0 to 65535**. Exclusive to CERT records.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Algorithm' => ['description' => 'The encryption algorithm used by the record. Valid values: **0 to 255**. Exclusive to CERT and SSHFP records.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Certificate' => ['description' => 'The public key certificate information of the record. Exclusive to CERT, SMIMEA, and TLSA records.', 'type' => 'string', 'example' => 'dGVzdGFkYWxrcw==', 'title' => ''], 'Usage' => ['description' => 'The usage identifier of the record. Valid values: **0 to 255**. Exclusive to SMIMEA and TLSA records.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Selector' => ['description' => 'The type of certificate or public key used by the record. Valid values: **0 to 255**. Exclusive to SMIMEA and TLSA records.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'MatchingType' => ['description' => 'The algorithm strategy used by the record for matching or verifying certificates. Valid values: **0 to 255**. Exclusive to SMIMEA and TLSA records.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Fingerprint' => ['description' => 'The public key fingerprint value of the record. Exclusive to SSHFP records.', 'type' => 'string', 'example' => 'abcdef1234567890', 'title' => ''], 'Tag' => ['description' => 'The tag of the record. The Tag of a CAA record indicates its specific type and purpose. Exclusive to CAA records.', 'type' => 'string', 'example' => 'issue', 'title' => ''], ], 'example' => '{"value":"1.1.1.1"}', 'title' => '', ], 'CreateTime' => ['description' => 'The creation time of the record. The date format follows the ISO 8601 standard and uses UTC time in the format of yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2023-12-24T02:01:11Z', 'title' => ''], 'UpdateTime' => ['description' => 'The update time of the record. The date format follows the ISO 8601 standard and uses UTC time in the format of yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2023-06-07T10:02:59Z', 'title' => ''], 'Proxied' => ['description' => 'Indicates whether proxy acceleration is enabled for the record. Valid values:'."\n" ."\n" .'- **true**: Proxy enabled.'."\n" .'- **false**: Proxy acceleration disabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'RecordId' => ['description' => 'The record ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123', 'title' => ''], 'RecordSourceType' => ['description' => 'The origin type of the CNAME record. This parameter is required when adding a CNAME record. Valid values:'."\n" ."\n" .'- **OSS**: OSS origin.'."\n" .'- **S3**: S3 origin.'."\n" .'- **LB**: Load balancer origin.'."\n" .'- **OP**: Origin pool.'."\n" .'- **Domain**: Standard domain origin.'."\n" ."\n" .'If this parameter is not specified or left empty, the default value is Domain, which indicates a standard domain origin type.', 'type' => 'string', 'example' => 'OSS', 'title' => ''], 'RecordName' => ['description' => 'The record name.', 'type' => 'string', 'example' => 'a.example.com', 'title' => ''], 'RecordType' => ['description' => 'The DNS type of the record, such as **A/AAAA, CNAME, TXT**, etc.', 'type' => 'string', 'example' => 'A/AAAA', 'title' => ''], 'SiteId' => ['description' => 'The ID of the site to which the record belongs.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123', 'title' => ''], 'SiteName' => ['description' => 'The name of the site to which the record belongs.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], 'Ttl' => ['description' => 'The TTL (Time to Live) of the record, in seconds. When the value is 1, it indicates that the TTL is set to automatic.', 'type' => 'integer', 'format' => 'int64', 'example' => '30', 'title' => ''], 'RecordCname' => ['description' => 'The CNAME of the record. This is the CNAME value that needs to be configured for the record when the site access method is CNAME access.', 'type' => 'string', 'example' => 'a.example.com.cnamezone.com', 'title' => ''], 'Comment' => ['description' => 'The comment of the record.', 'type' => 'string', 'example' => 'this is a remark.', 'title' => ''], 'AuthConf' => [ 'description' => 'The origin authentication information of the CNAME record.', 'type' => 'object', 'properties' => [ 'AuthType' => ['description' => 'The origin authentication type. Different origin types support different authentication types. The origin type refers to the SourceType parameter in this API. When the origin type is OSS or S3, the origin authentication type must be specified. Valid values:'."\n" .'- **public**: Public read. Use this value when the origin type is OSS or S3 and the origin has public read access.'."\n" .'- **private**: Private read. Use this value when the origin type is S3 and the origin has private read access.'."\n" .'- **private_same_account**: Private same-account read. Use this value when the origin type is OSS, the origin is under the same Alibaba Cloud account, and the origin has private read access.'."\n" .'- **private_cross_account**: Private cross-account read. Use this value when the origin type is OSS, the origin is not under the same Alibaba Cloud account, and the origin has private read access.', 'type' => 'string', 'example' => 'private', 'title' => ''], 'AccessKey' => ['description' => 'The AccessKey of the account to which the origin belongs. This parameter is available when the origin type is OSS with private cross-account read authentication, or when the origin type is S3 with private read authentication.', 'type' => 'string', 'example' => 'u0Nkg5gBK***QF5wvKMM504JUHt', 'title' => ''], 'SecretKey' => ['description' => 'The SecretKey of the account to which the origin belongs. This parameter is available when the origin type is OSS with private cross-account read authentication, or when the origin type is S3 with private read authentication.', 'type' => 'string', 'example' => 'VIxuvJSA2S03f***kp208dy5w7', 'title' => ''], 'Version' => ['description' => 'The signature algorithm version. This parameter is available when the origin type is S3 and the origin authentication type is private read. Valid values:'."\n" .'- **v2**'."\n" .'- **v4**'."\n" ."\n" .'Default value: v4.', 'type' => 'string', 'example' => 'v4', 'title' => ''], 'Region' => ['description' => 'The region where the origin is located. This parameter is available when the origin type is S3. The region of the origin can be obtained from the official S3 website.', 'type' => 'string', 'example' => 'us-east-1', 'title' => ''], ], 'title' => '', 'example' => '', ], 'HostPolicy' => ['description' => 'The origin host policy. This takes effect when the record type is CNAME. It sets the policy for the host header used during origin requests. Two modes are available:'."\n" ."\n" .'- **follow_hostname**: Follow the request host.'."\n" .'- **follow_origin_domain**: Follow the origin domain.', 'type' => 'string', 'example' => 'follow_origin_domain', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 20,\\n \\"Records\\": [\\n {\\n \\"BizName\\": \\"web\\",\\n \\"Data\\": {\\n \\"Value\\": \\"CNAME\\",\\n \\"Priority\\": 0,\\n \\"Flag\\": 128,\\n \\"Tags\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"Weight\\": 0,\\n \\"Port\\": 80,\\n \\"Type\\": 0,\\n \\"KeyTag\\": 0,\\n \\"Algorithm\\": 0,\\n \\"Certificate\\": \\"dGVzdGFkYWxrcw==\\",\\n \\"Usage\\": 0,\\n \\"Selector\\": 0,\\n \\"MatchingType\\": 0,\\n \\"Fingerprint\\": \\"abcdef1234567890\\",\\n \\"Tag\\": \\"issue\\"\\n },\\n \\"CreateTime\\": \\"2023-12-24T02:01:11Z\\",\\n \\"UpdateTime\\": \\"2023-06-07T10:02:59Z\\",\\n \\"Proxied\\": true,\\n \\"RecordId\\": 1234567890123,\\n \\"RecordSourceType\\": \\"OSS\\",\\n \\"RecordName\\": \\"a.example.com\\",\\n \\"RecordType\\": \\"A/AAAA\\",\\n \\"SiteId\\": 1234567890123,\\n \\"SiteName\\": \\"example.com\\",\\n \\"Ttl\\": 30,\\n \\"RecordCname\\": \\"a.example.com.cnamezone.com\\",\\n \\"Comment\\": \\"this is a remark.\\",\\n \\"AuthConf\\": {\\n \\"AuthType\\": \\"private\\",\\n \\"AccessKey\\": \\"u0Nkg5gBK***QF5wvKMM504JUHt\\",\\n \\"SecretKey\\": \\"VIxuvJSA2S03f***kp208dy5w7\\",\\n \\"Version\\": \\"v4\\",\\n \\"Region\\": \\"us-east-1\\"\\n },\\n \\"HostPolicy\\": \\"follow_origin_domain\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Query DNS Record List', 'description' => 'DNS records corresponding to edge containers, edge functions, and Layer 4 acceleration will not be returned by this API.', 'changeSet' => [ ['createdAt' => '2025-08-21T09:39:51.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-11-19T01:42:00.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-09-23T08:53:22.000Z', 'description' => 'Error codes changed, Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListRecords'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:ListRecords', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListRedirectRules' => [ 'summary' => 'Queries the redirect configuration list of a site.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257660', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456******', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '35281609698****', 'title' => ''], ], [ 'name' => 'ConfigType', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The configuration type. Valid values:'."\n" .'- global: global configuration.'."\n" .'- rule: rule configuration.', 'enumValueTitles' => ['rule' => 'Rule configuration.', 'global' => 'Global configuration.'], 'type' => 'string', 'enum' => ['global', 'rule'], 'required' => false, 'example' => 'rule', ], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The rule name. You can use this parameter to query the rule whose name matches the specified value.', 'type' => 'string', 'required' => false, 'example' => 'rule_example'], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number for a paged query. The value must be greater than or equal to 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page for a paged query. Valid values: 1 to 500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. For sites with version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395'], 'Configs' => [ 'description' => 'The redirect configuration list.', 'type' => 'array', 'items' => [ 'description' => 'The redirect configuration details.', 'type' => 'object', 'properties' => [ 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '35281609698****'."\n", 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the site configuration. For sites with version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Sequence' => ['description' => 'The rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RuleEnable' => ['description' => 'The rule switch. You do not need to set this parameter when adding a global configuration. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'The rule content, which uses a conditional expression to match user requests. You do not need to set this parameter when adding a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: set the value to true.'."\n" .'- Match specified requests: set the value to a custom expression, for example, (http.host eq \\"video.example.com\\").', 'type' => 'string', 'example' => '(http.host eq "video.example.com")', 'title' => ''], 'RuleName' => ['description' => 'The rule name. You do not need to set this parameter when adding a global configuration.', 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'ConfigType' => ['description' => 'The configuration type. Valid values:'."\n" .'- global: global configuration.'."\n" .'- rule: rule configuration.', 'type' => 'string', 'example' => 'rule', 'title' => ''], 'Type' => ['description' => 'The redirect type. Valid values:'."\n" ."\n" .'- static: static pattern.'."\n" .'- dynamic: dynamic schema.', 'type' => 'string', 'example' => 'static', 'title' => ''], 'TargetUrl' => ['description' => 'The target URL after the redirect.', 'type' => 'string', 'example' => 'http://www.exapmle.com/index.html'."\n", 'title' => ''], 'StatusCode' => ['description' => 'The HTTP status code used when the node responds to the client with the redirect address. Valid values:'."\n" .'- 301'."\n" .'- 302'."\n" .'- 303'."\n" .'- 307'."\n" .'- 308.', 'type' => 'string', 'example' => '301', 'title' => ''], 'ReserveQueryString' => ['description' => 'Specifies whether to preserve the query string. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The current page number, which is the same as the PageNumber request parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'TotalPage' => ['description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395\\",\\n \\"Configs\\": [\\n {\\n \\"ConfigId\\": 0,\\n \\"SiteVersion\\": 1,\\n \\"Sequence\\": 1,\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\"video.example.com\\\\\\")\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"ConfigType\\": \\"rule\\",\\n \\"Type\\": \\"static\\",\\n \\"TargetUrl\\": \\"http://www.exapmle.com/index.html\\\\n\\",\\n \\"StatusCode\\": \\"301\\",\\n \\"ReserveQueryString\\": \\"on\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"TotalCount\\": 10,\\n \\"TotalPage\\": 1\\n}","type":"json"}]', 'title' => 'Query redirect configuration list', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListRedirectRules'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:ListRedirectRules', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListRewriteUrlRules' => [ 'summary' => 'Queries the list of URL rewrite configurations for a site.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257644', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '35281609698****', 'title' => ''], ], [ 'name' => 'ConfigType', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The configuration type. You can use this parameter to query global configurations or rule configurations. Valid values:'."\n" .'- global: queries global configurations.'."\n" .'- rule: queries rule configurations.'."\n" ."\n" .'This parameter is optional. If you do not specify this parameter, both global and rule configurations are returned. This parameter takes effect only when the functionName parameter is specified.', 'enumValueTitles' => ['rule' => 'rule configuration.', 'global' => 'global configuration.'], 'type' => 'string', 'enum' => ['global', 'rule'], 'required' => false, 'example' => 'global', ], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The rule name. You do not need to set this parameter when adding a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example'], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number for a paged query. The value must be greater than or equal to 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page for a paged query. Valid values: 1 to 500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. For sites with version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. The default value is version 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-280B-72F8FD6DA2FE'], 'Configs' => [ 'description' => 'The list of URL rewrite configurations.', 'type' => 'array', 'items' => [ 'description' => 'The configuration details.', 'type' => 'object', 'properties' => [ 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '39538644977****', 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the site configuration. For sites with version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. The default value is version 0.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Sequence' => ['description' => 'The rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RuleEnable' => ['description' => 'The rule switch. You do not need to set this parameter when adding a global configuration. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'The rule content, which uses a conditional expression to match user requests. You do not need to set this parameter when adding a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: set the value to true.'."\n" .'- Match specified requests: set the value to a custom expression, for example: (http.host eq \\"video.example.com\\")', 'type' => 'string', 'example' => '(http.host eq "video.example.com")', 'title' => ''], 'RuleName' => ['description' => 'The rule name. You do not need to set this parameter when adding a global configuration.', 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'ConfigType' => ['description' => 'The configuration type. Valid values:'."\n" .'- global: global configuration.'."\n" .'- rule: rule configuration.', 'type' => 'string', 'example' => 'global', 'title' => ''], 'RewriteUriType' => ['description' => 'The path rewrite type. Valid values:'."\n" ."\n" .'- static: static pattern.'."\n" .'- dynamic: dynamic schema.', 'type' => 'string', 'example' => 'static', 'title' => ''], 'Uri' => ['description' => 'The target URI after rewriting.', 'type' => 'string', 'example' => '/image.example.com/index.html'."\n", 'title' => ''], 'RewriteQueryStringType' => ['description' => 'The query string rewrite type. Valid values:'."\n" ."\n" .'- static: static pattern.'."\n" .'- dynamic: dynamic schema.', 'type' => 'string', 'example' => 'static', 'title' => ''], 'QueryString' => ['description' => 'The query string after rewriting.', 'type' => 'string', 'example' => 'example=123'."\n", 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The current page number, which is the same as the PageNumber request parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '8', 'title' => ''], 'TotalPage' => ['description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-280B-72F8FD6DA2FE\\",\\n \\"Configs\\": [\\n {\\n \\"ConfigId\\": 0,\\n \\"SiteVersion\\": 0,\\n \\"Sequence\\": 1,\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\"video.example.com\\\\\\")\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"ConfigType\\": \\"global\\",\\n \\"RewriteUriType\\": \\"static\\",\\n \\"Uri\\": \\"/image.example.com/index.html\\\\n\\",\\n \\"RewriteQueryStringType\\": \\"static\\",\\n \\"QueryString\\": \\"example=123\\\\n\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 8,\\n \\"TotalPage\\": 1\\n}","type":"json"}]', 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Query URL rewrite configurations for a site', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListRewriteUrlRules'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:ListRewriteUrlRules', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListRoutineCodeVersions' => [ 'summary' => 'Queries the code version information of a specified Edge Routine program by paging.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239374', 'abilityTreeNodes' => ['FEATUREdcdn75UYDO'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The name of the Edge Routine.', 'type' => 'string', 'required' => true, 'example' => 'test', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'formData', 'schema' => ['description' => 'The page number. Default value: 1. Maximum value: 2.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'formData', 'schema' => ['description' => 'The number of entries per page. Valid values: 1 to 20.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '20', 'title' => ''], ], [ 'name' => 'SearchKeyWord', 'in' => 'formData', 'schema' => ['description' => 'The keyword for fuzzy matching.', 'type' => 'string', 'required' => false, 'example' => 'hello', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'], 'PageNumber' => ['description' => 'The current page number.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int64', 'example' => '5', 'title' => ''], 'CodeVersions' => [ 'description' => 'The list of Edge Routine code versions.', 'type' => 'array', 'items' => [ 'description' => 'The information about a code version.', 'type' => 'object', 'properties' => [ 'CodeDescription' => ['description' => 'The description of the code version.', 'type' => 'string', 'example' => 'test desc', 'title' => ''], 'CreateTime' => ['description' => 'The time when the code version was created, in RFC 3339 format in the UTC time zone.', 'type' => 'string', 'example' => '2024-04-16T09:42:47Z', 'title' => ''], 'CodeVersion' => ['description' => 'The code version number.', 'type' => 'string', 'example' => '1723599747213377175', 'title' => ''], 'Status' => ['description' => 'The status of the code version.', 'type' => 'string', 'example' => 'Available', 'title' => ''], 'ExtraInfo' => ['description' => 'The additional information about the code version.', 'type' => 'string', 'example' => '{\\"approver\\":[\\"348678\\",\\"111133\\",\\"411544\\"]}', 'title' => ''], 'BuildId' => ['description' => 'The build ID of the code version.', 'type' => 'integer', 'format' => 'int64', 'example' => '25801233', 'title' => ''], 'ConfOptions' => [ 'description' => 'The configuration items of the code version.', 'type' => 'object', 'properties' => [ 'NotFoundStrategy' => ['description' => 'The NotFoundStrategy configuration item of the code version.', 'type' => 'string', 'example' => 'SinglePageApplication', 'title' => ''], ], 'title' => '', 'example' => '', ], 'DeployEnv' => ['description' => 'The deployment environment. Valid values:'."\n" .'- **staging**: staging environment.'."\n" .'- **production**: production environment.', 'type' => 'string', 'example' => 'staging', 'title' => ''], 'HasEnvVars' => ['description' => 'Indicates whether environment variables exist.', 'type' => 'boolean', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'RoutineNotExist', 'errorMessage' => 'The routine name does not exist. Check the routine name and try again.', 'description' => 'The routine name does not exist. Check the routine name and try again.'], ['errorCode' => 'InternalOperationError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"TotalCount\\": 5,\\n \\"CodeVersions\\": [\\n {\\n \\"CodeDescription\\": \\"test desc\\",\\n \\"CreateTime\\": \\"2024-04-16T09:42:47Z\\",\\n \\"CodeVersion\\": \\"1723599747213377175\\",\\n \\"Status\\": \\"Available\\",\\n \\"ExtraInfo\\": \\"{\\\\\\\\\\\\\\"approver\\\\\\\\\\\\\\":[\\\\\\\\\\\\\\"348678\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"111133\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"411544\\\\\\\\\\\\\\"]}\\",\\n \\"BuildId\\": 25801233,\\n \\"ConfOptions\\": {\\n \\"NotFoundStrategy\\": \\"SinglePageApplication\\"\\n },\\n \\"DeployEnv\\": \\"staging\\",\\n \\"HasEnvVars\\": false\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Query edge routine code versions', 'description' => 'Queries the code version list of a specified Edge Routine program. This operation supports paging and fuzzy search. You can set the Name parameter to specify the Edge Routine program name, use PageNumber and PageSize for paging control, and use SearchKeyWord for fuzzy matching against code version descriptions.'."\n" ."\n" .'The response includes detailed information about each code version, such as the revision number, description, and creation time.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListRoutineCodeVersions'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListRoutineCodeVersions', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ListRoutineRelatedRecords' => [ 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '266954', 'abilityTreeNodes' => ['FEATUREdcdn75UYDO'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The name of the function.', 'type' => 'string', 'required' => true, 'example' => 'test', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'formData', 'schema' => ['description' => 'The page number of the returned page. Default value: 1', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'formData', 'schema' => ['description' => 'The number of entries per page. Valid values: an integer from 1 to 20.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '20', 'title' => ''], ], [ 'name' => 'SearchKeyWord', 'in' => 'formData', 'schema' => ['description' => 'The keyword used for fuzzy search.', 'type' => 'string', 'required' => false, 'example' => 'hello', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74'], 'PageNumber' => ['description' => 'The page number. Pages start from page 1. Default value: 1.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int64', 'example' => '16', 'title' => ''], 'RelatedRecords' => [ 'description' => 'The list of records associated with the edge function.', 'type' => 'array', 'items' => [ 'description' => 'The information about the record associated with the function.', 'type' => 'object', 'properties' => [ 'RecordName' => ['description' => 'The name of the record.', 'type' => 'string', 'example' => 'test-record-1.example.com', 'title' => ''], 'SiteId' => ['description' => 'The website ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '54362329990032', 'title' => ''], 'SiteName' => ['description' => 'The website name.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], 'RecordId' => ['description' => 'The record ID of the domain name.', 'type' => 'integer', 'format' => 'int64', 'example' => '509348423011904', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'DependedByOthers', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'RoutineNotExist', 'errorMessage' => 'The routine name does not exist. Check the routine name and try again.', 'description' => 'The routine name does not exist. Check the routine name and try again.'], ['errorCode' => 'InternalOperationError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'title' => 'ListRoutineRelatedRecords', 'summary' => 'The records associated with the function.', 'description' => 'Queries the list of related records for a specified edge routine. You can use pagination parameters to retrieve partial results, or use fuzzy keywords to filter specific record entries.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListRoutineRelatedRecords'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListRoutineRelatedRecords', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"TotalCount\\": 16,\\n \\"RelatedRecords\\": [\\n {\\n \\"RecordName\\": \\"test-record-1.example.com\\",\\n \\"SiteId\\": 54362329990032,\\n \\"SiteName\\": \\"example.com\\",\\n \\"RecordId\\": 509348423011904\\n }\\n ]\\n}","type":"json"}]', ], 'ListRoutineRoutes' => [ 'summary' => 'Queries the function route list of an Edge Routine.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '266195', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number for a paged query. The value must be greater than or equal to 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page for a paged query. Valid values: 1 to 500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ 'name' => 'RoutineName', 'in' => 'query', 'schema' => ['description' => 'The name of the Edge Routine.', 'type' => 'string', 'required' => true, 'example' => 'test-routine1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'."\n"], 'Configs' => [ 'description' => 'The configuration information.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '554889455535696', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'test.com', 'title' => ''], 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '35281609698****'."\n", 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the site configuration.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Sequence' => ['description' => 'The rule execution order.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RouteEnable' => ['description' => 'The route switch. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'The rule content.', 'type' => 'string', 'example' => '(http.host eq \\"video.example.com\\")'."\n", 'title' => ''], 'RouteName' => ['description' => 'The route name.', 'type' => 'string', 'example' => 'test_route', 'title' => ''], 'ConfigType' => ['description' => 'The configuration type. You can use this parameter to query global configurations or rule configurations. Valid values:'."\n" ."\n" .'- global: queries global configurations.'."\n" .'- rule: queries rule configurations.', 'type' => 'string', 'example' => 'global', 'title' => ''], 'RoutineName' => ['description' => 'The name of the Edge Routine.', 'type' => 'string', 'example' => 'test-routine1'."\n", 'title' => ''], 'Bypass' => ['description' => 'The bypass mode. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Mode' => ['description' => 'The configuration mode. Valid values:'."\n" .'- simple: simple mode.'."\n" .'- custom: custom mode.', 'type' => 'string', 'example' => 'simple', 'title' => ''], 'Fallback' => ['description' => 'The fallback-to-origin switch. After this switch is enabled, requests are sent to the origin server if the function encounters an exception such as CPU usage exceeding the limit. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Timeout' => ['title' => '', 'description' => 'The ER timeout period. Valid values: 5 to 60. Unit: seconds.', 'type' => 'string', 'example' => '5'], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The current page number, which is the same as the PageNumber request parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'TotalCount' => ['description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int32', 'example' => '83', 'title' => ''], 'TotalPage' => ['description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\\\n\\",\\n \\"Configs\\": [\\n {\\n \\"SiteId\\": 554889455535696,\\n \\"SiteName\\": \\"test.com\\",\\n \\"ConfigId\\": 0,\\n \\"SiteVersion\\": 1,\\n \\"Sequence\\": 1,\\n \\"RouteEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\\\\\\\\\"video.example.com\\\\\\\\\\\\\\")\\\\n\\",\\n \\"RouteName\\": \\"test_route\\",\\n \\"ConfigType\\": \\"global\\",\\n \\"RoutineName\\": \\"test-routine1\\\\n\\",\\n \\"Bypass\\": \\"on\\",\\n \\"Mode\\": \\"simple\\",\\n \\"Fallback\\": \\"on\\",\\n \\"Timeout\\": \\"5\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"TotalCount\\": 83,\\n \\"TotalPage\\": 2\\n}","type":"json"}]', 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Query the function route list of an edge routine', 'changeSet' => [ ['createdAt' => '2025-06-25T05:35:34.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-04-08T06:41:11.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListRoutineRoutes'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:ListRoutineRoutes', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ListScheduledPreloadExecutions' => [ 'summary' => 'Lists the execution plans of a specified scheduled prefetch task by task ID.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239200', 'abilityTreeNodes' => ['FEATUREdcdn4TTNAL'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The ID of the scheduled prefetch task.', 'type' => 'string', 'required' => true, 'example' => '665d3af3621bccf3fe29e1a4', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'ET5BF670-09D5-4D0B-BEBY-D96A2A528000'], 'Executions' => [ 'description' => 'The execution information.', 'type' => 'array', 'items' => [ 'description' => 'The execution information.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'The ID of the prefetch plan.', 'type' => 'string', 'example' => '66599bd7397885b43804901c', 'title' => ''], 'StartTime' => ['description' => 'The start time of the scheduled prefetch plan, in ISO 8601 format (such as 2024-01-01T00:00:00+Z).', 'type' => 'string', 'example' => '2024-05-31T17:10:48.849+08:00', 'title' => ''], 'EndTime' => ['description' => 'The end time of the scheduled prefetch plan, in ISO 8601 format (such as 2024-01-01T00:00:00+Z).', 'type' => 'string', 'example' => '2024-05-31T18:10:48.849+08:00', 'title' => ''], 'Interval' => ['description' => 'The interval between each batch execution of the scheduled prefetch plan. Unit: seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '60', 'title' => ''], 'SliceLen' => ['description' => 'The number of URLs in each batch of the scheduled prefetch.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'Status' => ['description' => 'The status of the scheduled prefetch plan. Valid values:'."\n" .'- **waiting**: Waiting to be executed.'."\n" .'- **running**: Being executed.'."\n" .'- **finished**: Execution completed.'."\n" .'- **failed**: Execution failed.'."\n" .'- **stopped**: Execution paused.', 'type' => 'string', 'example' => 'running', 'title' => ''], 'JobId' => ['description' => 'The ID of the prefetch task.', 'type' => 'string', 'example' => '665d3af3621bccf3fe29e1a4', 'title' => ''], 'AliUid' => ['description' => 'The Alibaba Cloud account ID.', 'type' => 'string', 'example' => '15685865xxx14622', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'TotalCount' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'InvalidJob.JobCountOfSiteFull', 'errorMessage' => 'The maximum number of prefetch tasks for the website has been reached. Delete some unwanted ones and try again.', 'description' => 'The maximum number of prefetch tasks for the website has been reached. Delete some unwanted ones and try again.'], ['errorCode' => 'InvalidParameter.ObjectId', 'errorMessage' => 'Invalid task ID or execution plan ID.', 'description' => 'Invalid task ID or execution plan ID.'], ['errorCode' => 'MissingOssUrl', 'errorMessage' => 'OssUrl missing. Specify a valid URL of the OSS object that stores URLs to prefetch.', 'description' => 'OssUrl missing. Specify a valid URL of the OSS object that stores URLs to prefetch.'], ['errorCode' => 'MissingUrlList', 'errorMessage' => 'Enter the URLs you want to prefetch.', 'description' => 'Enter the URLs you want to prefetch.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ], 403 => [ ['errorCode' => 'InvalidUid.PermissionDenied', 'errorMessage' => 'You do not have the permissions to perform this operation on this resource. Check whether the specified UID is correct and has the required permissions.', 'description' => 'You do not have the permissions to perform this operation on this resource. Check whether the specified UID is correct and has the required permissions.'], ], [ ['errorCode' => 'InvalidJob.NotFound', 'errorMessage' => 'The task does not exist. Check whether the task ID is correct or whether the task has been deleted.', 'description' => 'The task does not exist. Check whether the task ID is correct or whether the task has been deleted.'], ['errorCode' => 'LogNotFound', 'errorMessage' => 'Failed to query the log. Check whether the task ID and execution ID are valid.', 'description' => 'Failed to query the log. Check whether the task ID and execution ID are valid.'], ['errorCode' => 'InvalidExecution.NotFound', 'errorMessage' => 'The execution plan does not exist. Check whether the parameters such as the execution ID, start time, and end time are correct.', 'description' => 'The execution plan does not exist. Check whether the parameters such as the execution ID, start time, and end time are correct.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"ET5BF670-09D5-4D0B-BEBY-D96A2A528000\\",\\n \\"Executions\\": [\\n {\\n \\"Id\\": \\"66599bd7397885b43804901c\\",\\n \\"StartTime\\": \\"2024-05-31T17:10:48.849+08:00\\",\\n \\"EndTime\\": \\"2024-05-31T18:10:48.849+08:00\\",\\n \\"Interval\\": 60,\\n \\"SliceLen\\": 10,\\n \\"Status\\": \\"running\\",\\n \\"JobId\\": \\"665d3af3621bccf3fe29e1a4\\",\\n \\"AliUid\\": \\"15685865xxx14622\\"\\n }\\n ],\\n \\"TotalCount\\": 2\\n}","type":"json"}]', 'title' => 'List execution plans of a specified scheduled prefetch task', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListScheduledPreloadExecutions'], ], ], 'ramActions' => [], ], 'ListScheduledPreloadJobs' => [ 'summary' => 'Lists scheduled prefetch tasks for a site.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238775', 'abilityTreeNodes' => ['FEATUREdcdn4TTNAL'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'Site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '190007158391808'], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The beginning of the time range to query based on task creation time, in millisecond timestamp.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1717225276000', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end of the time range to query based on task creation time, in millisecond timestamp.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1717225277000', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number to retrieve.', 'type' => 'integer', 'format' => 'int32', 'minimum' => '1', 'required' => false, 'example' => '1'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page size, indicating the number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '20', 'example' => '20'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-A198-72F8FD6DA2FE'], 'TotalCount' => ['description' => 'The total number of records after filtering.', 'type' => 'string', 'example' => '5', 'title' => ''], 'Jobs' => [ 'description' => 'The list of prefetch task information.', 'type' => 'array', 'items' => [ 'description' => 'The prefetch task information.', 'type' => 'object', 'properties' => [ 'AliUid' => ['title' => '', 'description' => 'The Alibaba Cloud account ID.', 'type' => 'string', 'example' => '15685865xxx14622'], 'CreatedAt' => ['title' => '', 'description' => 'The task creation time in ISO 8601 format (e.g., 2024-01-01T00:00:00+Z).', 'type' => 'string', 'example' => '2024-06-01T08:53:13Z'], 'Domains' => ['title' => '', 'description' => 'The list of prefetch domains.', 'type' => 'string', 'example' => 'testurl.com'], 'ErrorInfo' => ['title' => '', 'description' => 'The error information.', 'type' => 'string', 'example' => 'invalid domain:test.com'], 'FailedFileOss' => ['title' => '', 'description' => 'The OSS URL of the failed file.', 'type' => 'string', 'example' => 'https://xxxobject.oss-cn-reginon.aliyuncs.com/9d91_xxxxxxxxxxx_158bb6e0f97c477791209bb46bd599f7'], 'FileId' => ['title' => '', 'description' => 'The URL list file ID (used for downloading).', 'type' => 'string', 'example' => '665d3b48621bccf3fe29e1a7'], 'Id' => ['title' => '', 'description' => 'The task ID.', 'type' => 'string', 'example' => '665d3af3621bccf3fe29e1a4'."\n"], 'InsertWay' => [ 'title' => '', 'description' => 'The URL insertion method.', 'enumValueTitles' => ['oss' => 'Batch import URLs via OSS file', 'testBox' => 'Enter URLs one by one via text box'], 'type' => 'string', 'enum' => ['file', 'url'], 'example' => 'oss', ], 'Name' => ['title' => '', 'description' => 'The task name.', 'type' => 'string', 'example' => 'example'], 'SiteId' => ['title' => '', 'description' => 'Site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '190007158391808'], 'TaskSubmitted' => ['title' => '', 'description' => 'The number of URLs that have been submitted to the system for prefetch.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'TaskType' => [ 'title' => '', 'description' => 'The task type (refresh/prefetch).', 'enumValueTitles' => ['path' => 'Directory refresh', 'refresh' => 'URL refresh', 'preload' => 'URL prefetch'], 'type' => 'string', 'enum' => ['preload', 'refresh', 'path'], 'example' => 'preload', ], 'UrlCount' => ['title' => '', 'description' => 'The total number of URLs.', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], 'UrlSubmitted' => ['title' => '', 'description' => 'The number of submitted URLs.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'ExecutionCount' => ['description' => 'The number of prefetch plans.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'InvalidJob.JobCountOfSiteFull', 'errorMessage' => 'The maximum number of prefetch tasks for the website has been reached. Delete some unwanted ones and try again.', 'description' => 'The maximum number of prefetch tasks for the website has been reached. Delete some unwanted ones and try again.'], ['errorCode' => 'InvalidParameter.ObjectId', 'errorMessage' => 'Invalid task ID or execution plan ID.', 'description' => 'Invalid task ID or execution plan ID.'], ['errorCode' => 'MissingOssUrl', 'errorMessage' => 'OssUrl missing. Specify a valid URL of the OSS object that stores URLs to prefetch.', 'description' => 'OssUrl missing. Specify a valid URL of the OSS object that stores URLs to prefetch.'], ['errorCode' => 'MissingUrlList', 'errorMessage' => 'Enter the URLs you want to prefetch.', 'description' => 'Enter the URLs you want to prefetch.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ], 403 => [ ['errorCode' => 'InvalidUid.PermissionDenied', 'errorMessage' => 'You do not have the permissions to perform this operation on this resource. Check whether the specified UID is correct and has the required permissions.', 'description' => 'You do not have the permissions to perform this operation on this resource. Check whether the specified UID is correct and has the required permissions.'], ], [ ['errorCode' => 'InvalidJob.NotFound', 'errorMessage' => 'The task does not exist. Check whether the task ID is correct or whether the task has been deleted.', 'description' => 'The task does not exist. Check whether the task ID is correct or whether the task has been deleted.'], ['errorCode' => 'LogNotFound', 'errorMessage' => 'Failed to query the log. Check whether the task ID and execution ID are valid.', 'description' => 'Failed to query the log. Check whether the task ID and execution ID are valid.'], ['errorCode' => 'InvalidExecution.NotFound', 'errorMessage' => 'The execution plan does not exist. Check whether the parameters such as the execution ID, start time, and end time are correct.', 'description' => 'The execution plan does not exist. Check whether the parameters such as the execution ID, start time, and end time are correct.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-A198-72F8FD6DA2FE\\",\\n \\"TotalCount\\": \\"5\\",\\n \\"Jobs\\": [\\n {\\n \\"AliUid\\": \\"15685865xxx14622\\",\\n \\"CreatedAt\\": \\"2024-06-01T08:53:13Z\\",\\n \\"Domains\\": \\"testurl.com\\",\\n \\"ErrorInfo\\": \\"invalid domain:test.com\\",\\n \\"FailedFileOss\\": \\"https://xxxobject.oss-cn-reginon.aliyuncs.com/9d91_xxxxxxxxxxx_158bb6e0f97c477791209bb46bd599f7\\",\\n \\"FileId\\": \\"665d3b48621bccf3fe29e1a7\\",\\n \\"Id\\": \\"665d3af3621bccf3fe29e1a4\\\\n\\",\\n \\"InsertWay\\": \\"oss\\",\\n \\"Name\\": \\"example\\",\\n \\"SiteId\\": 190007158391808,\\n \\"TaskSubmitted\\": 1,\\n \\"TaskType\\": \\"preload\\",\\n \\"UrlCount\\": 2,\\n \\"UrlSubmitted\\": 1,\\n \\"ExecutionCount\\": 1\\n }\\n ]\\n}","type":"json"}]', 'title' => 'List Scheduled Prefetch Tasks', 'changeSet' => [ ['createdAt' => '2025-03-13T08:02:14.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListScheduledPreloadJobs'], ], ], 'ramActions' => [], ], 'ListSiteDeliveryTasks' => [ 'summary' => 'Lists all log delivery tasks that are in progress.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238497', 'abilityTreeNodes' => ['FEATUREdcdn9K10I1'], ], 'parameters' => [ [ 'name' => 'BusinessType', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'The log category. Valid values:'."\n" ."\n" .'* dcdn_log_access_l1 (default): access logs.'."\n" .'* dcdn_log_er: Edge Routine logs.'."\n" .'* dcdn_log_waf: firewall logs.'."\n" .'* dcdn_log_ipa: TCP/UDP proxy logs.'."\n", 'type' => 'string', 'required' => false, 'example' => 'dcdn_log_access_l1'], ], [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456***', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Default value: 20.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '20', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. Default value: 1.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '34DCBC8A-****-****-****-6DAA11D7DDBD'], 'TotalCount' => ['description' => 'The total number of log delivery tasks.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'PageNumber' => ['description' => 'The page number. Default value: 0.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page. Valid values: **1 to 500**. Default value: **20**.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'Tasks' => [ 'description' => 'The delivery tasks.'."\n", 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'TaskName' => ['description' => 'The name of the delivery task.'."\n", 'type' => 'string', 'example' => 'cdn-test-task', 'title' => ''], 'DeliveryType' => ['description' => 'The destination of the delivery. Valid values:'."\n" ."\n" .'1. sls: Alibaba Cloud Simple Log Service (SLS).'."\n" .'2. http: HTTP server.'."\n" .'3. aws3: Amazon Simple Storage Service (S3).'."\n" .'4. oss: Alibaba Cloud Object Storage Service (OSS).'."\n" .'5. kafka: Kafka.'."\n" .'6. aws3cmpt: S3-compatible storage service.'."\n", 'type' => 'string', 'example' => 'sls', 'title' => ''], 'DataCenter' => ['description' => 'The data center. Valid values:'."\n" ."\n" .'* cn: the Chinese mainland.'."\n" .'* sg: outside the Chinese mainland.'."\n", 'type' => 'string', 'example' => 'cn', 'title' => ''], 'BusinessType' => ['description' => 'The log category. Valid values:'."\n" ."\n" .'* dcdn_log_access_l1 (default): access logs.'."\n" .'* dcdn_log_er: Edge Routine logs.'."\n" .'* dcdn_log_waf: firewall logs.'."\n" .'* dcdn_log_ipa: TCP/UDP proxy logs.'."\n", 'type' => 'string', 'example' => 'dcdn_log_access_l1', 'title' => ''], 'Status' => ['description' => 'The status of the delivery task.'."\n" ."\n" .'* **online**'."\n" .'* **offline**'."\n", 'type' => 'string', 'example' => 'online', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"34DCBC8A-****-****-****-6DAA11D7DDBD\\",\\n \\"TotalCount\\": 20,\\n \\"PageNumber\\": 0,\\n \\"PageSize\\": 20,\\n \\"Tasks\\": [\\n {\\n \\"TaskName\\": \\"cdn-test-task\\",\\n \\"DeliveryType\\": \\"sls\\",\\n \\"DataCenter\\": \\"cn\\",\\n \\"BusinessType\\": \\"dcdn_log_access_l1\\",\\n \\"Status\\": \\"online\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'ListSiteDeliveryTasks', 'changeSet' => [ ['createdAt' => '2024-09-27T05:57:02.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListSiteDeliveryTasks'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:ListSiteDeliveryTasks', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'operationType' => 'read', 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'ListSiteOriginClientCertificates' => [ 'summary' => 'Queries the list of back-to-origin client certificates at the site level.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '261747', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. Default value: **1**.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The page size.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '20', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74', 'title' => ''], 'TotalCount' => ['description' => 'The total number of real-time log projects.', 'type' => 'integer', 'format' => 'int64', 'example' => '90', 'title' => ''], 'PageNumber' => ['description' => 'The page number. Default value: 1.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The page size.', 'type' => 'integer', 'format' => 'int64', 'example' => '1024', 'title' => ''], 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456789****', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com ', 'title' => ''], 'Result' => [ 'description' => 'The list of certificate information.', 'type' => 'array', 'items' => [ 'description' => 'The certificate information.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'The certificate ID.', 'type' => 'string', 'example' => 'babaabcd****', 'title' => ''], 'Name' => ['description' => 'The certificate name.', 'type' => 'string', 'example' => 'yourCertName', 'title' => ''], 'Status' => ['description' => 'The certificate status.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'Type' => ['description' => 'The certificate type.', 'type' => 'string', 'example' => 'upload', 'title' => ''], 'CommonName' => ['description' => 'The common name of the certificate.', 'type' => 'string', 'example' => 'www.example.com ', 'title' => ''], 'NotBefore' => ['description' => 'The start time of the certificate validity period. The time is in the YYYY-MM-DD HH:MM:SS format in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2023-03-31 02:08:00', 'title' => ''], 'NotAfter' => ['description' => 'The end time of the certificate validity period. The time is in the YYYY-MM-DD HH:MM:SS format in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-03-31 02:08:00', 'title' => ''], 'Issuer' => ['description' => 'The certification authority.', 'type' => 'string', 'example' => 'DigiCert', 'title' => ''], 'SAN' => ['description' => 'The Subject Alternative Name (SAN) of the certificate.', 'type' => 'string', 'example' => 'www.example.com,*.example.com', 'title' => ''], 'SignatureAlgorithm' => ['description' => 'The signature algorithm of the certificate.', 'type' => 'string', 'example' => 'SHA256-RSA', 'title' => ''], 'PubkeyAlgorithm' => ['description' => 'The public key algorithm of the certificate.', 'type' => 'string', 'example' => 'RSA', 'title' => ''], 'CreateTime' => ['description' => 'The creation time. The time is in the YYYY-MM-DD HH:MM:SS format in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2024-06-24 07:48:51', 'title' => ''], 'UpdateTime' => ['description' => 'The update time. The time is in the YYYY-MM-DD HH:MM:SS format in the UTC/GMT time zone.', 'type' => 'string', 'example' => '2022-09-22 05:33:13', 'title' => ''], 'SerialNumber' => ['description' => 'The sequence number of the certificate.', 'type' => 'string', 'example' => 'babaded901474b9693acf530e0fb1d**', 'title' => ''], 'FingerprintSha256' => ['description' => 'The SHA-256 fingerprint of the certificate.', 'type' => 'string', 'example' => '1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456a****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.', 'description' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\",\\n \\"TotalCount\\": 90,\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 1024,\\n \\"SiteId\\": 0,\\n \\"SiteName\\": \\"example.com \\",\\n \\"Result\\": [\\n {\\n \\"Id\\": \\"babaabcd****\\",\\n \\"Name\\": \\"yourCertName\\",\\n \\"Status\\": \\"OK\\",\\n \\"Type\\": \\"upload\\",\\n \\"CommonName\\": \\"www.example.com \\",\\n \\"NotBefore\\": \\"2023-03-31 02:08:00\\",\\n \\"NotAfter\\": \\"2024-03-31 02:08:00\\",\\n \\"Issuer\\": \\"DigiCert\\",\\n \\"SAN\\": \\"www.example.com,*.example.com\\",\\n \\"SignatureAlgorithm\\": \\"SHA256-RSA\\",\\n \\"PubkeyAlgorithm\\": \\"RSA\\",\\n \\"CreateTime\\": \\"2024-06-24 07:48:51\\",\\n \\"UpdateTime\\": \\"2022-09-22 05:33:13\\",\\n \\"SerialNumber\\": \\"babaded901474b9693acf530e0fb1d**\\",\\n \\"FingerprintSha256\\": \\"1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456a****\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'List site-level origin client certificates', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListSiteOriginClientCertificates'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListSiteOriginClientCertificates', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListSiteRoutes' => [ 'summary' => 'Queries the list of Edge Routine routes for a site.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '266194', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '35281609698****', 'title' => ''], ], [ 'name' => 'ConfigType', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The configuration type. You can use this parameter to query global or feature configurations. This parameter takes effect only when functionName is specified.', 'enumValueTitles' => ['rule' => 'rule configuration.', 'global' => 'global configuration.'], 'type' => 'string', 'enum' => ['global', 'rule'], 'required' => false, 'example' => 'global', ], ], [ 'name' => 'RouteName', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The route name. You can use this parameter to query the rule whose name matches the specified value. This parameter takes effect only when functionName is specified.', 'type' => 'string', 'required' => false, 'example' => 'test_route'], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number for a paged query. The value must be greater than or equal to 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page for a paged query. Valid values: 1 to 500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'."\n"], 'Configs' => [ 'description' => 'The configuration list in the response.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '35281609698****'."\n", 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the site.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Sequence' => ['description' => 'The execution order of the rule.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RouteEnable' => ['description' => 'The route switch. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'The rule content.', 'type' => 'string', 'example' => '(http.host eq \\"video.example.com\\")', 'title' => ''], 'RouteName' => ['description' => 'The route name.', 'type' => 'string', 'example' => 'test_route', 'title' => ''], 'ConfigType' => ['description' => 'The configuration type. You can use this parameter to query global or rule configurations. Valid values:'."\n" ."\n" .'- global: Queries global configurations.'."\n" .'- rule: Queries rule configurations.', 'type' => 'string', 'example' => 'global', 'title' => ''], 'RoutineName' => ['description' => 'The Edge Routine name.', 'type' => 'string', 'example' => 'test-routine1', 'title' => ''], 'Bypass' => ['description' => 'The bypass mode. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Mode' => ['description' => 'The configuration mode. Valid values:'."\n" .'- simple: Simple mode.'."\n" .'- custom: Custom mode.', 'type' => 'string', 'example' => 'simple', 'title' => ''], 'Fallback' => ['description' => 'The CDN fallback. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Timeout' => ['description' => 'The Edge Routine timeout period, in seconds.', 'type' => 'string', 'example' => '60', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The current page number, which is the same as the PageNumber request parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'TotalCount' => ['description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int32', 'example' => '16', 'title' => ''], 'TotalPage' => ['description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\\\n\\",\\n \\"Configs\\": [\\n {\\n \\"ConfigId\\": 0,\\n \\"SiteVersion\\": 1,\\n \\"Sequence\\": 1,\\n \\"RouteEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\\\\\\\\\"video.example.com\\\\\\\\\\\\\\")\\",\\n \\"RouteName\\": \\"test_route\\",\\n \\"ConfigType\\": \\"global\\",\\n \\"RoutineName\\": \\"test-routine1\\",\\n \\"Bypass\\": \\"on\\",\\n \\"Mode\\": \\"simple\\",\\n \\"Fallback\\": \\"on\\",\\n \\"Timeout\\": \\"60\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 16,\\n \\"TotalPage\\": 10\\n}","type":"json"}]', 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Query edge routine routes for a site', 'changeSet' => [ ['createdAt' => '2025-06-25T05:35:34.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListSiteRoutes'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:ListSiteRoutes', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListSites' => [ 'summary' => 'Queries the list of sites under the current user, including site names, statuses, and configurations.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239591', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'SiteName', 'in' => 'query', 'schema' => ['description' => 'The site name. Used as a filter condition for the query.', 'type' => 'string', 'required' => false, 'example' => 'example.com', 'title' => ''], ], [ 'name' => 'SiteSearchType', 'in' => 'query', 'schema' => [ 'description' => 'The search matching mode for the site name. Default is exact match. Valid values:'."\n" ."\n" .'- **prefix**: prefix match.'."\n" .'- **suffix**: suffix match.'."\n" .'- **exact**: exact match.'."\n" .'- **fuzzy**: fuzzy match.', 'enumValueTitles' => [], 'type' => 'string', 'enum' => ['suffix', 'exact', 'prefix', 'fuzzy'], 'required' => false, 'example' => 'fuzzy', 'title' => '', ], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number for paging. The value must be greater than or equal to 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page for paging. Valid values: 1 to 500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20', 'title' => ''], ], [ 'name' => 'TagFilter', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The tag filter rules.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key. Used as a filter condition for the query.', 'type' => 'string', 'required' => false, 'example' => 'tag1', 'title' => ''], 'Value' => ['description' => 'The tag value. Used as a filter condition for the query.', 'type' => 'string', 'required' => false, 'example' => 'aaa', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The resource group ID. Used as a filter condition for the query.', 'type' => 'string', 'required' => false, 'example' => 'rg-aekzd3styujvyei', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => ['description' => 'The site status. Used as a filter condition for the query.', 'type' => 'string', 'required' => false, 'example' => 'pending', 'title' => ''], ], [ 'name' => 'OnlyEnterprise', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to query only Enterprise Edition sites. Set this parameter to **true** to query only Enterprise Edition sites.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'PlanSubscribeType', 'in' => 'query', 'schema' => ['description' => 'The plan subscription type. Valid values:'."\n" .'- **basicplan**: Basic Edition.'."\n" .'- **standardplan**: Standard Edition.'."\n" .'- **advancedplan**: Premium Edition.'."\n" .'- **enterpriseplan**: Enterprise Edition.', 'type' => 'string', 'required' => false, 'example' => 'basicplan', 'title' => ''], ], [ 'name' => 'Coverage', 'in' => 'query', 'schema' => ['description' => 'The acceleration region. Valid values:'."\n" .'- **domestic**: the Chinese mainland only.'."\n" .'- **global**: global.'."\n" .'- **overseas**: global (excluding the Chinese mainland).', 'type' => 'string', 'required' => false, 'example' => 'global', 'title' => ''], ], [ 'name' => 'AccessType', 'in' => 'query', 'schema' => ['description' => 'The access type. Valid values:'."\n" ."\n" .'- **NS**: NS-based access.'."\n" ."\n" .'- **CNAME**: CNAME-based access.', 'type' => 'string', 'required' => false, 'example' => 'NS', 'title' => ''], ], [ 'name' => 'OrderBy', 'in' => 'query', 'schema' => [ 'description' => 'The sort field. By default, results are sorted by creation time. Valid values:'."\n" .'- gmtCreate: site creation time.'."\n" .'- visitTime: site access time.', 'enumValueTitles' => [], 'type' => 'string', 'required' => false, 'example' => 'visitTime', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'], 'PageNumber' => ['description' => 'The page number of the returned data.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of sites displayed per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'TotalCount' => ['description' => 'The total number of sites.', 'type' => 'integer', 'format' => 'int32', 'example' => '40', 'title' => ''], 'Sites' => [ 'description' => 'The list of queried site information.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'AccessType' => ['description' => 'The site access type. Valid values:'."\n" ."\n" .'- **NS**: NS-based access.'."\n" .'- **CNAME**: CNAME-based access.', 'type' => 'string', 'example' => 'NS', 'title' => ''], 'CnameZone' => ['description' => 'The CNAME suffix of the site. For sites that use CNAME-based access, this is the CNAME suffix that needs to be configured for records.', 'type' => 'string', 'example' => 'example.cname.com', 'title' => ''], 'Coverage' => ['description' => 'The acceleration region of the site. Valid values:'."\n" ."\n" .'- **domestic**: the Chinese mainland only.'."\n" .'- **global**: global.'."\n" .'- **overseas**: global (excluding the Chinese mainland).', 'type' => 'string', 'example' => 'domestic', 'title' => ''], 'CreateTime' => ['description' => 'The creation time of the site. The time is in ISO 8601 format and displayed in UTC. Format: yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2023-12-24T02:01:11Z', 'title' => ''], 'UpdateTime' => ['description' => 'The update time of the site. The time is in ISO 8601 format and displayed in UTC. Format: yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2023-12-24T02:01:11Z', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID of the plan attached to the site.', 'type' => 'string', 'example' => 'onBvtlmIyeXLbiDw81F9', 'title' => ''], 'NameServerList' => ['description' => 'The list of name servers assigned to the site. Multiple values are separated by commas (,).', 'type' => 'string', 'example' => 'male1-1.ialicdn.com,female1-1.ialicdn.com', 'title' => ''], 'PlanName' => ['description' => 'The plan name.', 'type' => 'string', 'example' => 'plan-168656498****', 'title' => ''], 'PlanSpecName' => ['description' => 'The specification name of the site plan.', 'type' => 'string', 'example' => 'normal', 'title' => ''], 'ResourceGroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'example' => 'rg-aek26g6i6se6pna', 'title' => ''], 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456789****', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], 'Status' => ['description' => 'The site status. Valid values:'."\n" .'- **pending**: the site is pending configuration.'."\n" .'- **active**: the site is activated.'."\n" .'- **offline**: the site is offline.'."\n" .'- **moved**: the site has been superseded.', 'type' => 'string', 'example' => 'pending', 'title' => ''], 'Tags' => ['description' => 'The site tags.', 'type' => 'object', 'example' => '{"tag1":"value1"}', 'title' => ''], 'VerifyCode' => ['description' => 'The site ownership verification code. When a site uses CNAME-based access, this TXT verification code must be configured.', 'type' => 'string', 'example' => 'verify_d516cb3740f81f0cef77d162edd1****', 'title' => ''], 'VisitTime' => ['description' => 'The access time of the site. The time is in ISO 8601 format and displayed in UTC. Format: yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2023-12-24T02:01:11Z', 'title' => ''], 'OfflineReason' => ['description' => 'The reason why the site is disabled. Valid values:'."\n" ."\n" .'- **expiration_ arrears**: The subscription plan has expired or the account has an overdue payment.'."\n" .'- **internally_disabled**: The site is disabled by the system.'."\n" .'- **missing_icp**: The domain name does not have an ICP filing.'."\n" .'- **content_violation**: Content violation.'."\n" .'- **proactively_disabled**: You proactively disabled the site or the site is disabled because the usage cap you configured is reached.', 'type' => 'string', 'example' => 'expiration_ arrears', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"TotalCount\\": 40,\\n \\"Sites\\": [\\n {\\n \\"AccessType\\": \\"NS\\",\\n \\"CnameZone\\": \\"example.cname.com\\",\\n \\"Coverage\\": \\"domestic\\",\\n \\"CreateTime\\": \\"2023-12-24T02:01:11Z\\",\\n \\"UpdateTime\\": \\"2023-12-24T02:01:11Z\\",\\n \\"InstanceId\\": \\"onBvtlmIyeXLbiDw81F9\\",\\n \\"NameServerList\\": \\"male1-1.ialicdn.com,female1-1.ialicdn.com\\",\\n \\"PlanName\\": \\"plan-168656498****\\",\\n \\"PlanSpecName\\": \\"normal\\",\\n \\"ResourceGroupId\\": \\"rg-aek26g6i6se6pna\\",\\n \\"SiteId\\": 0,\\n \\"SiteName\\": \\"example.com\\",\\n \\"Status\\": \\"pending\\",\\n \\"Tags\\": {\\n \\"tag1\\": \\"value1\\"\\n },\\n \\"VerifyCode\\": \\"verify_d516cb3740f81f0cef77d162edd1****\\",\\n \\"VisitTime\\": \\"2023-12-24T02:01:11Z\\",\\n \\"OfflineReason\\": \\"expiration_ arrears\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Query site list', 'changeSet' => [ ['createdAt' => '2025-02-18T05:59:13.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-11-28T06:41:39.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2024-09-23T07:16:48.000Z', 'description' => 'Error codes changed, Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListSites'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListSites', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ListTagResources' => [ 'summary' => 'Queries tags by region ID and resource type.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239641', 'abilityTreeNodes' => ['FEATUREdcdn6S5O3S'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The region ID. Valid values:'."\n" .'- Alibaba Cloud China Website (www.aliyun.com): cn-hangzhou'."\n" .'- Alibaba Cloud International Website (www.alibabacloud.com): ap-southeast-1.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The resource ID. Enter a site ID or a DNS record ID. You must specify at least one of ResourceId and Tag.', 'type' => 'array', 'items' => ['description' => 'The resource ID. Enter a site ID or a DNS record ID.', 'type' => 'string', 'required' => false, 'example' => '123456xxxxx', 'title' => ''], 'required' => false, 'maxItems' => 51, 'title' => '', 'example' => '', ], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of tags. You can specify up to 20 tags. You must specify at least one of ResourceId and Tag.', 'type' => 'array', 'items' => [ 'description' => 'The list of tags. You can specify up to 20 tags.', 'type' => 'object', 'properties' => [ 'Key' => ['title' => '', 'description' => 'The tag key.', 'type' => 'string', 'required' => false, 'example' => 'env'], 'Value' => ['title' => '', 'description' => 'The tag value.', 'type' => 'string', 'required' => false, 'example' => 'value'], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 21, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceType', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The resource type. Valid values:'."\n" ."\n" .'- site: site'."\n" .'- record: DNS record.', 'type' => 'string', 'required' => true, 'example' => 'site', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The token for the next query to return more results.'."\n" .'> You do not need to specify this parameter for the first query. If a query does not return all results, pass the **NextToken** value returned from the previous query to continue the query.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAZjtYxxxxxxxx', 'title' => ''], ], [ 'name' => 'MaxItem', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries to return.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-280B-72F8FD6DA2FE', 'title' => ''], 'NextToken' => ['description' => 'The token for the next query. If NextToken is empty, all information has been displayed on the current page.', 'type' => 'string', 'example' => 'AAAAAYwsxxxxxxx', 'title' => ''], 'TagResources' => [ 'description' => 'The resource tags.', 'type' => 'array', 'items' => [ 'description' => 'The resource tags.', 'type' => 'object', 'properties' => [ 'TagKey' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'env', 'title' => ''], 'TagValue' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'value', 'title' => ''], 'ResourceId' => ['description' => 'The resource ID. Enter a site ID or a DNS record ID.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], 'ResourceType' => ['description' => 'The resource type. Valid values:'."\n" ."\n" .'- site: site'."\n" .'- record: DNS record.', 'type' => 'string', 'example' => 'site', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.TagValue', 'errorMessage' => 'The specified TagValue is invalid.', 'description' => 'The TagValue parameter is invalid.'], ['errorCode' => 'InvalidNextToken', 'errorMessage' => 'The specified parameter NextToken is invalid.', 'description' => 'The parameter NextToken is illegal.'], ], 404 => [ ['errorCode' => 'InvalidResourceId.NotFound', 'errorMessage' => 'The specified resource does not exist or is released.', 'description' => 'The resource does not exist or has been released.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-280B-72F8FD6DA2FE\\",\\n \\"NextToken\\": \\"AAAAAYwsxxxxxxx\\",\\n \\"TagResources\\": [\\n {\\n \\"TagKey\\": \\"env\\",\\n \\"TagValue\\": \\"value\\",\\n \\"ResourceId\\": \\"example.com\\",\\n \\"ResourceType\\": \\"site\\"\\n }\\n ],\\n \\"TotalCount\\": 1\\n}","type":"json"}]', 'title' => 'Query tags', 'changeSet' => [ ['createdAt' => '2025-08-21T07:40:23.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T06:13:41.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListTagResources'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListTagResources', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListTraceTasks' => [ 'summary' => 'Retrieves a list of diagnostic tasks.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '241915', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'DiagnoseId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The diagnose ID.', 'type' => 'string', 'example' => 'f2xxx5', 'required' => false], ], [ 'name' => 'TraceId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The diagnostic trace ID.', 'type' => 'string', 'example' => '000000xxxxxxxxxxxxxxxxxxxxxx33427e', 'required' => false], ], [ 'name' => 'TaskId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The diagnostic task ID.', 'type' => 'string', 'example' => 'xxxxxxxxxx-x-x-xxxxxxxxxxxxxxxxx', 'required' => false], ], [ 'name' => 'ClientIp', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The client IP address.', 'type' => 'string', 'example' => '60.xx.xxx.38', 'required' => false], ], [ 'name' => 'DomainName', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The domain name to diagnose.', 'type' => 'string', 'example' => 'http://www.example.com', 'required' => false], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The start time. Time zone: UTC/GMT.', 'type' => 'string', 'example' => '2006-01-02T15:04:05Z', 'required' => false], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The end time. Time zone: UTC/GMT.', 'type' => 'string', 'example' => '2006-01-02T15:04:05Z', 'required' => false], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number. Default value: 1.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'required' => false], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page size. Valid values: any integer from 1 to 1000.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Count' => ['title' => '', 'description' => 'The number of pages.', 'type' => 'integer', 'format' => 'int64', 'example' => '10'], 'List' => [ 'title' => '', 'description' => 'The returned list information.', 'type' => 'array', 'items' => [ 'title' => '', 'description' => 'The object.', 'type' => 'object', 'properties' => [ 'Aliuid' => ['title' => '', 'description' => 'The Alibaba Cloud account ID.', 'type' => 'string', 'example' => '1077********7468'], 'ClientAddr' => ['title' => '', 'description' => 'The IP address of the local DNS server.', 'type' => 'string', 'example' => 'xx.xx.xx.xx'], 'ClientIp' => ['title' => '', 'description' => 'The client IP address.', 'type' => 'string', 'example' => 'xx.xx.xx.xx'], 'CreateTime' => ['title' => '', 'description' => 'The time when the report was created. Format: yyyy-MM-dd HH:mm:ss. Time zone: UTC+8.', 'type' => 'string', 'example' => '2022-12-10 15:11:47'], 'DiagnoseId' => ['title' => '', 'description' => 'The diagnose ID.', 'type' => 'string', 'example' => 'f2a18ad5'], 'DiagnoseUrl' => ['title' => '', 'description' => 'The diagnostic URL.', 'type' => 'string', 'example' => 'http://cdn.dns-detect.alicdn.com/diagnose/xxxxxx'], 'Domain' => ['title' => '', 'description' => 'The domain name to diagnose.', 'type' => 'string', 'example' => 'http://www.example.com'], 'ExpireTime' => ['title' => '', 'description' => 'The expiration time. The value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1669285111'], 'RemainDiagnoseTimes' => ['title' => '', 'description' => 'The remaining number of available diagnostic attempts.', 'type' => 'integer', 'format' => 'int64', 'example' => '10'], 'State' => ['title' => '', 'description' => 'The report generation status. Valid values:'."\n" ."\n" .'- 0: Succeeded.'."\n" .'- 1: Failed.'."\n" .'- 2: Timed out.'."\n" .'- 3: Running.'."\n" .'- 4: Waiting.', 'type' => 'string', 'example' => '0'], 'Status' => ['title' => '', 'description' => 'The status of the diagnostic URL. Valid values:'."\n" ."\n" .'- 1: active'."\n" .'- 0: expired.', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], 'TaskId' => ['title' => '', 'description' => 'The task ID.', 'type' => 'string', 'example' => '000000xxxxxxxxxxxxxxxxxxxxxxxxxxxx475e'], 'TimeConsuming' => ['title' => '', 'description' => 'The time consumed to generate the report.', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], 'TraceId' => ['title' => '', 'description' => 'The diagnostic trace ID.', 'type' => 'string', 'example' => '000000xxxxxxxxxxxxxxxxxxxxxx25941e'], ], 'example' => '', ], 'example' => '', ], 'PageNumber' => ['title' => '', 'description' => 'The page number, starting from 1.', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], 'PageSize' => ['title' => '', 'description' => 'The page size. Valid values: any integer from 1 to 1000.', 'type' => 'integer', 'format' => 'int64', 'example' => '6'], 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '4E09C5D7-E1CF-4CAA-A45E-8727F4C8FD70'], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Retrieve diagnostic task list', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:ListTraceTasks', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Count\\": 10,\\n \\"List\\": [\\n {\\n \\"Aliuid\\": \\"1077********7468\\",\\n \\"ClientAddr\\": \\"xx.xx.xx.xx\\",\\n \\"ClientIp\\": \\"xx.xx.xx.xx\\",\\n \\"CreateTime\\": \\"2022-12-10 15:11:47\\",\\n \\"DiagnoseId\\": \\"f2a18ad5\\",\\n \\"DiagnoseUrl\\": \\"http://cdn.dns-detect.alicdn.com/diagnose/xxxxxx\\",\\n \\"Domain\\": \\"http://www.example.com\\",\\n \\"ExpireTime\\": 1669285111,\\n \\"RemainDiagnoseTimes\\": 10,\\n \\"State\\": \\"0\\",\\n \\"Status\\": 1,\\n \\"TaskId\\": \\"000000xxxxxxxxxxxxxxxxxxxxxxxxxxxx475e\\",\\n \\"TimeConsuming\\": 1,\\n \\"TraceId\\": \\"000000xxxxxxxxxxxxxxxxxxxxxx25941e\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 6,\\n \\"RequestId\\": \\"4E09C5D7-E1CF-4CAA-A45E-8727F4C8FD70\\"\\n}","type":"json"}]', ], 'ListTransportLayerApplications' => [ 'summary' => 'Query the list of Layer 4 applications for a site.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '245119', 'abilityTreeNodes' => ['FEATUREdcdn2E10XY'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID. You can obtain it by calling the [ListSites](~~2850189~~) API.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456******', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number for paginated queries. The value must be greater than or equal to 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page for paginated queries. Valid values: 1-500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '500', 'title' => ''], ], [ 'name' => 'MatchType', 'in' => 'query', 'schema' => [ 'description' => 'The query type for the host record of Layer 4 applications. The following four types are supported, and the default is exact match.'."\n" ."\n" .'- fuzzy: Fuzzy match.'."\n" .'- exact: Exact match.'."\n" .'- prefix: Prefix match.'."\n" .'- suffix: Suffix match.', 'enumValueTitles' => [], 'type' => 'string', 'enum' => ['fuzzy', 'prefix', 'suffix', 'exact'], 'required' => false, 'example' => 'fuzzy', 'title' => '', ], ], [ 'name' => 'RecordName', 'in' => 'query', 'schema' => ['description' => 'The host record of the Layer 4 application.', 'type' => 'string', 'required' => false, 'example' => 'www.example.com', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-A198-72F8FD6DA2FE'], 'PageNumber' => ['description' => 'The current page number, same as the PageNumber request parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of Layer 4 applications.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Applications' => [ 'description' => 'The list of Layer 4 applications.', 'type' => 'array', 'items' => [ 'description' => 'Details of a Layer 4 application.', 'type' => 'object', 'properties' => [ 'Rules' => [ 'description' => 'The list of forwarding rules.', 'type' => 'array', 'items' => [ 'description' => 'Details of a forwarding rule.', 'type' => 'object', 'properties' => [ 'Protocol' => ['description' => 'The protocol of the forwarding rule. Valid values:'."\n" ."\n" .'- TCP: TCP protocol.'."\n" .'- UDP: UDP protocol.', 'type' => 'string', 'example' => 'TCP', 'title' => ''], 'EdgePort' => ['description' => 'The edge port. Supported formats:'."\n" ."\n" .'- A single port, such as 80.'."\n" .'- A port range, such as 81-85, which represents ports 81, 82, 83, 84, and 85.'."\n" .'- A combination of ports and port ranges separated by commas, such as 80,81-85,90, which represents ports 80, 81, 82, 83, 84, 85, and 90.', 'type' => 'string', 'example' => '80', 'title' => ''], 'SourcePort' => ['description' => 'The origin port. Supported formats:'."\n" ."\n" .'- A single port. When the origin port is a single port, any valid combination of edge ports is supported.'."\n" .'- A port range. The origin port can be set to a port range only when the edge port is a port range, and the range size must be the same as that of the edge port. For example, if the edge port is 90-93, the origin port cannot be set to 81-85, because the origin port range size is 5 while the edge port range size is 3, which are inconsistent.', 'type' => 'string', 'example' => '80', 'title' => ''], 'Source' => ['description' => 'The specific value of the origin, which must match the origin type.', 'type' => 'string', 'example' => '1.1.1.1', 'title' => ''], 'Comment' => ['description' => 'The comment for the rule.', 'type' => 'string', 'example' => 'Test', 'title' => ''], 'ClientIPPassThroughMode' => ['description' => 'The client IP pass-through protocol. Supported values:'."\n" .'- **off**: Disabled.'."\n" .'- **PPv1**: PROXY Protocol v1, which supports client IP pass-through for TCP protocol.'."\n" .'- **PPv2**: PROXY Protocol v2, which supports client IP pass-through for TCP and UDP protocols.'."\n" .'- **SPP**: Simple Proxy Protocol, which supports client IP pass-through for UDP protocol.', 'type' => 'string', 'example' => 'off', 'title' => ''], 'SourceType' => ['description' => 'The origin type. Supported values:'."\n" .'- **ip**: IP address.'."\n" .'- **domain**: Domain name.'."\n" .'- **OP**: Origin pool.'."\n" .'- **LB**: Load balancer.', 'type' => 'string', 'example' => 'ip', 'title' => ''], 'RuleId' => ['description' => 'The Layer 4 acceleration rule ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '20258028****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'ApplicationId' => ['description' => 'The Layer 4 application ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '170997271816****', 'title' => ''], 'RecordName' => ['description' => 'The domain name of the Layer 4 application.', 'type' => 'string', 'example' => 'test.example.com'."\n", 'title' => ''], 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '36556540048****', 'title' => ''], 'RulesCount' => ['description' => 'The number of forwarding rules contained in the Layer 4 acceleration application.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Cname' => ['description' => 'The CNAME domain name corresponding to the Layer 4 acceleration application. This field is non-empty only when the site is connected via the CNAME method.', 'type' => 'string', 'example' => 'example.com.ialicdn.com'."\n", 'title' => ''], 'IpAccessRule' => [ 'description' => 'The IP access rule switch. When enabled, the IP access rules in WAF take effect for the Layer 4 application.'."\n" ."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => [], 'type' => 'string', 'example' => 'on', 'title' => '', ], 'Ipv6' => [ 'description' => 'The IPv6 switch. Valid values:'."\n" ."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => [], 'type' => 'string', 'example' => 'on', 'title' => '', ], 'Status' => [ 'description' => 'The status of the Layer 4 application.'."\n" ."\n" .'- **deploying**: Deploying. Modification and deletion are not allowed in this state.'."\n" .'- **active**: Active.', 'enumValueTitles' => [], 'type' => 'string', 'example' => 'active', 'title' => '', ], 'CrossBorderOptimization' => [ 'description' => 'Indicates whether mainland China network access optimization is enabled. Disabled by default. Valid values:'."\n" ."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => [], 'type' => 'string', 'example' => 'on', 'title' => '', ], 'StaticIp' => [ 'description' => 'Indicates whether static IP is enabled. Disabled by default. Valid values:'."\n" ."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => [], 'type' => 'string', 'example' => 'on', 'title' => '', ], 'StaticIpV4List' => [ 'description' => 'The list of static IPv4 addresses assigned to this Layer 4 application after the static IP feature is enabled.', 'type' => 'array', 'items' => [ 'description' => 'A single static IPv4 address, including the IP address and its status.', 'type' => 'object', 'properties' => [ 'Address' => ['description' => 'The IP address.', 'type' => 'string', 'example' => '1.1.1.2', 'title' => ''], 'Status' => [ 'description' => 'The status of the IP address. Valid values:'."\n" ."\n" .'- healthy: Healthy.'."\n" .'- unhealthy: Unhealthy.'."\n" .'- unknown: IP address is being prepared.', 'enumValueTitles' => [], 'type' => 'string', 'example' => 'healthy', 'title' => '', ], ], 'title' => '', 'example' => '', ], 'required' => true, 'title' => '', 'example' => '', ], 'KeepAliveProtection' => [ 'title' => '', 'description' => 'Indicates whether keep-alive protection is enabled. Disabled by default. Valid values:'."\n" ."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => [], 'type' => 'string', 'enum' => ['on', 'off'], 'example' => 'off', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-A198-72F8FD6DA2FE\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 1,\\n \\"TotalCount\\": 1,\\n \\"Applications\\": [\\n {\\n \\"Rules\\": [\\n {\\n \\"Protocol\\": \\"TCP\\",\\n \\"EdgePort\\": \\"80\\",\\n \\"SourcePort\\": \\"80\\",\\n \\"Source\\": \\"1.1.1.1\\",\\n \\"Comment\\": \\"Test\\",\\n \\"ClientIPPassThroughMode\\": \\"off\\",\\n \\"SourceType\\": \\"ip\\",\\n \\"RuleId\\": 0\\n }\\n ],\\n \\"ApplicationId\\": 0,\\n \\"RecordName\\": \\"test.example.com\\\\n\\",\\n \\"SiteId\\": 0,\\n \\"RulesCount\\": 1,\\n \\"Cname\\": \\"example.com.ialicdn.com\\\\n\\",\\n \\"IpAccessRule\\": \\"on\\",\\n \\"Ipv6\\": \\"on\\",\\n \\"Status\\": \\"active\\",\\n \\"CrossBorderOptimization\\": \\"on\\",\\n \\"StaticIp\\": \\"on\\",\\n \\"StaticIpV4List\\": [\\n {\\n \\"Address\\": \\"1.1.1.2\\",\\n \\"Status\\": \\"healthy\\"\\n }\\n ],\\n \\"KeepAliveProtection\\": \\"off\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Query the list of Layer 4 acceleration applications for a site', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListTransportLayerApplications'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListTransportLayerApplications', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListUploadTasks' => [ 'summary' => 'Lists the execution status and runtime information of file upload tasks by time and type.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239070', 'abilityTreeNodes' => ['FEATUREdcdnBCJPGN', 'FEATUREdcdnRELTJV', 'FEATUREdcdnEWYS3A', 'FEATUREdcdn4TTNAL'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can obtain this value by calling the [ListSites](~~2850189~~) operation.'."\n" .'>This parameter is required when you call the ListUploadTasks operation.>.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The start time in ISO 8601 format (for example, 2024-01-01T00:00:00+Z).'."\n" .'>StartTime and EndTime must be provided together to define the query time window. An error is returned if either one is missing.>.', 'type' => 'string', 'required' => false, 'example' => '2018-11-29T00:00:00Z', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end time in ISO 8601 format (for example, 2024-01-01T00:00:00+Z).'."\n" .'>StartTime and EndTime must be provided together to define the query time window. An error is returned if either one is missing.>.', 'type' => 'string', 'required' => false, 'example' => '2019-12-06T12:00:00Z', 'title' => ''], ], [ 'name' => 'Type', 'in' => 'query', 'schema' => ['description' => 'The task type. Valid values:'."\n" ."\n" .'- **file**: URL file purge.'."\n" .'- **preload**: resource prefetch.'."\n" .'- **directory**: directory purge.'."\n" .'- **ignoreparams**: purge with parameters ignored.', 'type' => 'string', 'required' => false, 'example' => 'file', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-A198-72F8FD6D****'], 'Tasks' => [ 'description' => 'The list of file upload tasks.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'UploadTaskName' => ['description' => 'The name of the file upload task.', 'type' => 'string', 'example' => 'purge_file_task', 'title' => ''], 'UploadId' => ['description' => 'The ID of the file upload task.', 'type' => 'string', 'example' => '159253299357****', 'title' => ''], 'CreateTime' => ['description' => 'The creation time in ISO 8601 format (for example, 2024-01-01T00:00:00+Z).', 'type' => 'string', 'example' => '2023-07-26T01:56:15Z', 'title' => ''], 'Status' => ['description' => 'The task status. Valid values:'."\n" .'- **Complete**: The task is complete.'."\n" .'- **Refreshing**: The task is in progress.'."\n" .'- **Failed**: The task failed.', 'type' => 'string', 'example' => 'Complete', 'title' => ''], 'Type' => ['description' => 'The task type. Valid values:'."\n" ."\n" .'- **file**: URL file purge.'."\n" .'- **preload**: resource prefetch.'."\n" .'- **directory**: directory purge.'."\n" .'- **ignoreparams**: purge with parameters ignored.', 'type' => 'string', 'example' => 'file', 'title' => ''], 'Description' => ['description' => 'The error message returned when the file upload task fails.', 'type' => 'string', 'example' => 'invalid url', 'title' => ''], 'ErrorCode' => ['description' => 'The error code. Multiple error codes are separated by commas. Valid values:'."\n" ."\n" .'- **InvalidUrl**: The URL format is invalid.'."\n" .'- **InvalidDomain**: The domain name ownership verification failed.'."\n" .'- **QuotaExcess**: The quota limit is exceeded.'."\n" .'- **OtherErrors**: Other errors occurred.', 'type' => 'string', 'example' => 'InvalidUrl,InvalidDomain', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingTimeParameter', 'errorMessage' => 'The StartTime and EndTime must be both specified.', 'description' => 'Please provide both a start time and an end time.'], ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'DomainNameOverLimit', 'errorMessage' => 'A maximum of 500 domains are supported for each request.', 'description' => 'Only 500 domain names are supported at a time. Please reduce the number of domain names to request again.'], ['errorCode' => 'InvalidTime', 'errorMessage' => 'The query time cannot exceed the last 3 days.', 'description' => 'The query time cannot exceed the last 3 days.'], ['errorCode' => 'MissingParameter.ObjectType', 'errorMessage' => 'The ObjectType parameter is required if DomainName or ObjectType is specified.', 'description' => 'Specify the ObjectType parameter.'], ['errorCode' => 'InvalidStationParameter', 'errorMessage' => 'The specified Station is invalid.', 'description' => 'The specified node parameter is invalid.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ['errorCode' => 'InvalidTaskId.Malformed', 'errorMessage' => 'The specified taskId is invalid.', 'description' => 'The specified task ID is invalid.'], ['errorCode' => 'InvalidParameters.InvalidUrls', 'errorMessage' => 'The specified urls are invalid.', 'description' => 'The requested URL parameter is invalid.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-A198-72F8FD6D****\\",\\n \\"Tasks\\": [\\n {\\n \\"UploadTaskName\\": \\"purge_file_task\\",\\n \\"UploadId\\": \\"159253299357****\\",\\n \\"CreateTime\\": \\"2023-07-26T01:56:15Z\\",\\n \\"Status\\": \\"Complete\\",\\n \\"Type\\": \\"file\\",\\n \\"Description\\": \\"invalid url\\",\\n \\"ErrorCode\\": \\"InvalidUrl,InvalidDomain\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'List file upload tasks', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListUploadTasks'], ], ], 'ramActions' => [], ], 'ListUrlObservations' => [ 'summary' => 'Queries the list of web page observation configurations.', 'path' => '', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '264797', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can obtain this value by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '34003500310****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '35281609698****', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number for a paged query. The value must be greater than or equal to 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page for a paged query. Valid values: 1 to 500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74'], 'Configs' => [ 'description' => 'The configuration data.', 'type' => 'array', 'items' => [ 'description' => 'The configuration details.', 'type' => 'object', 'properties' => [ 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '35281609698****'."\n", 'title' => ''], 'Url' => ['description' => 'The URL of the web page to monitor.', 'type' => 'string', 'example' => 'example.com/test', 'title' => ''], 'SdkType' => ['description' => 'The SDK integration method. Valid values:'."\n" ."\n" .'- **automatic**: Automatic integration.'."\n" .'- **manual**: Manual integration.', 'type' => 'string', 'example' => 'manual', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The current page number, which is the same as the PageNumber request parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalPage' => ['description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\",\\n \\"Configs\\": [\\n {\\n \\"ConfigId\\": 0,\\n \\"Url\\": \\"example.com/test\\",\\n \\"SdkType\\": \\"manual\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"TotalCount\\": 1,\\n \\"TotalPage\\": 1\\n}","type":"json"}]', 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Query web page monitoring configurations', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListUrlObservations'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListUrlObservations', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListUserDeliveryTasks' => [ 'summary' => 'Queries all delivery tasks in your Alibaba Cloud account by page. You can filter the delivery tasks by the category of the delivered real-time logs.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239264', 'abilityTreeNodes' => ['FEATUREdcdn9K10I1'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'BusinessType', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'The log category. Valid values:'."\n" ."\n" .'1. dcdn_log_access_l1 (default): access logs.'."\n" .'2. dcdn_log_er: Edge Routine logs.'."\n" .'3. dcdn_log_waf: firewall logs.'."\n" .'4. dcdn_log_ipa: TCP/UDP proxy logs.'."\n", 'type' => 'string', 'required' => false, 'example' => 'dcdn_log_access_l1'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Default value: 20.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '20', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. Default value: 1.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '1f94c47f-3a1a-4f69-8d6c-bfeee1b49aab'], 'TotalCount' => ['description' => 'The total number of delivery tasks.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '68', 'title' => ''], 'PageNumber' => ['description' => 'The page number returned.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'Tasks' => [ 'description' => 'The delivery tasks.'."\n", 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'TaskName' => ['description' => 'The name of the delivery task.'."\n", 'type' => 'string', 'example' => 'testoss11', 'title' => ''], 'DeliveryType' => ['description' => 'The delivery destination.'."\n", 'type' => 'string', 'example' => 'oss', 'title' => ''], 'DataCenter' => ['description' => 'The data center. Valid values:'."\n" ."\n" .'1. cn: the Chinese mainland.'."\n" .'2. sg: outside the Chinese mainland.'."\n", 'type' => 'string', 'example' => 'cn', 'title' => ''], 'BusinessType' => ['description' => 'The log category.'."\n", 'type' => 'string', 'example' => 'dcdn_log_er', 'title' => ''], 'Status' => ['description' => 'The status of the delivery task.'."\n", 'type' => 'string', 'example' => 'online', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ], 403 => [ ['errorCode' => 'EsaService.NotOpen', 'errorMessage' => 'ESA service has not opend.', 'description' => 'Edge Security Accelerator (ESA) is not turned on'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1f94c47f-3a1a-4f69-8d6c-bfeee1b49aab\\",\\n \\"TotalCount\\": 68,\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"Tasks\\": [\\n {\\n \\"TaskName\\": \\"testoss11\\",\\n \\"DeliveryType\\": \\"oss\\",\\n \\"DataCenter\\": \\"cn\\",\\n \\"BusinessType\\": \\"dcdn_log_er\\",\\n \\"Status\\": \\"online\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'ListUserDeliveryTasks', 'changeSet' => [ ['createdAt' => '2024-10-18T01:07:11.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-27T05:57:02.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListUserDeliveryTasks'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListUserDeliveryTasks', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ListUserRatePlanInstances' => [ 'summary' => 'Queries the plan instances purchased by the user and their details.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239044', 'abilityTreeNodes' => ['FEATUREdcdnZA9EPX'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'CheckRemainingSiteQuota', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to filter plan instances that have remaining site quota. Valid values:'."\n" ."\n" .'- **true**: Filters plan instances that have remaining site quota.'."\n" .'- **false**: Queries all plan instances under the user.', 'enumValueTitles' => [], 'type' => 'string', 'enum' => ['true', 'false'], 'required' => false, 'example' => 'true', 'title' => '', ], ], [ 'name' => 'Status', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => [ 'description' => 'The instance status. Valid values:'."\n" .'- **online**: The plan instance is in normal service.'."\n" .'- **offline**: The plan instance has expired but has not exceeded the grace period and is not active.'."\n" .'- **disable**: The plan instance has been released.'."\n" .'- **overdue**: The plan instance has an overdue payment.', 'enumValueTitles' => [], 'type' => 'string', 'enum' => ['online', 'offline', 'disable', 'all', 'overdue'], 'required' => false, 'example' => 'online', 'title' => '', ], ], [ 'name' => 'SortBy', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => [ 'description' => 'The field by which to sort the results. By default, results are sorted by purchase time. Valid values:'."\n" ."\n" .'- **CreateTime**: purchase time.'."\n" .'- **ExpireTime**: expiration time.', 'enumValueTitles' => [], 'type' => 'string', 'enum' => ['ExpireTime', 'CreateTime', 'default'], 'required' => false, 'example' => 'CreateTime', 'title' => '', ], ], [ 'name' => 'SortOrder', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The sort order. Default value: desc. Valid values:'."\n" ."\n" .'- **asc**: ascending order.'."\n" .'- **desc**: descending order.', 'enumValueTitles' => [], 'type' => 'string', 'enum' => ['asc', 'desc'], 'required' => false, 'example' => 'asc', ], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number to return in a paged query. Default value: **1**. Valid values: **1** to **100000**. Settings for paging take effect only when this parameter is specified.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page in a paged query. Valid values: 1 to 500. This parameter is used for paging.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '500', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The plan instance ID. You can obtain the ID by calling the [ListSites](~~2850189~~) operation.', 'type' => 'string', 'required' => false, 'example' => 'sp-xcdn-96wblslz****', 'title' => ''], ], [ 'name' => 'RemainingExpireDays', 'in' => 'query', 'schema' => ['description' => 'Queries plan instances whose remaining validity period is within the specified number of days. The value must be a positive integer. Unit: days.', 'type' => 'integer', 'format' => 'int32', 'exclusiveMinimum' => false, 'required' => false, 'example' => '30', 'title' => ''], ], [ 'name' => 'SubscribeType', 'in' => 'query', 'schema' => [ 'description' => 'The plan subscription type. Valid values:'."\n" ."\n" .'- entranceplan: Free Edition (Chinese mainland)'."\n" .'- entranceplan_intl: Free Edition (International)'."\n" .'- basicplan: Basic Edition'."\n" .'- standardplan: Standard Edition'."\n" .'- advancedplan: Premium Edition'."\n" .'- enterpriseplan: Enterprise Edition.', 'enumValueTitles' => [], 'type' => 'string', 'required' => false, 'enum' => ['entranceplan', 'basicplan', 'standardplan', 'advancedplan', 'enterpriseplan'], 'example' => 'basicplan', 'title' => '', ], ], [ 'name' => 'PlanType', 'in' => 'query', 'schema' => ['description' => 'The plan type. Valid values:'."\n" ."\n" .'- normal: fixed-version plan'."\n" .'- enterprise: Enterprise Edition plan.', 'type' => 'string', 'required' => false, 'example' => 'enterprise', 'title' => ''], ], [ 'name' => 'PlanNameEn', 'in' => 'query', 'schema' => ['description' => 'The plan name in English.', 'type' => 'string', 'required' => false, 'example' => 'entranceplan', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-3C82-72F8FD6DA2FE'], 'InstanceInfo' => [ 'description' => 'The plan instances that match the specified conditions under the user.', 'type' => 'array', 'items' => [ 'description' => 'The details of the plan instance.', 'type' => 'object', 'properties' => [ 'InstanceId' => ['description' => 'The plan instance ID.', 'type' => 'string', 'example' => 'sp-xcdn-96wblslz****', 'title' => ''], 'PlanName' => ['description' => 'The plan name associated with the plan instance.', 'type' => 'string', 'example' => 'basic', 'title' => ''], 'PlanType' => ['description' => 'The plan type associated with the plan instance. Valid values:'."\n" .'- **normal**: fixed-version plan.'."\n" .'- **enterprise**: Enterprise Edition plan.', 'type' => 'string', 'example' => 'normal', 'title' => ''], 'SiteQuota' => ['description' => 'The site quota for the plan instance.', 'type' => 'string', 'example' => '1', 'title' => ''], 'ExpireTime' => ['description' => 'The expiration time of the plan instance. The time is in ISO 8601 format and displayed in UTC. Format: yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2026-04-19T11:15:20Z', 'title' => ''], 'Duration' => ['description' => 'The subscription duration of the plan instance. Unit: months.', 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''], 'CreateTime' => ['description' => 'The purchase time of the plan instance. The time is in ISO 8601 format and displayed in UTC. Format: yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2026-04-19T11:15:20Z', 'title' => ''], 'Sites' => [ 'description' => 'The list of sites bound to the current plan instance.', 'type' => 'array', 'items' => [ 'description' => 'The details of the bound site.', 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456****', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], 'SiteStatus' => ['description' => 'The site status. Valid values:'."\n" ."\n" .'- **pending**: The site is pending configuration.'."\n" .'- **active**: The site is activated.'."\n" .'- **offline**: The site is offline.'."\n" .'- **moved**: The site has been superseded.', 'type' => 'string', 'example' => 'pending', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'Status' => ['description' => 'The instance status. Valid values:'."\n" .'- **online**: The plan instance is in normal service.'."\n" .'- **offline**: The plan instance has expired but has not exceeded the grace period and is not active.'."\n" .'- **disable**: The plan instance has been released.', 'type' => 'string', 'example' => 'online', 'title' => ''], 'Coverages' => ['description' => 'The acceleration regions to which sites can be bound under this plan instance. Multiple values are separated by commas (,). Valid values:'."\n" ."\n" .'- **domestic**: China or the Chinese mainland.'."\n" .'- **overseas**: Global (excluding China or the Chinese mainland).'."\n" .'- **global**: Global (including China or the Chinese mainland).', 'type' => 'string', 'example' => 'domestic,overseas', 'title' => ''], 'BillingMode' => ['description' => 'The billing method. Valid values:'."\n" ."\n" .'- **PREPAY**: subscription.'."\n" .'- **POSTPAY**: pay-as-you-go.', 'type' => 'string', 'example' => 'PREPAY', 'title' => ''], 'PlanTraffic' => ['description' => 'The prepaid Layer 7 acceleration traffic included in the plan, in GB.', 'type' => 'string', 'example' => '100', 'title' => ''], 'Layer4Traffic' => ['description' => 'The prepaid Layer 4 proxy traffic included in the plan, in GB, for the Chinese mainland.', 'type' => 'string', 'example' => '100', 'title' => ''], 'Layer4TrafficIntl' => ['description' => 'The prepaid Layer 4 proxy traffic included in the plan, in GB, outside the Chinese mainland.', 'type' => 'string', 'example' => '100', 'title' => ''], 'CrossborderTraffic' => ['description' => 'The prepaid China network acceleration traffic included in the plan, in GB.', 'type' => 'string', 'example' => '100', 'title' => ''], 'EdgeRoutineRquest' => ['description' => 'The prepaid Edge Routine (ER) requests included in the plan, in units of 10,000.', 'type' => 'string', 'example' => '100', 'title' => ''], 'StaticRequest' => ['description' => 'The prepaid HTTP requests included in the plan, in units of 10,000.', 'type' => 'string', 'example' => '100', 'title' => ''], 'SmartRoutingRequest' => ['description' => 'The prepaid smart routing requests included in the plan, in units of 10,000.', 'type' => 'string', 'example' => '100', 'title' => ''], 'EdgeWafRequest' => ['description' => 'The prepaid WAF requests included in the plan, in units of 10,000.', 'type' => 'string', 'example' => '100', 'title' => ''], 'DdosInstanceLevel' => ['description' => 'If this field is empty, the plan does not include an Anti-DDoS instance. If a value is returned, the plan includes an Anti-DDoS instance. The value is `esa_ddos_instance`.', 'type' => 'string', 'example' => 'esa_ddos_instance', 'title' => ''], 'DdosBurstableDomesticProtection' => ['description' => 'The Anti-DDoS instance specification for the Chinese mainland included in the plan.', 'type' => 'string', 'example' => 'cn_300', 'title' => ''], 'DdosBurstableOverseasProtection' => ['description' => 'The Anti-DDoS instance specification outside the Chinese mainland included in the plan.', 'type' => 'string', 'example' => 'overseas_300', 'title' => ''], 'BotInstanceLevel' => ['description' => 'If this field is empty, the plan does not include a bot protection instance. If a value is returned, the plan includes a bot protection instance. Valid values:'."\n" ."\n" .'- enterprise_bot: Web Edition'."\n" ."\n" .'- enterprise_bot_with_app: App Edition.', 'type' => 'string', 'example' => 'enterprise_bot', 'title' => ''], 'BotRequest' => ['description' => 'The prepaid bot protection requests included in the plan, in units of 10,000.', 'type' => 'string', 'example' => '100', 'title' => ''], 'SubscribeType' => ['description' => 'The plan subscription type. Valid values:'."\n" ."\n" .'- entranceplan: Free Edition (Chinese mainland)'."\n" .'- entranceplan_intl: Free Edition (International)'."\n" .'- basicplan: Basic Edition'."\n" .'- standardplan: Standard Edition'."\n" .'- advancedplan: Premium Edition'."\n" .'- enterpriseplan: Enterprise Edition.', 'type' => 'string', 'example' => 'basicplan', 'title' => ''], 'RenewalStatus' => ['title' => '', 'description' => 'The auto-renewal status. Valid values:'."\n" ."\n" .'- nomal: normal'."\n" .'- auto_renewal: auto-renewal enabled'."\n" .'- not_renewal: auto-renewal disabled.', 'type' => 'string', 'example' => 'nomal'], 'RenewalDuration' => ['title' => '', 'description' => 'The auto-renewal cycle. Unit: months.', 'type' => 'integer', 'format' => 'int64', 'example' => '6'], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The current page number, which is the same as the PageNumber request parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '68', 'title' => ''], 'TotalPage' => ['description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-3C82-72F8FD6DA2FE\\",\\n \\"InstanceInfo\\": [\\n {\\n \\"InstanceId\\": \\"sp-xcdn-96wblslz****\\",\\n \\"PlanName\\": \\"basic\\",\\n \\"PlanType\\": \\"normal\\",\\n \\"SiteQuota\\": \\"1\\",\\n \\"ExpireTime\\": \\"2026-04-19T11:15:20Z\\",\\n \\"Duration\\": 3,\\n \\"CreateTime\\": \\"2026-04-19T11:15:20Z\\",\\n \\"Sites\\": [\\n {\\n \\"SiteId\\": 0,\\n \\"SiteName\\": \\"example.com\\",\\n \\"SiteStatus\\": \\"pending\\"\\n }\\n ],\\n \\"Status\\": \\"online\\",\\n \\"Coverages\\": \\"domestic,overseas\\",\\n \\"BillingMode\\": \\"PREPAY\\",\\n \\"PlanTraffic\\": \\"100\\",\\n \\"Layer4Traffic\\": \\"100\\",\\n \\"Layer4TrafficIntl\\": \\"100\\",\\n \\"CrossborderTraffic\\": \\"100\\",\\n \\"EdgeRoutineRquest\\": \\"100\\",\\n \\"StaticRequest\\": \\"100\\",\\n \\"SmartRoutingRequest\\": \\"100\\",\\n \\"EdgeWafRequest\\": \\"100\\",\\n \\"DdosInstanceLevel\\": \\"esa_ddos_instance\\",\\n \\"DdosBurstableDomesticProtection\\": \\"cn_300\\",\\n \\"DdosBurstableOverseasProtection\\": \\"overseas_300\\",\\n \\"BotInstanceLevel\\": \\"enterprise_bot\\",\\n \\"BotRequest\\": \\"100\\",\\n \\"SubscribeType\\": \\"basicplan\\",\\n \\"RenewalStatus\\": \\"nomal\\",\\n \\"RenewalDuration\\": 6\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 68,\\n \\"TotalPage\\": 1\\n}","type":"json"}]', 'title' => 'Query user plan instances', 'changeSet' => [ ['createdAt' => '2025-02-12T02:01:32.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2025-01-10T01:51:17.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-11-28T06:41:41.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-11-12T05:57:29.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListUserRatePlanInstances'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListUserRatePlanInstances', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ListUserRoutines' => [ 'summary' => 'Retrieves a paginated list of Edge Routines created by the user along with quota information.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238899', 'abilityTreeNodes' => ['FEATUREdcdn75UYDO'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. Default value: 1. Maximum value: 10.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Valid values: 1 to 20.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '20', 'title' => ''], ], [ 'name' => 'SearchKeyWord', 'in' => 'query', 'schema' => ['description' => 'The keyword for fuzzy match.', 'type' => 'string', 'required' => false, 'example' => 'hello', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '1234567890ABCDEF'], 'PageNumber' => ['description' => 'The current page number.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int64', 'example' => '3', 'title' => ''], 'QuotaRoutineNumber' => ['description' => 'The Routine quota for the current plan.', 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''], 'UsedRoutineNumber' => ['description' => 'The number of Routines already created.', 'type' => 'integer', 'format' => 'int64', 'example' => '5', 'title' => ''], 'Routines' => [ 'description' => 'The list of Routines.', 'type' => 'array', 'items' => [ 'description' => 'The array of Routine entries.', 'type' => 'object', 'properties' => [ 'RoutineName' => ['description' => 'The Routine name.', 'type' => 'string', 'example' => 'hello', 'title' => ''], 'Description' => ['description' => 'The Routine description.', 'type' => 'string', 'example' => 'ZWRpdCByb3V0aW5lIGNvbmZpZyBkZXNjcmlwdGlvbg==', 'title' => ''], 'CreateTime' => ['description' => 'The time when the Edge Routine was created. The time follows the RFC 3339 standard in the UTC time zone.', 'type' => 'string', 'example' => '2024-03-11T01:23:02.883361712Z', 'title' => ''], 'HasAssets' => ['description' => 'Indicates whether the Routine contains asset files.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'DefaultRelatedRecord' => ['description' => 'The default access record associated with the Routine.', 'type' => 'string', 'example' => 'serverless-test-2.154edaf6.er.aliyun-esa.net', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalOperationError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'ParameterNotExist', 'errorMessage' => 'The specified parameter does not exist. Check your configurations and try again.', 'description' => 'The specified parameter does not exist. Check your configurations and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1234567890ABCDEF\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"TotalCount\\": 3,\\n \\"QuotaRoutineNumber\\": 20,\\n \\"UsedRoutineNumber\\": 5,\\n \\"Routines\\": [\\n {\\n \\"RoutineName\\": \\"hello\\",\\n \\"Description\\": \\"ZWRpdCByb3V0aW5lIGNvbmZpZyBkZXNjcmlwdGlvbg==\\",\\n \\"CreateTime\\": \\"2024-03-11T01:23:02.883361712Z\\",\\n \\"HasAssets\\": false,\\n \\"DefaultRelatedRecord\\": \\"serverless-test-2.154edaf6.er.aliyun-esa.net\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Query user routine list', 'description' => 'This operation allows you to perform a paged query for all Edge Routines created under your account. It also returns the Edge Routine quota for your current plan and the number of Edge Routines already in use. You can specify the PageNumber and PageSize paging parameters to control the number of results returned, and use SearchKeyWord to perform a fuzzy search to filter Routine names.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListUserRoutines'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListUserRoutines', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ListUserWafRulesets' => [ 'summary' => 'Retrieves WAF rule sets for a specified instance, allowing filtering by phase, name, and other criteria.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239588', 'abilityTreeNodes' => ['FEATUREdcdnV3YEJ8', 'FEATUREdcdnUTRW1O', 'FEATUREdcdnSU2QP6', 'FEATUREdcdnV3G3FZ', 'FEATUREdcdnBQ0J3E'], ], 'parameters' => [ [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'esa-xxxxxxx', 'title' => ''], ], [ 'name' => 'Phase', 'in' => 'query', 'schema' => ['description' => 'Specifies the execution phase of the WAF rule.'."\n" ."\n" .'- `http_whitelist`: whitelist rule'."\n" ."\n" .'- `http_custom`: custom rule'."\n" ."\n" .'- `http_managed`: managed rule'."\n" ."\n" .'- `http_anti_scan`: anti-scan rule'."\n" ."\n" .'- `http_ratelimit`: rate limit rule'."\n" ."\n" .'- `ip_access_rule`: IP access rule'."\n" ."\n" .'- `http_bot`: advanced mode bot'."\n" ."\n" .'- `http_security_level_rule`: security rule', 'type' => 'string', 'example' => 'http_custom', 'title' => '', 'required' => false], ], [ 'name' => 'QueryArgs', 'in' => 'query', 'style' => 'json', 'schema' => [ 'type' => 'object', 'properties' => [ 'NameLike' => ['description' => 'A string for a fuzzy search of ruleset names.', 'type' => 'string', 'example' => 'example', 'title' => '', 'required' => false], 'OrderBy' => ['description' => 'The field by which to sort results.', 'type' => 'string', 'example' => 'id', 'title' => '', 'required' => false], 'Desc' => ['description' => 'Specifies whether to sort results in descending order.', 'type' => 'boolean', 'title' => '', 'required' => false, 'example' => ''], ], 'title' => '', 'description' => 'Parameters for filtering and sorting the results.', 'required' => false, 'example' => '', ], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number to return.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => '', 'required' => false], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries to return on each page.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => '', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225', 'title' => ''], 'InstanceUsage' => ['description' => 'The instance usage.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''], 'TotalCount' => ['description' => 'The total number of records after filtering.', 'type' => 'integer', 'format' => 'int64', 'example' => '5', 'title' => ''], 'Rulesets' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'The WAF ruleset ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '10000001', 'title' => ''], 'Position' => ['description' => 'The WAF ruleset position.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'Phase' => ['description' => 'The WAF rule execution phase. Possible values:'."\n" ."\n" .'- `http_whitelist`: Whitelist rule'."\n" ."\n" .'- `http_custom`: Custom rule'."\n" ."\n" .'- `http_managed`: Managed rule'."\n" ."\n" .'- `http_anti_scan`: Scan protection rule'."\n" ."\n" .'- `http_ratelimit`: Rate limit rule'."\n" ."\n" .'- `ip_access_rule`: IP access rule'."\n" ."\n" .'- `http_bot`: Bot rule'."\n" ."\n" .'- `http_security_level_rule`: Security rule', 'type' => 'string', 'example' => 'http_custom', 'title' => ''], 'Name' => ['description' => 'The WAF ruleset name.', 'type' => 'string', 'example' => 'example', 'title' => ''], 'Description' => ['description' => 'The WAF ruleset description.', 'type' => 'string', 'example' => 'example', 'title' => ''], 'Status' => ['description' => 'The WAF ruleset status.', 'type' => 'string', 'example' => 'on', 'title' => ''], ], 'title' => '', 'description' => 'A WAF ruleset object.', 'example' => '', ], 'title' => '', 'description' => 'A list of WAF ruleset objects.', 'example' => '', ], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries returned per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], ], 'title' => '', 'description' => 'The response schema.', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'ListUserWafRulesets', 'description' => '## Request'."\n" ."\n" .'- `InstanceId` is a required parameter that specifies the WAF instance to query.'."\n" ."\n" .'- The `Phase` parameter filters rule sets by WAF processing phase, such as custom rules and rate limiting rules.'."\n" ."\n" .'- Use `NameLike` in `QueryArgs` to perform a fuzzy search on rule set names.'."\n" ."\n" .'- The `PageNumber` and `PageSize` parameters control pagination and default to 1 and 20, respectively.'."\n" ."\n" .'- The response includes the request ID, current plan usage, the total record count, and a list of rule set details.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:ListUserWafRulesets', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"InstanceUsage\\": 10,\\n \\"TotalCount\\": 5,\\n \\"Rulesets\\": [\\n {\\n \\"Id\\": 10000001,\\n \\"Position\\": 1,\\n \\"Phase\\": \\"http_custom\\",\\n \\"Name\\": \\"example\\",\\n \\"Description\\": \\"example\\",\\n \\"Status\\": \\"on\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20\\n}","type":"json"}]', ], 'ListVideoProcessings' => [ 'summary' => 'Queries the list of video processing configurations for a site.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257666', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '12345', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID. You can call the [ListVideoProcessings](~~ListVideoProcessings~~) operation to obtain the configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '35281609698****', 'title' => ''], ], [ 'name' => 'ConfigType', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The configuration type. You can use this parameter to query global or rule configurations. This parameter takes effect only when functionName is specified.', 'enumValueTitles' => ['rule' => 'rule configuration.', 'global' => 'global configuration.'], 'type' => 'string', 'enum' => ['global', 'rule'], 'required' => false, 'example' => 'global', ], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The rule name. You can use this parameter to query the rule that matches the specified name. This parameter takes effect only when functionName is specified.', 'type' => 'string', 'required' => false, 'example' => 'rule_example'], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number for a paged query. The value must be greater than or equal to 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page for a paged query. Valid values: 1 to 500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20'], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. For sites with version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-A198-72F8FD6DA2FE'], 'Configs' => [ 'description' => 'The list of configurations.', 'type' => 'array', 'items' => [ 'description' => 'The configuration details.', 'type' => 'object', 'properties' => [ 'ConfigId' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '234123**', 'title' => ''], 'SiteVersion' => ['description' => 'The version number of the site configuration.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Sequence' => ['description' => 'The execution order of the rule. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RuleEnable' => ['description' => 'The rule switch. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'The rule content.', 'type' => 'string', 'example' => '(http.host eq \\"video.example.com\\")'."\n", 'title' => ''], 'RuleName' => ['description' => 'The rule name.', 'type' => 'string', 'example' => 'rule_example', 'title' => ''], 'ConfigType' => ['description' => 'The configuration type. Valid values:'."\n" .'- global: global configuration.'."\n" .'- rule: rule configuration.', 'type' => 'string', 'example' => 'global', 'title' => ''], 'VideoSeekEnable' => ['description' => 'The audio seeking switch. Valid values:'."\n" ."\n" .'- on: enabled.'."\n" ."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'FlvVideoSeekMode' => ['description' => 'The FLV seeking mode. Valid values:'."\n" .'- by_byte: seek by byte.'."\n" .'- by_time: seek by time.', 'type' => 'string', 'example' => 'by_byte', 'title' => ''], 'Mp4SeekStart' => ['description' => 'The custom MP4 start parameter.', 'type' => 'string', 'example' => 'start', 'title' => ''], 'Mp4SeekEnd' => ['description' => 'The custom MP4 end parameter.', 'type' => 'string', 'example' => 'end', 'title' => ''], 'FlvSeekStart' => ['description' => 'The custom FLV start parameter.', 'type' => 'string', 'example' => 'start', 'title' => ''], 'FlvSeekEnd' => ['description' => 'The custom FLV end parameter.', 'type' => 'string', 'example' => 'end', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The current page number, which is the same as the PageNumber request parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '55', 'title' => ''], 'TotalPage' => ['description' => 'The total number of pages.', 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-A198-72F8FD6DA2FE\\",\\n \\"Configs\\": [\\n {\\n \\"ConfigId\\": 0,\\n \\"SiteVersion\\": 1,\\n \\"Sequence\\": 1,\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.host eq \\\\\\\\\\\\\\"video.example.com\\\\\\\\\\\\\\")\\\\n\\",\\n \\"RuleName\\": \\"rule_example\\",\\n \\"ConfigType\\": \\"global\\",\\n \\"VideoSeekEnable\\": \\"on\\",\\n \\"FlvVideoSeekMode\\": \\"by_byte\\",\\n \\"Mp4SeekStart\\": \\"start\\",\\n \\"Mp4SeekEnd\\": \\"end\\",\\n \\"FlvSeekStart\\": \\"start\\",\\n \\"FlvSeekEnd\\": \\"end\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 55,\\n \\"TotalPage\\": 3\\n}","type":"json"}]', 'title' => 'Query video processing configurations for a site', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListVideoProcessings'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListVideoProcessings', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListWafManagedRules' => [ 'summary' => 'Lists all managed rules under Web Application Firewall (WAF) or filters rules based on specific conditions. You can use this operation to query detailed information about WAF managed rules in a paginated manner.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '245026', 'abilityTreeNodes' => ['FEATUREdcdnV3YEJ8'], 'autoTest' => true, 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The site ID. You can obtain the site ID by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1'], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The WAF instance ID.', 'type' => 'string', 'required' => false, 'example' => 'esa-site-awmmx25y2igw', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The ID of the WAF rule.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10000001', 'title' => ''], ], [ 'name' => 'ManagedRuleset', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The managed ruleset configuration in JSON string format.'."\n" ."\n" .'Contains the AttackType, ProtectionLevel, Action, and ManagedRules subfields. When ProtectionLevel is set to -1 (custom mode), specify the status and action for each rule through the ManagedRules array.', 'type' => 'object', 'properties' => [ 'AttackType' => ['description' => 'The attack type encoding. The value cannot be 0.'."\n" ."\n" .'Example values: 11 (SQL injection), 12 (XSS), 13 (code execute), 14 (CRLF), 15 (local file inclusion (LFI)), 16 (remote file inclusion (RFI)), 17 (WebShell), 22 (command injection), 26 (SSRF), 27 (path traversal), 28 (protocol violation), 31 (scanner behavior).', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '11', 'title' => ''], 'ProtectionLevel' => ['description' => 'The protection level within the ruleset.'."\n" ."\n" .'Valid values: -1 (custom mode, specify each rule through ManagedRules), 1 (loose), 2 (medium), 3 (strict), 4 (super strict).'."\n" ."\n" .'When the value is -1, ManagedRules cannot be empty. When the value is greater than 0, Action cannot be empty.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '-1', 'title' => ''], 'Action' => ['description' => 'The unified action when ProtectionLevel is greater than 0. This parameter cannot be empty in this case.'."\n" ."\n" .'Common valid values: monitor, deny, js, captcha. The actual available values depend on the instance quota.', 'type' => 'string', 'required' => false, 'example' => 'monitor', 'title' => ''], 'ManagedRules' => [ 'description' => 'The rule configuration list in custom mode. This parameter is used only when ProtectionLevel is set to -1.'."\n" ."\n" .'Each element contains Id, Status, and Action, which are used to specify the enabled status and action for each managed rule.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'The unique ID of a single managed rule.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '20611349', 'title' => ''], 'Status' => ['description' => 'The rule enabled status.'."\n" ."\n" .'Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], 'Action' => ['description' => 'The action for a single rule. This parameter takes effect only in custom mode (ProtectionLevel = -1).'."\n" ."\n" .'Common valid values: monitor, deny, js, captcha. The actual available values depend on the instance quota.', 'type' => 'string', 'required' => false, 'example' => 'js', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'title' => '', 'example' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'AttackType', 'in' => 'query', 'schema' => ['description' => 'The attack type of the vulnerability prevention event. Valid values:'."\n" .'- SQL injection'."\n" .'- cross-site scripting (XSS)'."\n" .'- code execute'."\n" .'- CRLF'."\n" .'- local file inclusion (LFI)'."\n" .'- remote file inclusion (RFI)'."\n" .'- webshell'."\n" .'- cross-site request forgery'."\n" .'- Others'."\n" .'- SEMA', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '11', 'title' => ''], ], [ 'name' => 'ProtectionLevel', 'in' => 'query', 'schema' => ['description' => 'The currently saved protection level, which represents the existing configuration state in the database.'."\n" ."\n" .'Valid values: -1 (custom mode), 1 (loose), 2 (medium), 3 (strict), 4 (super strict).'."\n" ."\n" .'Difference from ManagedRuleset.ProtectionLevel: this parameter indicates the currently effective configuration, while ManagedRuleset.ProtectionLevel indicates the target value being passed in.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'Language', 'in' => 'query', 'schema' => ['description' => 'The language type. The response is returned in the specified language. Valid values:'."\n" ."\n" .'- **en**: English.'."\n" .'- **zh**: Chinese.', 'type' => 'string', 'required' => false, 'example' => 'zh', 'title' => ''], ], [ 'name' => 'QueryArgs', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The query conditions.', 'type' => 'object', 'properties' => [ 'IdNameLike' => ['title' => '', 'description' => 'Fuzzy match by rule ID or rule name.', 'type' => 'string', 'example' => 'example', 'required' => false], 'ProtectionLevels' => [ 'description' => 'The list of rule protection levels.', 'type' => 'array', 'items' => ['description' => 'The rule protection level. Valid values:'."\n" .'- Loose'."\n" .'- Medium'."\n" .'- Strict'."\n" .'- Super strict', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], 'Action' => ['description' => 'The action.', 'type' => 'string', 'required' => false, 'example' => 'deny', 'title' => ''], 'Status' => ['description' => 'The status.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], 'required' => false, 'example' => '{\\"Status\\":\\"\\",\\"ProtectionLevels\\":[2,1],\\"Action\\":\\"\\",\\"IdNameLike\\":\\"\\"}', ], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'TotalCount' => ['title' => '', 'description' => 'The total number of rules after filtering.', 'type' => 'integer', 'format' => 'int64', 'example' => '20'], 'Rules' => [ 'description' => 'The list of managed rules.', 'type' => 'array', 'items' => [ 'description' => 'The managed rule details.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'The managed rule ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '100001', 'title' => ''], 'Name' => ['description' => 'The managed rule name.', 'type' => 'string', 'example' => 'SQL injection ', 'title' => ''], 'ProtectionLevel' => ['description' => 'The protection level of the managed rule.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Action' => ['description' => 'The protection action of the managed rule.', 'type' => 'string', 'example' => 'deny', 'title' => ''], 'Status' => ['description' => 'The protection status of the managed rule.', 'type' => 'string', 'example' => 'on', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['title' => '', 'description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'PageSize' => ['title' => '', 'description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"TotalCount\\": 20,\\n \\"Rules\\": [\\n {\\n \\"Id\\": 100001,\\n \\"Name\\": \\"SQL injection \\",\\n \\"ProtectionLevel\\": 1,\\n \\"Action\\": \\"deny\\",\\n \\"Status\\": \\"on\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20\\n}","type":"json"}]', 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'List WAF managed rules', 'changeSet' => [ ['createdAt' => '2024-11-12T07:30:12.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListWafManagedRules'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListWafManagedRules', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListWafPhases' => [ 'summary' => 'List WAF Phases', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239652', 'abilityTreeNodes' => ['FEATUREdcdnV3YEJ8', 'FEATUREdcdnUTRW1O', 'FEATUREdcdnSU2QP6', 'FEATUREdcdnV3G3FZ', 'FEATUREdcdnBQ0J3E', 'FEATUREdcdn1OLUH8'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['title' => '站点ID', 'description' => 'Site ID, which can be obtained by calling the [ListSites](~~2850189~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1'], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['title' => '站点版本', 'description' => 'Site version.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'Phases' => [ 'title' => '规则集信息列表', 'description' => 'List of WAF operation phases.', 'type' => 'array', 'items' => [ 'title' => '规则集信息', 'description' => 'Details of WAF operation phase.', 'type' => 'object', 'properties' => [ 'Phase' => ['description' => 'Name of the WAF operation phase.', 'type' => 'string', 'example' => 'http_custom', 'title' => ''], 'Rulesets' => [ 'description' => 'List of WAF rulesets.', 'type' => 'array', 'items' => [ 'description' => 'Details of the WAF ruleset.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'ID of the WAF ruleset.', 'type' => 'integer', 'format' => 'int64', 'example' => '10000001', 'title' => ''], 'Name' => ['description' => 'Name of the WAF ruleset.', 'type' => 'string', 'example' => 'example', 'title' => ''], 'Shared' => ['description' => 'Shared configuration for rules in the WAF ruleset.', '$ref' => '#/components/schemas/WafBatchRuleShared', 'title' => '', 'example' => ''], 'Rules' => [ 'description' => 'List of rule configurations in the WAF ruleset.', 'type' => 'array', 'items' => ['description' => 'Rule configuration in the WAF rule set.', '$ref' => '#/components/schemas/WafRuleConfig', 'title' => '', 'example' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'List WAF Operation Phases', 'changeSet' => [ ['createdAt' => '2024-09-25T07:02:50.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T06:13:36.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListWafPhases'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListWafPhases', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"Phases\\": [\\n {\\n \\"Phase\\": \\"http_custom\\",\\n \\"Rulesets\\": [\\n {\\n \\"Id\\": 10000001,\\n \\"Name\\": \\"example\\",\\n \\"Shared\\": {\\n \\"Target\\": \\"web\\",\\n \\"Mode\\": \\"automatic\\",\\n \\"CrossSiteId\\": 10000001,\\n \\"Name\\": \\"example\\",\\n \\"Match\\": {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n },\\n \\"Action\\": \\"deny\\",\\n \\"Actions\\": {\\n \\"Response\\": {\\n \\"Id\\": 50000001,\\n \\"Code\\": 403\\n }\\n },\\n \\"Expression\\": \\"ip.src eq 1.1.1.1\\"\\n },\\n \\"Rules\\": [\\n {\\n \\"Status\\": \\"on\\",\\n \\"Action\\": \\"deny\\",\\n \\"Actions\\": {\\n \\"Response\\": {\\n \\"Id\\": 50000001,\\n \\"Code\\": 403\\n },\\n \\"Bypass\\": {\\n \\"Skip\\": \\"part\\",\\n \\"RegularRules\\": [\\n 100001\\n ],\\n \\"CustomRules\\": [\\n 20000001\\n ],\\n \\"RegularTypes\\": [\\n \\"sqli\\"\\n ],\\n \\"Tags\\": [\\n \\"http_custom\\"\\n ]\\n }\\n },\\n \\"ManagedList\\": \\"intelligence_crawler\\",\\n \\"ManagedRulesets\\": [\\n {\\n \\"ProtectionLevel\\": 4,\\n \\"Action\\": \\"deny\\",\\n \\"ManagedRules\\": [\\n {\\n \\"Status\\": \\"on\\",\\n \\"Action\\": \\"deny\\",\\n \\"Id\\": 100001\\n }\\n ],\\n \\"AttackType\\": 11,\\n \\"NumberTotal\\": 100,\\n \\"NumberEnabled\\": 50\\n }\\n ],\\n \\"Sigchl\\": [\\n \\"sig\\"\\n ],\\n \\"Name\\": \\"example\\",\\n \\"AppSdk\\": {\\n \\"CustomSign\\": {\\n \\"Value\\": \\"examplesignvalue\\",\\n \\"Key\\": \\"sign\\"\\n },\\n \\"CustomSignStatus\\": \\"on\\",\\n \\"FeatureAbnormal\\": [\\n \\"wxbb_invalid_sign\\"\\n ]\\n },\\n \\"RateLimit\\": {\\n \\"Characteristics\\": {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n },\\n \\"OnHit\\": true,\\n \\"TTL\\": 10,\\n \\"Threshold\\": {\\n \\"ManagedRulesBlocked\\": 10,\\n \\"DistinctManagedRules\\": 10,\\n \\"ResponseStatus\\": {\\n \\"Ratio\\": 10,\\n \\"Count\\": 10,\\n \\"Code\\": 404\\n },\\n \\"Traffic\\": \\"10Gb\\",\\n \\"Request\\": 10\\n },\\n \\"Interval\\": 10\\n },\\n \\"Type\\": \\"http_custom\\",\\n \\"AppPackage\\": {\\n \\"PackageSigns\\": [\\n {\\n \\"Sign\\": \\"sign\\",\\n \\"Name\\": \\"name\\"\\n }\\n ]\\n },\\n \\"ManagedGroupId\\": 30000001,\\n \\"Timer\\": {\\n \\"Scopes\\": \\"permanent\\",\\n \\"Zone\\": 8,\\n \\"Periods\\": [\\n {\\n \\"Start\\": \\"2025-01-01T00:00:00Z\\",\\n \\"End\\": \\"2025-01-01T01:00:00Z\\"\\n }\\n ],\\n \\"WeeklyPeriods\\": [\\n {\\n \\"Days\\": \\"1\\",\\n \\"DailyPeriods\\": [\\n {\\n \\"Start\\": \\"00:00:00\\",\\n \\"End\\": \\"01:00:00\\"\\n }\\n ]\\n }\\n ]\\n },\\n \\"Expression\\": \\"ip.src eq 1.1.1.1\\",\\n \\"SecurityLevel\\": {\\n \\"Value\\": \\"low\\"\\n },\\n \\"Value\\": \\"10.0.0.1\\",\\n \\"Id\\": 20000001,\\n \\"Notes\\": \\"example notes\\"\\n }\\n ]\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', ], 'ListWafRules' => [ 'summary' => 'Lists all rules or filters rules by specific conditions under Web Application Firewall (WAF). You can use this operation to query detailed information about WAF rules in a paged manner.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239600', 'abilityTreeNodes' => ['FEATUREdcdnV3YEJ8', 'FEATUREdcdnUTRW1O', 'FEATUREdcdnSU2QP6', 'FEATUREdcdnV3G3FZ', 'FEATUREdcdnBQ0J3E', 'FEATUREdcdn1OLUH8'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1'], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. For sites with version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. The default value is 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'Phase', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The WAF rule execution phase. Valid values:'."\n" .'- http_whitelist: whitelist rule'."\n" .'- http_custom: custom rule'."\n" .'- http_managed: managed rule'."\n" .'- http_anti_scan: scan protection rule'."\n" .'- http_ratelimit: frequency control rule'."\n" .'- ip_access_rule: IP access rule'."\n" .'- http_bot: advanced mode bots'."\n" .'- http_security_level_rule: security rule', 'type' => 'string', 'required' => true, 'example' => 'http_custom'], ], [ 'name' => 'RulesetId', 'in' => 'query', 'schema' => ['description' => 'The ID of the WAF ruleset. You can call the [ListWafRulesets](~~2878359~~) operation to obtain the ruleset ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10000001', 'title' => ''], ], [ 'name' => 'QueryArgs', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The query filter conditions.', 'type' => 'object', 'properties' => [ 'Id' => ['title' => '', 'description' => 'The WAF rule ID for exact match.', 'type' => 'integer', 'format' => 'int64', 'example' => '20000001', 'required' => false], 'NameLike' => ['title' => '', 'description' => 'The WAF rule name for fuzzy match.', 'type' => 'string', 'example' => 'example', 'required' => false], 'IdNameLike' => ['title' => '', 'description' => 'The WAF rule ID or name for fuzzy match.', 'type' => 'string', 'example' => 'example', 'required' => false], 'Status' => ['title' => '', 'description' => 'The WAF rule status for exact match.', 'type' => 'string', 'example' => 'on', 'required' => false], 'ConfigValueLike' => ['description' => 'The value in IP access control for fuzzy match.', 'type' => 'string', 'required' => false, 'example' => '10.0.0.1', 'title' => ''], 'OrderBy' => ['title' => '', 'description' => 'Sorts the returned list by a specified column.', 'type' => 'string', 'example' => 'position', 'required' => false], 'Desc' => ['title' => '', 'description' => 'Specifies whether to reverse the sort order.', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], 'required' => false, 'example' => 'http_custom', ], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number for pagination.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page size for pagination.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'SiteUsage' => ['title' => '', 'description' => 'The site usage.', 'type' => 'integer', 'format' => 'int64', 'example' => '5'], 'InstanceUsage' => ['title' => '', 'description' => 'The number of rules used in the WAF phase for the instance associated with the site.', 'type' => 'integer', 'format' => 'int64', 'example' => '10'], 'TotalCount' => ['title' => '', 'description' => 'The total number of rules after filtering.', 'type' => 'integer', 'format' => 'int64', 'example' => '20'], 'Rules' => [ 'title' => '', 'description' => 'The list of rules returned.', 'type' => 'array', 'items' => [ 'title' => '', 'description' => 'The rule details.', 'type' => 'object', 'properties' => [ 'UpdateTime' => ['title' => '', 'description' => 'The last modification time of the rule.'."\n" ."\n" .'Format: RFC 3339 / ISO 8601, UTC time zone (ending with Z).'."\n" ."\n" .'Example: 2026-06-10T14:23:45Z', 'type' => 'string', 'example' => '2024-01-01T00:00:00Z'], 'RulesetId' => ['title' => '', 'description' => 'The ruleset ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '10000001'], 'Id' => ['title' => '', 'description' => 'The rule ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '20000001'], 'Position' => ['title' => '', 'description' => 'The position of the rule in the corresponding ruleset.', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], 'Phase' => ['title' => '', 'description' => 'The WAF rule execution phase. Valid values:'."\n" .'- http_whitelist: whitelist rule'."\n" .'- http_custom: custom rule'."\n" .'- http_managed: managed rule'."\n" .'- http_anti_scan: scan protection rule'."\n" .'- http_ratelimit: frequency control rule'."\n" .'- ip_access_rule: IP access rule'."\n" .'- http_bot: advanced mode bots'."\n" .'- http_security_level_rule: security rule', 'type' => 'string', 'example' => 'http_custom'], 'Type' => ['title' => '', 'description' => 'The rule type.', 'type' => 'string', 'example' => 'http_custom'], 'Name' => ['title' => '', 'description' => 'The rule name.', 'type' => 'string', 'example' => 'example'], 'Status' => ['title' => '', 'description' => 'The rule status.', 'type' => 'string', 'example' => 'on'], 'Fields' => [ 'title' => '', 'description' => 'The list of matching fields for the rule.', 'type' => 'array', 'items' => ['title' => '', 'description' => 'The matching field value of the rule.', 'type' => 'string', 'example' => 'ip.geoip.asnum'], 'example' => '', ], 'CharacteristicsFields' => [ 'title' => '', 'description' => 'The list of statistical objects for frequency control rules.', 'type' => 'array', 'items' => ['title' => '', 'description' => 'The statistical object for frequency control rules.', 'type' => 'string', 'example' => 'ip.src'], 'example' => '', ], 'Action' => ['title' => '', 'description' => 'The action associated with the rule. Valid values:'."\n" .'- deny: Block.'."\n" .'- monitor: Monitor.'."\n" .'- js: JavaScript Challenge.'."\n" .'- captcha: Slider challenge.', 'type' => 'string', 'example' => 'deny'], 'Skip' => ['title' => '', 'description' => 'The skip property for whitelist rules.', 'type' => 'string', 'example' => 'part'], 'Tags' => [ 'title' => '', 'description' => 'The list of WAF phases to skip for whitelist rules.', 'type' => 'array', 'items' => ['title' => '', 'description' => 'The WAF phase value to skip for whitelist rules.', 'type' => 'string', 'example' => 'http_custom'], 'example' => '', ], 'Timer' => ['title' => '', 'description' => 'The effective period configuration of the rule.', '$ref' => '#/components/schemas/WafTimer', 'example' => ''], 'Config' => ['title' => '', 'description' => 'The rule configuration.', '$ref' => '#/components/schemas/WafRuleConfig', 'example' => ''], ], 'example' => '', ], 'example' => '', ], 'PageNumber' => ['title' => '', 'description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'PageSize' => ['title' => '', 'description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"SiteUsage\\": 5,\\n \\"InstanceUsage\\": 10,\\n \\"TotalCount\\": 20,\\n \\"Rules\\": [\\n {\\n \\"UpdateTime\\": \\"2024-01-01T00:00:00Z\\",\\n \\"RulesetId\\": 10000001,\\n \\"Id\\": 20000001,\\n \\"Position\\": 1,\\n \\"Phase\\": \\"http_custom\\",\\n \\"Type\\": \\"http_custom\\",\\n \\"Name\\": \\"example\\",\\n \\"Status\\": \\"on\\",\\n \\"Fields\\": [\\n \\"ip.geoip.asnum\\"\\n ],\\n \\"CharacteristicsFields\\": [\\n \\"ip.src\\"\\n ],\\n \\"Action\\": \\"deny\\",\\n \\"Skip\\": \\"part\\",\\n \\"Tags\\": [\\n \\"http_custom\\"\\n ],\\n \\"Timer\\": {\\n \\"Scopes\\": \\"permanent\\",\\n \\"Zone\\": 8,\\n \\"Periods\\": [\\n {\\n \\"Start\\": \\"2025-01-01T00:00:00Z\\",\\n \\"End\\": \\"2025-01-01T01:00:00Z\\"\\n }\\n ],\\n \\"WeeklyPeriods\\": [\\n {\\n \\"Days\\": \\"1\\",\\n \\"DailyPeriods\\": [\\n {\\n \\"Start\\": \\"00:00:00\\",\\n \\"End\\": \\"01:00:00\\"\\n }\\n ]\\n }\\n ]\\n },\\n \\"Config\\": {\\n \\"Status\\": \\"on\\",\\n \\"Action\\": \\"deny\\",\\n \\"Actions\\": {\\n \\"Response\\": {\\n \\"Id\\": 50000001,\\n \\"Code\\": 403\\n },\\n \\"Bypass\\": {\\n \\"Skip\\": \\"part\\",\\n \\"RegularRules\\": [\\n 100001\\n ],\\n \\"CustomRules\\": [\\n 20000001\\n ],\\n \\"RegularTypes\\": [\\n \\"sqli\\"\\n ],\\n \\"Tags\\": [\\n \\"http_custom\\"\\n ]\\n }\\n },\\n \\"ManagedList\\": \\"intelligence_crawler\\",\\n \\"ManagedRulesets\\": [\\n {\\n \\"ProtectionLevel\\": 4,\\n \\"Action\\": \\"deny\\",\\n \\"ManagedRules\\": [\\n {\\n \\"Status\\": \\"on\\",\\n \\"Action\\": \\"deny\\",\\n \\"Id\\": 100001\\n }\\n ],\\n \\"AttackType\\": 11,\\n \\"NumberTotal\\": 100,\\n \\"NumberEnabled\\": 50\\n }\\n ],\\n \\"Sigchl\\": [\\n \\"sig\\"\\n ],\\n \\"Name\\": \\"example\\",\\n \\"AppSdk\\": {\\n \\"CustomSign\\": {\\n \\"Value\\": \\"examplesignvalue\\",\\n \\"Key\\": \\"sign\\"\\n },\\n \\"CustomSignStatus\\": \\"on\\",\\n \\"FeatureAbnormal\\": [\\n \\"wxbb_invalid_sign\\"\\n ]\\n },\\n \\"RateLimit\\": {\\n \\"Characteristics\\": {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n },\\n \\"OnHit\\": true,\\n \\"TTL\\": 10,\\n \\"Threshold\\": {\\n \\"ManagedRulesBlocked\\": 10,\\n \\"DistinctManagedRules\\": 10,\\n \\"ResponseStatus\\": {\\n \\"Ratio\\": 10,\\n \\"Count\\": 10,\\n \\"Code\\": 404\\n },\\n \\"Traffic\\": \\"10Gb\\",\\n \\"Request\\": 10\\n },\\n \\"Interval\\": 10\\n },\\n \\"Type\\": \\"http_custom\\",\\n \\"AppPackage\\": {\\n \\"PackageSigns\\": [\\n {\\n \\"Sign\\": \\"sign\\",\\n \\"Name\\": \\"name\\"\\n }\\n ]\\n },\\n \\"ManagedGroupId\\": 30000001,\\n \\"Timer\\": {\\n \\"Scopes\\": \\"permanent\\",\\n \\"Zone\\": 8,\\n \\"Periods\\": [\\n {\\n \\"Start\\": \\"2025-01-01T00:00:00Z\\",\\n \\"End\\": \\"2025-01-01T01:00:00Z\\"\\n }\\n ],\\n \\"WeeklyPeriods\\": [\\n {\\n \\"Days\\": \\"1\\",\\n \\"DailyPeriods\\": [\\n {\\n \\"Start\\": \\"00:00:00\\",\\n \\"End\\": \\"01:00:00\\"\\n }\\n ]\\n }\\n ]\\n },\\n \\"Expression\\": \\"ip.src eq 1.1.1.1\\",\\n \\"SecurityLevel\\": {\\n \\"Value\\": \\"low\\"\\n },\\n \\"Value\\": \\"10.0.0.1\\",\\n \\"Id\\": 20000001,\\n \\"Notes\\": \\"example notes\\"\\n }\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20\\n}","type":"json"}]', 'title' => 'List WAF rules', 'changeSet' => [ ['createdAt' => '2024-12-12T06:17:42.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-09-25T07:02:50.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListWafRules'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListWafRules', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListWafRulesets' => [ 'summary' => 'Lists the rulesets under the current WAF execution phase. Queries basic information and status of rulesets with paging support.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239588', 'abilityTreeNodes' => ['FEATUREdcdnBQ0J3E', 'FEATUREdcdn1OLUH8'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'docRequired' => true, 'example' => '1', 'required' => true], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. For sites with configuration version management enabled, you can use this parameter to specify the site version for which the configuration takes effect. Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'Phase', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The WAF rule execution phase. Valid values:'."\n" .'- http_whitelist: whitelist rules'."\n" .'- http_custom: custom rules'."\n" .'- http_managed: managed rules'."\n" .'- http_anti_scan: scan protection rules'."\n" .'- http_ratelimit: frequency control rules'."\n" .'- ip_access_rule: IP access rules'."\n" .'- http_bot: advanced mode bots'."\n" .'- http_security_level_rule: security rules', 'type' => 'string', 'docRequired' => true, 'example' => 'http_bot', 'required' => true], ], [ 'name' => 'QueryArgs', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The query parameters, passed in JSON format, including various filter conditions.', 'type' => 'object', 'properties' => [ 'NameLike' => ['title' => '', 'description' => 'The fuzzy match string for the ruleset name.', 'type' => 'string', 'example' => 'example', 'required' => false], 'AnyLike' => ['title' => '', 'description' => 'The fuzzy match string for the ruleset ID, ruleset name, rule ID, or rule name.', 'type' => 'string', 'example' => 'example', 'required' => false], 'OrderBy' => ['title' => '', 'description' => 'The column by which to sort the results.', 'type' => 'string', 'example' => 'id', 'required' => false], 'Desc' => ['title' => '', 'description' => 'Specifies whether to sort the results in descending order.', 'type' => 'boolean', 'required' => false, 'example' => ''], ], 'required' => false, 'example' => 'http_bot', ], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number. Specifies the current page number for paging queries.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page size. Specifies the number of records per page for paging queries.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'SiteUsage' => ['description' => 'The number of WAF rulesets used by the site in this WAF execution phase.', 'type' => 'integer', 'format' => 'int64', 'example' => '5', 'title' => ''], 'InstanceUsage' => ['title' => '', 'description' => 'The number of WAF rulesets used by the instance in this WAF execution phase.', 'type' => 'integer', 'format' => 'int64', 'example' => '10'], 'TotalCount' => ['title' => '', 'description' => 'The total number of records after filtering.', 'type' => 'integer', 'format' => 'int64', 'example' => '5'], 'Rulesets' => [ 'title' => '', 'description' => 'The list of rulesets, including detailed information about each ruleset.', 'type' => 'array', 'items' => [ 'title' => '', 'description' => 'The ruleset information.', 'type' => 'object', 'properties' => [ 'UpdateTime' => ['title' => '', 'description' => 'The last modification time of the ruleset.'."\n" ."\n" .'Format: RFC 3339 / ISO 8601, UTC time zone (ending with Z).'."\n" ."\n" .'Example: 2026-06-10T14:23:45Z', 'type' => 'string', 'example' => '2024-01-01T00:00:00Z'], 'Id' => ['title' => '', 'description' => 'The ID of the WAF ruleset. You can call the [ListWafRulesets](~~2878359~~) operation to obtain the ruleset ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '10000001'], 'Name' => ['title' => '', 'description' => 'The ruleset name.', 'type' => 'string', 'example' => 'example'], 'Status' => ['title' => '', 'description' => 'The ruleset status.', 'type' => 'string', 'example' => 'on'], 'Phase' => ['title' => '', 'description' => 'The WAF rule execution phase. Valid values:'."\n" .'- http_whitelist: whitelist rules'."\n" .'- http_custom: custom rules'."\n" .'- http_managed: managed rules'."\n" .'- http_anti_scan: scan protection rules'."\n" .'- http_ratelimit: frequency control rules'."\n" .'- ip_access_rule: IP access rules'."\n" .'- http_bot: advanced mode bots'."\n" .'- http_security_level_rule: security rules', 'type' => 'string', 'example' => 'http_bot'], 'Types' => [ 'title' => '', 'description' => 'The list of rule types.', 'type' => 'array', 'items' => ['title' => '', 'description' => 'The rule type.', 'type' => 'string', 'example' => 'http_custom_cc'], 'example' => '', ], 'Target' => ['title' => '', 'description' => 'The protection target type in http_bot.', 'type' => 'string', 'example' => 'web'], 'Fields' => [ 'title' => '', 'description' => 'The list of match objects.', 'type' => 'array', 'items' => ['title' => '', 'description' => 'The match object.', 'type' => 'string', 'example' => 'http.request.headers'], 'example' => '', ], ], 'example' => '', ], 'example' => '', ], 'PageNumber' => ['title' => '', 'description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'PageSize' => ['title' => '', 'description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"SiteUsage\\": 5,\\n \\"InstanceUsage\\": 10,\\n \\"TotalCount\\": 5,\\n \\"Rulesets\\": [\\n {\\n \\"UpdateTime\\": \\"2024-01-01T00:00:00Z\\",\\n \\"Id\\": 10000001,\\n \\"Name\\": \\"example\\",\\n \\"Status\\": \\"on\\",\\n \\"Phase\\": \\"http_bot\\",\\n \\"Types\\": [\\n \\"http_custom_cc\\"\\n ],\\n \\"Target\\": \\"web\\",\\n \\"Fields\\": [\\n \\"http.request.headers\\"\\n ]\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20\\n}","type":"json"}]', 'title' => 'List WAF rulesets', 'changeSet' => [ ['createdAt' => '2024-09-25T07:02:50.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T06:13:41.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListWafRulesets'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:ListWafRulesets', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListWafTemplateRules' => [ 'summary' => 'Lists the template rules in WAF. These rules are typically predefined rulesets for quickly enabling protection against common attack types.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239638', 'abilityTreeNodes' => ['FEATUREdcdnV3YEJ8', 'FEATUREdcdnUTRW1O', 'FEATUREdcdnSU2QP6', 'FEATUREdcdnV3G3FZ', 'FEATUREdcdnBQ0J3E', 'FEATUREdcdn1OLUH8'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. To obtain this ID, call the [ListSites](~~2850189~~) API.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'esa-site-aud6ftk57ym8', 'title' => ''], ], [ 'name' => 'Phase', 'in' => 'query', 'schema' => ['title' => 'WAF阶段', 'description' => 'The WAF running phase for filtering template rules.', 'type' => 'string', 'example' => 'http_anti_scan', 'required' => false], ], [ 'name' => 'QueryArgs', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '查询参数', 'description' => 'The query parameters for filtering template rules by criteria such as the rule type.', 'type' => 'object', 'properties' => [ 'Type' => ['title' => '规则类型', 'description' => 'The rule type.', 'type' => 'string', 'example' => 'http_directory_traversal', 'required' => false], 'Kinds' => [ 'description' => 'A list of template kinds.', 'type' => 'array', 'items' => [ 'description' => 'The template kind.', 'enumValueTitles' => ['template' => 'template', 'template-featured' => 'template-featured'], 'type' => 'string', 'required' => false, 'example' => 'template', 'title' => '', ], 'required' => false, 'title' => '', 'example' => '', ], ], 'required' => false, 'example' => 'http_anti_scan', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response object.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'Rules' => [ 'title' => '规则列表', 'description' => 'A list of template rules.', 'type' => 'array', 'items' => [ 'title' => '规则信息', 'description' => 'The details of a template rule.', 'type' => 'object', 'properties' => [ 'Name' => ['title' => '规则名称', 'description' => 'The rule name.', 'type' => 'string', 'example' => 'HTTP Directory Traversal Rule [Template]'], 'Status' => ['title' => '规则状态', 'description' => 'The rule status.', 'type' => 'string', 'example' => 'on'], 'Type' => ['title' => '规则类型', 'description' => 'The rule type.', 'type' => 'string', 'example' => 'http_directory_traversal'], 'Phase' => ['title' => 'WAF阶段', 'description' => 'The WAF running phase.', 'type' => 'string', 'example' => 'http_anti_scan'], 'Config' => ['title' => '规则配置', 'description' => 'The rule configuration.', '$ref' => '#/components/schemas/WafRuleConfig', 'example' => ''], ], 'example' => '', ], 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'List WAF Template Rules', 'changeSet' => [ ['createdAt' => '2025-04-11T03:39:54.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-11-12T07:30:11.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-09-25T07:02:50.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T06:13:35.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListWafTemplateRules'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListWafTemplateRules', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"Rules\\": [\\n {\\n \\"Name\\": \\"HTTP Directory Traversal Rule [Template]\\",\\n \\"Status\\": \\"on\\",\\n \\"Type\\": \\"http_directory_traversal\\",\\n \\"Phase\\": \\"http_anti_scan\\",\\n \\"Config\\": {\\n \\"Status\\": \\"on\\",\\n \\"Action\\": \\"deny\\",\\n \\"Actions\\": {\\n \\"Response\\": {\\n \\"Id\\": 50000001,\\n \\"Code\\": 403\\n },\\n \\"Bypass\\": {\\n \\"Skip\\": \\"part\\",\\n \\"RegularRules\\": [\\n 100001\\n ],\\n \\"CustomRules\\": [\\n 20000001\\n ],\\n \\"RegularTypes\\": [\\n \\"sqli\\"\\n ],\\n \\"Tags\\": [\\n \\"http_custom\\"\\n ]\\n }\\n },\\n \\"ManagedList\\": \\"intelligence_crawler\\",\\n \\"ManagedRulesets\\": [\\n {\\n \\"ProtectionLevel\\": 4,\\n \\"Action\\": \\"deny\\",\\n \\"ManagedRules\\": [\\n {\\n \\"Status\\": \\"on\\",\\n \\"Action\\": \\"deny\\",\\n \\"Id\\": 100001\\n }\\n ],\\n \\"AttackType\\": 11,\\n \\"NumberTotal\\": 100,\\n \\"NumberEnabled\\": 50\\n }\\n ],\\n \\"Sigchl\\": [\\n \\"sig\\"\\n ],\\n \\"Name\\": \\"example\\",\\n \\"AppSdk\\": {\\n \\"CustomSign\\": {\\n \\"Value\\": \\"examplesignvalue\\",\\n \\"Key\\": \\"sign\\"\\n },\\n \\"CustomSignStatus\\": \\"on\\",\\n \\"FeatureAbnormal\\": [\\n \\"wxbb_invalid_sign\\"\\n ]\\n },\\n \\"RateLimit\\": {\\n \\"Characteristics\\": {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"Logic\\": \\"and\\",\\n \\"Criteria\\": [\\n {\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n }\\n ],\\n \\"MatchType\\": \\"ip.src\\",\\n \\"MatchOperator\\": \\"eq\\",\\n \\"MatchValue\\": \\"1.1.1.1\\",\\n \\"Negate\\": true,\\n \\"ConvertToLower\\": true\\n },\\n \\"OnHit\\": true,\\n \\"TTL\\": 10,\\n \\"Threshold\\": {\\n \\"ManagedRulesBlocked\\": 10,\\n \\"DistinctManagedRules\\": 10,\\n \\"ResponseStatus\\": {\\n \\"Ratio\\": 10,\\n \\"Count\\": 10,\\n \\"Code\\": 404\\n },\\n \\"Traffic\\": \\"10Gb\\",\\n \\"Request\\": 10\\n },\\n \\"Interval\\": 10\\n },\\n \\"Type\\": \\"http_custom\\",\\n \\"AppPackage\\": {\\n \\"PackageSigns\\": [\\n {\\n \\"Sign\\": \\"sign\\",\\n \\"Name\\": \\"name\\"\\n }\\n ]\\n },\\n \\"ManagedGroupId\\": 30000001,\\n \\"Timer\\": {\\n \\"Scopes\\": \\"permanent\\",\\n \\"Zone\\": 8,\\n \\"Periods\\": [\\n {\\n \\"Start\\": \\"2025-01-01T00:00:00Z\\",\\n \\"End\\": \\"2025-01-01T01:00:00Z\\"\\n }\\n ],\\n \\"WeeklyPeriods\\": [\\n {\\n \\"Days\\": \\"1\\",\\n \\"DailyPeriods\\": [\\n {\\n \\"Start\\": \\"00:00:00\\",\\n \\"End\\": \\"01:00:00\\"\\n }\\n ]\\n }\\n ]\\n },\\n \\"Expression\\": \\"ip.src eq 1.1.1.1\\",\\n \\"SecurityLevel\\": {\\n \\"Value\\": \\"low\\"\\n },\\n \\"Value\\": \\"10.0.0.1\\",\\n \\"Id\\": 20000001,\\n \\"Notes\\": \\"example notes\\"\\n }\\n }\\n ]\\n}","type":"json"}]', ], 'ListWafUsageOfRules' => [ 'summary' => 'Lists the usage of WAF rules.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239653', 'abilityTreeNodes' => ['FEATUREdcdnV3YEJ8', 'FEATUREdcdnUTRW1O', 'FEATUREdcdnSU2QP6', 'FEATUREdcdnV3G3FZ', 'FEATUREdcdnBQ0J3E', 'FEATUREdcdn1OLUH8'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The WAF instance ID.'."\n" ."\n" .'If this parameter is left empty, the API returns an empty result. We recommend that you always specify this parameter.', 'type' => 'string', 'required' => false, 'example' => 'esa-site-b0wdsrlba3nk', 'title' => ''], ], [ 'name' => 'Phase', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The phase in which the WAF rule runs. This parameter is required.'."\n" ."\n" .'Common values: http_custom, http_ratelimit, http_anti_scan, http_bot, http_managed, http_whitelist, and http_threat_intelligence.'."\n" ."\n" .'> Note: This parameter is required on the server side. If this parameter is not specified, the API returns InvalidParameter (400).', 'type' => 'string', 'example' => 'http_custom', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'Sites' => [ 'description' => 'The list of site usage.', 'type' => 'array', 'items' => [ 'description' => 'The site usage details.', 'type' => 'object', 'properties' => [ 'Id' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'Name' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], 'Usage' => ['description' => 'The number of WAF rules or WAF rule sets that have been used.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'BatchConfigUsage' => ['description' => 'The number of rules or rule sets for the specified phase under instance-level batch configuration.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'InstanceUsage' => ['description' => 'The total number of rules or rule sets for the instance under the specified phase, including both site-level and instance-level rules.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"Sites\\": [\\n {\\n \\"Id\\": 1,\\n \\"Name\\": \\"example.com\\",\\n \\"Usage\\": 1\\n }\\n ],\\n \\"BatchConfigUsage\\": 1,\\n \\"InstanceUsage\\": 2\\n}","type":"json"}]', 'title' => 'List WAF rule usage', 'changeSet' => [ ['createdAt' => '2024-09-25T07:02:49.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T06:13:41.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListWafUsageOfRules'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListWafUsageOfRules', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'ListWaitingRoomEvents' => [ 'summary' => 'Queries waiting room events for a waiting room.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239610', 'abilityTreeNodes' => ['FEATUREdcdnVCBH9N'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '7096621098****', 'title' => ''], ], [ 'name' => 'WaitingRoomId', 'in' => 'query', 'schema' => ['description' => 'The unique ID of the waiting room, which can be obtained by calling the [ListWaitingRooms](~~2850279~~) operation.', 'type' => 'string', 'required' => true, 'example' => '6a51d5bc6460887abd129****', 'title' => ''], ], [ 'name' => 'WaitingRoomEventId', 'in' => 'query', 'schema' => ['description' => 'The ID of the waiting room event. This parameter is optional. You can specify this parameter to query a specific waiting room event.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '89677721098****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID, which is used to trace a call.', 'type' => 'string', 'example' => 'f3c3700a-4c0f-4a24-b576-fd7dbf9e7c55'], 'WaitingRoomEvents' => [ 'description' => 'The details of the waiting room events.', 'type' => 'array', 'items' => [ 'description' => 'The details of the waiting room event.', 'type' => 'object', 'properties' => [ 'WaitingRoomEventId' => ['description' => 'The unique ID of the waiting room event.', 'type' => 'integer', 'format' => 'int64', 'example' => '89677721098****'."\n", 'title' => ''], 'WaitingRoomId' => ['description' => 'The ID of the waiting room associated with the event.', 'type' => 'string', 'example' => '5c938a045c9ca46607163d34966****', 'title' => ''], 'Enable' => ['description' => 'The event status. Valid values:'."\n" ."\n" .'- on'."\n" ."\n" .'- off', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Name' => ['description' => 'The custom event name.', 'type' => 'string', 'example' => 'Test event', 'title' => ''], 'TotalActiveUsers' => ['description' => 'The maximum number of active users.', 'type' => 'string', 'example' => '22', 'title' => ''], 'NewUsersPerMinute' => ['description' => 'The maximum number of new users per minute.', 'type' => 'string', 'example' => '11', 'title' => ''], 'SessionDuration' => ['description' => 'The maximum duration for which a session remains valid after a user leaves the origin. Unit: minutes.', 'type' => 'string', 'example' => '3', 'title' => ''], 'DisableSessionRenewalEnable' => ['description' => 'Indicates whether session renewal is disabled. Valid values:'."\n" ."\n" .'- on'."\n" ."\n" .'- off', 'type' => 'string', 'example' => 'off', 'title' => ''], 'QueuingMethod' => ['description' => 'The queuing method. Valid values:'."\n" ."\n" .'- random: Users gain access to the origin randomly, regardless of the arrival time.'."\n" ."\n" .'- fifo: Users gain access to the origin in order of arrival.'."\n" ."\n" .'- passthrough: Users pass through the waiting room and go straight to the origin.'."\n" ."\n" .'- reject-all: Users are blocked from reaching the origin.', 'type' => 'string', 'example' => 'fifo', 'title' => ''], 'QueuingStatusCode' => ['description' => 'The HTTP status code to return while a user is in the queue. Valid values:'."\n" ."\n" .'- 200'."\n" ."\n" .'- 202'."\n" ."\n" .'- 429', 'type' => 'string', 'example' => '200', 'title' => ''], 'JsonResponseEnable' => ['description' => 'Indicates whether JOSN response is enabled. If JSON response is enabled, a JSON body is returned for requests to the waiting room with the header Accept: application/json. Valid values:'."\n" ."\n" .'- on'."\n" ."\n" .'- off', 'type' => 'string', 'example' => 'off', 'title' => ''], 'Description' => ['description' => 'The event description.', 'type' => 'string', 'example' => 'terraform-example', 'title' => ''], 'WaitingRoomType' => ['description' => 'The type of the waiting room. Valid values:'."\n" ."\n" .'- default'."\n" ."\n" .'- custom', 'type' => 'string', 'example' => 'custom', 'title' => ''], 'CustomPageHtml' => ['description' => 'The content of the custom waiting room page. This parameter is returned when the waiting room type is set to custom. The content is URL-encoded.', 'type' => 'string', 'example' => 'html-yets-maqi1111', 'title' => ''], 'StartTime' => ['description' => 'The start time of the event. This value is a UNIX timestamp.', 'type' => 'string', 'example' => '1719814398', 'title' => ''], 'EndTime' => ['description' => 'The end time of the event. This value is a UNIX timestamp.', 'type' => 'string', 'example' => '1719814497', 'title' => ''], 'PreQueueEnable' => ['description' => 'Indicates whether pre-queuing is enabled. Valid values:'."\n" ."\n" .'- on'."\n" ."\n" .'- off', 'type' => 'string', 'example' => 'on', 'title' => ''], 'PreQueueStartTime' => ['description' => 'The start time for pre-queuing. This value is a UNIX timestamp. This parameter is valid only when pre-queuing is enabled.', 'type' => 'string', 'example' => '1719814097', 'title' => ''], 'RandomPreQueueEnable' => ['description' => 'Indicates whether random queuing is enabled. Valid values:'."\n" ."\n" .'- on'."\n" ."\n" .'- off', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Language' => ['description' => 'The language of the waiting room page. This parameter is returned when the waiting room type is set to default. Valid values:'."\n" ."\n" .'- enus: English.'."\n" ."\n" .'- zhcn: Simplified Chinese.'."\n" ."\n" .'- zhhk: Traditional Chinese.', 'type' => 'string', 'example' => 'zhcn', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], 403 => [ ['errorCode' => 'Site.NotExist', 'errorMessage' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.', 'description' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"f3c3700a-4c0f-4a24-b576-fd7dbf9e7c55\\",\\n \\"WaitingRoomEvents\\": [\\n {\\n \\"WaitingRoomEventId\\": 0,\\n \\"WaitingRoomId\\": \\"5c938a045c9ca46607163d34966****\\",\\n \\"Enable\\": \\"on\\",\\n \\"Name\\": \\"Test event\\",\\n \\"TotalActiveUsers\\": \\"22\\",\\n \\"NewUsersPerMinute\\": \\"11\\",\\n \\"SessionDuration\\": \\"3\\",\\n \\"DisableSessionRenewalEnable\\": \\"off\\",\\n \\"QueuingMethod\\": \\"fifo\\",\\n \\"QueuingStatusCode\\": \\"200\\",\\n \\"JsonResponseEnable\\": \\"off\\",\\n \\"Description\\": \\"terraform-example\\",\\n \\"WaitingRoomType\\": \\"custom\\",\\n \\"CustomPageHtml\\": \\"html-yets-maqi1111\\",\\n \\"StartTime\\": \\"1719814398\\",\\n \\"EndTime\\": \\"1719814497\\",\\n \\"PreQueueEnable\\": \\"on\\",\\n \\"PreQueueStartTime\\": \\"1719814097\\",\\n \\"RandomPreQueueEnable\\": \\"on\\",\\n \\"Language\\": \\"zhcn\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'ListWaitingRoomEvents', 'description' => 'Use this operation to query details of all waiting room events related to a waiting room in a website.', 'changeSet' => [ ['createdAt' => '2024-09-18T06:13:41.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListWaitingRoomEvents'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:ListWaitingRoomEvents', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'translator' => 'manual', ], 'ListWaitingRoomRules' => [ 'summary' => 'Query Waiting Room Bypass Rules', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239649', 'abilityTreeNodes' => ['FEATUREdcdnVCBH9N'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'Site ID, which can be obtained by calling the [ListSites](~~2850189~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'WaitingRoomId', 'in' => 'query', 'schema' => ['description' => 'The ID of the waiting room to bypass, which can be obtained by calling the [ListWaitingRooms](~~2850279~~) interface.', 'type' => 'string', 'required' => true, 'example' => '6a51d5bc6460887abd129****', 'title' => ''], ], [ 'name' => 'WaitingRoomRuleId', 'in' => 'query', 'schema' => ['description' => 'The ID of the waiting room bypass rule to update, which can be obtained by calling the [ListWaitingRoomRules](~~2850279~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '37286782688****'."\n", 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'Rule name, optional, used for querying by the name of the waiting room bypass rule.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'Query response result.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID, used for tracking the call status.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A123425345'], 'WaitingRoomRules' => [ 'description' => 'List of waiting room bypass rules.', 'type' => 'array', 'items' => [ 'description' => 'Details of the waiting room bypass rule.', 'type' => 'object', 'properties' => [ 'WaitingRoomRuleId' => ['description' => 'Rule ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '37286782688****', 'title' => ''], 'RuleName' => ['description' => 'Rule name. This parameter does not need to be set when adding global configuration.', 'type' => 'string', 'example' => 'ip', 'title' => ''], 'RuleEnable' => ['description' => 'Rule switch. This parameter does not need to be set when adding global configuration. Value range:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Rule' => ['description' => 'Rule content, using conditional expressions to match user requests. This parameter does not need to be set when adding global configuration. There are two usage scenarios:'."\n" .'- Match all incoming requests: set the value to true'."\n" .'- Match specific requests: set the value to a custom expression, e.g., (http.host eq \\"video.example.com\\")', 'type' => 'string', 'example' => '(http.request.uri.path.file_name eq \\"jpg\\")', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], 403 => [ ['errorCode' => 'Site.NotExist', 'errorMessage' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.', 'description' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A123425345\\",\\n \\"WaitingRoomRules\\": [\\n {\\n \\"WaitingRoomRuleId\\": 0,\\n \\"RuleName\\": \\"ip\\",\\n \\"RuleEnable\\": \\"on\\",\\n \\"Rule\\": \\"(http.request.uri.path.file_name eq \\\\\\\\\\\\\\"jpg\\\\\\\\\\\\\\")\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Query Waiting Room Bypass Rules List', 'description' => 'This API allows users to query the list of waiting room bypass rules associated with a specific site.', 'changeSet' => [ ['createdAt' => '2024-09-18T06:13:41.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListWaitingRoomRules'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListWaitingRoomRules', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'ListWaitingRooms' => [ 'summary' => 'Queries all waiting rooms in a website.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239611', 'abilityTreeNodes' => ['FEATUREdcdnO4KC7Z'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '120876698010528', 'title' => ''], ], [ 'name' => 'WaitingRoomId', 'in' => 'query', 'schema' => ['description' => 'The ID of the waiting room. Specify this parameter to query the information about a specific waiting room.', 'type' => 'string', 'required' => false, 'example' => '6a51d5bc6460887abd1291dc7d4d****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID, which is used to trace a call.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-A198-72F8FD6DA2FE'], 'WaitingRooms' => [ 'description' => 'The waiting rooms.', 'type' => 'array', 'items' => [ 'description' => 'The details of the waiting room.', 'type' => 'object', 'properties' => [ 'WaitingRoomId' => ['description' => 'The unique ID of the waiting room.', 'type' => 'string', 'example' => '6a51d5bc6460887abd1291dc7d4d****'."\n", 'title' => ''], 'Enable' => ['description' => 'Indicates whether the waiting room is enabled. Valid values:'."\n" ."\n" .'- on'."\n" ."\n" .'- off', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Name' => ['description' => 'The name of the waiting room.', 'type' => 'string', 'example' => 'Test waiting room', 'title' => ''], 'QueueAllEnable' => ['description' => 'Indicates whether all requests must be queued. Valid values:'."\n" ."\n" .'- on'."\n" ."\n" .'- off', 'type' => 'string', 'example' => 'on', 'title' => ''], 'HostNameAndPath' => [ 'description' => 'The hostname and path.', 'type' => 'array', 'items' => [ 'description' => 'The details of the hostname and path.', 'type' => 'object', 'properties' => [ 'Subdomain' => ['description' => 'The subdomain.', 'type' => 'string', 'example' => 'test.'."\n", 'title' => ''], 'Domain' => ['description' => 'The domain name.', 'type' => 'string', 'example' => 'example.com'."\n", 'title' => ''], 'Path' => ['description' => 'The path.', 'type' => 'string', 'example' => '/test', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'CookieName' => ['description' => 'The name of the custom cookie.', 'type' => 'string', 'example' => '__aliwaitingroom_example', 'title' => ''], 'TotalActiveUsers' => ['description' => 'The maximum number of active users.', 'type' => 'string', 'example' => '300', 'title' => ''], 'NewUsersPerMinute' => ['description' => 'The maximum number of new users per minute.', 'type' => 'string', 'example' => '200', 'title' => ''], 'SessionDuration' => ['description' => 'The maximum duration for which a session remains valid after a user leaves the origin. Unit: minutes.', 'type' => 'string', 'example' => '3600', 'title' => ''], 'DisableSessionRenewalEnable' => ['description' => 'Indicates whether session renewal is disabled. Valid values:'."\n" ."\n" .'- on'."\n" ."\n" .'- off', 'type' => 'string', 'example' => 'on', 'title' => ''], 'QueuingMethod' => ['description' => 'The queuing method. Valid values:'."\n" ."\n" .'- random: Users gain access to the origin randomly, regardless of the arrival time.'."\n" ."\n" .'- fifo: Users gain access to the origin in order of arrival.'."\n" ."\n" .'- passthrough: Users pass through the waiting room and go straight to the origin.'."\n" ."\n" .'- reject-all: Users are blocked from reaching the origin.', 'type' => 'string', 'example' => 'random', 'title' => ''], 'QueuingStatusCode' => ['description' => 'The HTTP status code to return while a user is in the queue. Valid values:'."\n" ."\n" .'- 200'."\n" ."\n" .'- 202'."\n" ."\n" .'- 429', 'type' => 'string', 'example' => '200', 'title' => ''], 'JsonResponseEnable' => ['description' => 'Indicates whether JSON response is enabled. If you set this parameter to on, a JSON body is returned for requests to the waiting room with the header Accept: application/json. Valid values:'."\n" ."\n" .'- on'."\n" ."\n" .'- off', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Description' => ['description' => 'The description of the waiting room.', 'type' => 'string', 'example' => 'Test waiting room', 'title' => ''], 'WaitingRoomType' => ['description' => 'The type of the waiting room. Valid values:'."\n" ."\n" .'- default'."\n" ."\n" .'- custom', 'type' => 'string', 'example' => 'default', 'title' => ''], 'CustomPageHtml' => ['description' => 'The HTML content or identifier of the custom queuing page. This parameter is valid only when `WaitingRoomType` is set to `custom`. The content must be URL-encoded.', 'type' => 'string', 'example' => 'Custom HTML content', 'title' => ''], 'Language' => ['description' => 'The language of the waiting room page. This parameter is returned when the waiting room type is set to default. Valid values:'."\n" ."\n" .'- enus: English.'."\n" ."\n" .'- zhcn: Simplified Chinese.'."\n" ."\n" .'- zhhk: Traditional Chinese.', 'type' => 'string', 'example' => 'zhcn', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], 403 => [ ['errorCode' => 'Site.NotExist', 'errorMessage' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.', 'description' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-A198-72F8FD6DA2FE\\",\\n \\"WaitingRooms\\": [\\n {\\n \\"WaitingRoomId\\": \\"6a51d5bc6460887abd1291dc7d4d****\\\\n\\",\\n \\"Enable\\": \\"on\\",\\n \\"Name\\": \\"Test waiting room\\",\\n \\"QueueAllEnable\\": \\"on\\",\\n \\"HostNameAndPath\\": [\\n {\\n \\"Subdomain\\": \\"test.\\\\n\\",\\n \\"Domain\\": \\"example.com\\\\n\\",\\n \\"Path\\": \\"/test\\"\\n }\\n ],\\n \\"CookieName\\": \\"__aliwaitingroom_example\\",\\n \\"TotalActiveUsers\\": \\"300\\",\\n \\"NewUsersPerMinute\\": \\"200\\",\\n \\"SessionDuration\\": \\"3600\\",\\n \\"DisableSessionRenewalEnable\\": \\"on\\",\\n \\"QueuingMethod\\": \\"random\\",\\n \\"QueuingStatusCode\\": \\"200\\",\\n \\"JsonResponseEnable\\": \\"on\\",\\n \\"Description\\": \\"Test waiting room\\",\\n \\"WaitingRoomType\\": \\"default\\",\\n \\"CustomPageHtml\\": \\"Custom HTML content\\",\\n \\"Language\\": \\"zhcn\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'ListWaitingRooms', 'description' => 'Use this operation to query detailed configurations about all waiting rooms in a website, including the status, name, and queuing rules of each waiting room.', 'changeSet' => [ ['createdAt' => '2024-09-18T06:13:40.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListWaitingRooms'], ], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'esa:ListWaitingRooms', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'translator' => 'manual', ], 'OpenEdgeContainer' => [ 'summary' => 'Activates the edge container service.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '261516', 'abilityTreeNodes' => ['FEATUREdcdnGMYWU5'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '54B1C88C-9BB7-568F-9D02-DFBE6F44624D'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'NoRealNameAuthentication', 'errorMessage' => 'You have not completed real-name authentication.', 'description' => 'You have not completed real-name authentication.'], ['errorCode' => 'EdgeContainer.HasOpened', 'errorMessage' => 'You have already activated Edge Container.', 'description' => 'You have already activated Edge Container.'], ['errorCode' => 'UserQuantityExceed', 'errorMessage' => 'Your current purchase quantity exceeds the available quantity. Please select a new quantity.', 'description' => 'Your current purchase quantity exceeds the available quantity. Please select a new quantity.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Activate edge container service', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"54B1C88C-9BB7-568F-9D02-DFBE6F44624D\\"\\n}","type":"json"}]', ], 'OpenErService' => [ 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239354', 'abilityTreeNodes' => ['FEATUREdcdnGMYWU5'], ], 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Id of the request', 'type' => 'string', 'example' => '5CC228B4-7A67-4016-9C9F-4A4133494A91'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'ErService.HasOpened', 'errorMessage' => 'You have already activated Edge Routine.', 'description' => 'You have already activated Edge Routine.'], ['errorCode' => 'InsufficientAvailableQuota', 'errorMessage' => 'Your account balance is insufficient.', 'description' => 'Your account is in arrears, please pay the arrears before purchasing.'], ['errorCode' => 'NoRealNameAuthentication', 'errorMessage' => 'You have not completed real-name authentication.', 'description' => 'You have not completed real-name authentication.'], ['errorCode' => 'RiskControlRejection', 'errorMessage' => 'In order to protect the security of your account, the order was suspended, please contact customer service for details.', 'description' => 'In order to protect the security of your account, the order was suspended, please contact customer service for details.'], ['errorCode' => 'RR309', 'errorMessage' => 'The system has detected that your payment method is at risk. Please complete the verification through the link in the email and the in-station letter. Please place the order again after the verification is passed.', 'description' => 'The system has detected that your payment method is at risk. Please complete the verification through the link in the email and the in-station letter. Please place the order again after the verification is passed.'], ['errorCode' => 'RR307', 'errorMessage' => 'Credit card verification is not complete. Please follow the guidance in the email and the internal message to complete the verification. Once verified, please place your order again.', 'description' => 'Credit card verification is not complete. Please follow the guidance in the email and the internal message to complete the verification. Once verified, please place your order again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'OpenErService', 'summary' => 'OpenErService', 'changeSet' => [ ['createdAt' => '2025-06-18T03:30:35.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'OpenErService'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:OpenErService', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"5CC228B4-7A67-4016-9C9F-4A4133494A91\\"\\n}","type":"json"}]', ], 'PreloadCaches' => [ 'summary' => 'Prefetches resources.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239241', 'abilityTreeNodes' => ['FEATUREdcdn4TTNAL'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'Content', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The prefetch objects.', 'type' => 'array', 'items' => ['description' => 'A single prefetch object.'."\n" .'>The hostname in the URL must be a DNS record name (RecordName) with Proxied=true under the current site specified by SiteId. You can query the record names by calling the ListRecords operation with the SiteId parameter. If you use an unconfigured domain name, the InvalidParameter.RecordNotBelongToSite error is returned.>.', 'type' => 'string', 'required' => false, 'example' => 'http://a.com/1.jpg?b=1', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'Headers', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The default header carried in a prefetch request is Accept-Encoding:gzip. If you want the prefetch request to carry other headers or implement multi-copy prefetching, use this parameter to specify custom prefetch headers.', 'type' => 'object', 'required' => false, 'additionalProperties' => ['description' => '请求头。', 'type' => 'string', 'example' => 'Accept-Encoding:gzip', 'title' => ''], 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '9732E117-8A37-49FD-A36F-ABBB87556CA7'], 'TaskId' => ['description' => 'The task ID. A task ID is returned when you create a prefetch task.', 'type' => 'string', 'example' => '16401427840', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingTimeParameter', 'errorMessage' => 'The StartTime and EndTime must be both specified.', 'description' => 'Please provide both a start time and an end time.'], ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'DomainNameOverLimit', 'errorMessage' => 'A maximum of 500 domains are supported for each request.', 'description' => 'Only 500 domain names are supported at a time. Please reduce the number of domain names to request again.'], ['errorCode' => 'InvalidTime', 'errorMessage' => 'The query time cannot exceed the last 3 days.', 'description' => 'The query time cannot exceed the last 3 days.'], ['errorCode' => 'MissingParameter.ObjectType', 'errorMessage' => 'The ObjectType parameter is required if DomainName or ObjectType is specified.', 'description' => 'Specify the ObjectType parameter.'], ['errorCode' => 'InvalidStationParameter', 'errorMessage' => 'The specified Station is invalid.', 'description' => 'The specified node parameter is invalid.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ['errorCode' => 'InvalidTaskId.Malformed', 'errorMessage' => 'The specified taskId is invalid.', 'description' => 'The specified task ID is invalid.'], ['errorCode' => 'InvalidParameters.InvalidUrls', 'errorMessage' => 'The specified urls are invalid.', 'description' => 'The requested URL parameter is invalid.'], ['errorCode' => 'QuotaExceeded', 'errorMessage' => 'You attempts have exceeded the daily limit.', 'description' => 'Exceeding the same day quota limit. The number of submissions today has been exhausted. You can query the number of times a quota can be used today through the quota API.'], ['errorCode' => 'InvalidParameter.RecordNotBelongToSite', 'errorMessage' => 'The record name passed in does not belong to the current site.', 'description' => 'The record name passed in does not belong to the current site.'], ['errorCode' => 'PreloadQueueFull', 'errorMessage' => 'The prefetch queue is full. Try again later.', 'description' => 'The prefetch queue is full, and you need to retry after the queue is processed.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9732E117-8A37-49FD-A36F-ABBB87556CA7\\",\\n \\"TaskId\\": \\"16401427840\\"\\n}","type":"json"}]', 'title' => 'Prefetch uRLs', 'changeSet' => [ ['createdAt' => '2025-06-17T01:55:08.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-03-13T07:58:30.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-10-15T01:58:27.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'PreloadCaches'], ], ], 'ramActions' => [], ], 'PublishEdgeContainerAppVersion' => [ 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239213', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'formData', 'schema' => ['description' => 'The application ID.', 'type' => 'string', 'required' => true, 'maxLength' => 64, 'minLength' => 20, 'example' => 'app-88068867578379****', 'title' => ''], ], [ 'name' => 'VersionId', 'in' => 'query', 'schema' => ['description' => 'The version ID.', 'type' => 'string', 'required' => true, 'maxLength' => 64, 'minLength' => 20, 'example' => 'ver-87962637161651****', 'title' => ''], ], [ 'name' => 'PublishEnv', 'in' => 'formData', 'schema' => ['description' => 'The environment to which you want to release the version. Valid values:'."\n" ."\n" .'- prod: the production environment.'."\n" ."\n" .'- staging: the staging environment.', 'type' => 'string', 'required' => true, 'example' => 'prod', 'title' => ''], ], [ 'name' => 'Percentage', 'in' => 'formData', 'schema' => ['description' => 'The release percentage. Valid values: 1 to 100. Default value: 100.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'example' => '100', 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'formData', 'schema' => ['description' => 'The time when the application version starts to be released. If you do not specify this parameter, the current time is used by default.'."\n" ."\n" .'Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.', 'type' => 'string', 'required' => false, 'example' => '2023-06-05T16:00:00Z', 'title' => ''], ], [ 'name' => 'Remarks', 'in' => 'formData', 'schema' => ['description' => 'The remarks. This parameter is empty by default.', 'type' => 'string', 'required' => false, 'maxLength' => 1024, 'example' => 'test publish app', 'title' => ''], ], [ 'name' => 'PublishType', 'in' => 'query', 'schema' => [ 'description' => 'Specifies how the version is released. Valid values:'."\n" ."\n" .'- percentage: releases the version by percentage.'."\n" ."\n" .'- region: releases the version by region.'."\n" ."\n" .'If you do not specify this parameter, the version is released by percentage by default.', 'type' => 'string', 'default' => 'percentage', 'enum' => ['percentage', 'region'], 'required' => false, 'example' => 'percentage', 'title' => '', ], ], [ 'name' => 'Regions', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The regions to which the version is released.', 'type' => 'array', 'items' => ['description' => 'The release region.', 'type' => 'string', 'required' => false, 'example' => 'jiangsu', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'FullRelease', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to fully release the version. This parameter takes effect only when PublishType is set to region.', 'type' => 'boolean', 'default' => 'false', 'required' => false, 'example' => 'true', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.PublishEnv', 'errorMessage' => 'The specified PublishEnv is invalid. Please check the PublishEnv parameter. It may not be set to either "prod" or "staging." Please make the necessary changes and call the interface again.', 'description' => 'The PublishEnv parameter is invalid. Please check the PublishEnv parameter. You may not have set it to prod or staging one of them. Please modify it and call the interface again.'], ['errorCode' => 'InvalidParameter.Percentage', 'errorMessage' => 'The Percentage parameter is invalid. Please check the Percentage parameter, which should be in the range of 1-100. Modify it accordingly and call the interface again.', 'description' => 'The Percentage parameter is invalid. Check the Percentage parameter. The parameter range is 1-100. Modify the parameter and call the interface again.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Invalid parameter. Check the parameter configuration.', 'description' => 'Invalid parameter. Check the parameter configuration.'], ['errorCode' => 'InvalidParameter.appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.VersionId', 'errorMessage' => 'The specified VersionId is invalid.  Please check the VersionId parameter. You may not have entered the parameter or the parameter does not start with ver-string. Please modify it and call the interface again.', 'description' => 'The VersionId parameter is invalid. Please check the VersionId parameter. You may not have entered the parameter or the parameter does not start with ver-string. Please modify it and call the interface again.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'PublishEdgeContainerAppVersion', 'summary' => 'Releases a specific version of a containerized application.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'PublishEdgeContainerAppVersion'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:PublishEdgeContainerAppVersion', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","type":"json"}]', ], 'PublishRoutineCodeVersion' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'high', 'chargeType' => 'free', 'abilityTreeCode' => '238829', 'abilityTreeNodes' => ['FEATUREdcdn75UYDO'], ], 'parameters' => [ [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The name of the Edge Routine.', 'type' => 'string', 'required' => true, 'example' => 'test-routine1', 'title' => ''], ], [ 'name' => 'Env', 'in' => 'formData', 'schema' => ['description' => 'The environment name.', 'type' => 'string', 'required' => true, 'example' => 'production', 'title' => ''], ], [ 'name' => 'CodeVersion', 'in' => 'formData', 'schema' => ['description' => 'The version number of the code to publish.', 'type' => 'string', 'required' => false, 'example' => '1710120201067203242', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395'], 'CodeVersion' => ['description' => 'The code version number.', 'type' => 'string', 'example' => '1710120201067203242', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'RoutineNotExist', 'errorMessage' => 'The routine name does not exist. Check the routine name and try again.', 'description' => 'The routine name does not exist. Check the routine name and try again.'], ['errorCode' => 'ParameterNotExist', 'errorMessage' => 'The specified parameter does not exist. Check your configurations and try again.', 'description' => 'The specified parameter does not exist. Check your configurations and try again.'], ['errorCode' => 'InternalOperationError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'DependedByOthers', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'RoutineUserServiceStatusHalt', 'errorMessage' => 'Failed to update the configurations because you have overdue payments.', 'description' => 'Failed to update the configurations because you have overdue payments.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Parameter verification failed. Check your configurations and try again.', 'description' => 'Parameter verification failed. Check your configurations and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Publish a specific version of edge routine code', 'summary' => 'Publishes a specific version of Edge Routine code to a staging or production environment. When publishing to the production environment, you can perform a canary release to specific regions.', 'changeSet' => [ ['createdAt' => '2024-12-04T05:48:47.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:PublishRoutineCodeVersion', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395\\",\\n \\"CodeVersion\\": \\"1710120201067203242\\"\\n}","type":"json"}]', ], 'PurchaseBotInstance' => [ 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238733', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteInstanceId', 'in' => 'query', 'schema' => ['description' => 'The site instance.', 'type' => 'string', 'required' => true, 'example' => 'esa-site-23kde*****'."\n", 'title' => ''], ], [ 'name' => 'BotInstanceLevel', 'in' => 'query', 'schema' => [ 'description' => 'The bot instance specifications.', 'enumValueTitles' => ['enterprise_bot' => 'Web edition.', 'enterprise_bot_with_app' => 'Web/App edition.'], 'type' => 'string', 'required' => true, 'enum' => ['enterprise_bot', 'enterprise_bot_with_app'], 'example' => 'enterprise_bot', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response struct.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'."\n"], 'OrderId' => ['description' => 'The order ID.', 'type' => 'string', 'example' => '31223****11', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'esa-bot-9v9x3o2***', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'CheckOrderFailed', 'errorMessage' => 'Invalid order parameter.', 'description' => 'Invalid order parameter.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'InvalidSiteICP', 'errorMessage' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.', 'description' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.'], ['errorCode' => 'InvalidSiteName', 'errorMessage' => 'Invalid website name. Check and try again.', 'description' => 'Invalid website name. Check and try again.'], ['errorCode' => 'SYSTEM.NoSpecificCodeFailed', 'errorMessage' => 'Invalid subscription duration. Check and try again.', 'description' => 'Invalid subscription duration. Check and try again.'], ['errorCode' => 'CheckPlanFailed', 'errorMessage' => 'Invalid plan name or code. Check and try again.', 'description' => 'Invalid plan name or code. Check and try again.'], ['errorCode' => 'SubSiteUnavailable', 'errorMessage' => 'Subdomains are allowed only in Enterprise plans. Upgrade your plan to add a subdomain to ESA.', 'description' => 'Subdomains are allowed only in Enterprise plans. Upgrade your plan to add a subdomain to ESA.'], ['errorCode' => 'InsufficientAvailableQuota', 'errorMessage' => 'Your account balance is insufficient.', 'description' => 'Your account is in arrears, please pay the arrears before purchasing.'], ['errorCode' => 'InsufficientBalance', 'errorMessage' => 'Your account balance is insufficient.', 'description' => 'Your account balance is insufficient, please recharge before purchasing.'], ['errorCode' => 'InvalidComponent', 'errorMessage' => 'The order parameters is invalid.', 'description' => 'The order parameters is invalid.'], ['errorCode' => 'RamAuthFailed', 'errorMessage' => 'The sub-account has no operation permission.', 'description' => 'The RAM user does not have the required operation permissions.'], ], ], 'title' => 'Purchase a bot instance', 'summary' => 'Purchases a new bot instance.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\\\n\\",\\n \\"OrderId\\": \\"31223****11\\",\\n \\"InstanceId\\": \\"esa-bot-9v9x3o2***\\"\\n}","type":"json"}]', ], 'PurchaseCacheReserve' => [ 'summary' => 'Purchases a cache reserve instance.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeCode' => '238733', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'QuotaGb', 'in' => 'query', 'schema' => ['description' => 'The cache reserve specification. Unit: GB.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '512000', 'title' => ''], ], [ 'name' => 'CrRegion', 'in' => 'query', 'schema' => ['description' => 'The cache reserve region.'."\n" .'- HK: Hong Kong (China)'."\n" .'- CN-beijing: Chinese mainland - Beijing', 'type' => 'string', 'required' => false, 'example' => 'HK', 'title' => ''], ], [ 'name' => 'AutoRenew', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable auto-renewal. Valid values:'."\n" .'- true: Enables auto-renewal.'."\n" .'- false: Disables auto-renewal.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'Period', 'in' => 'query', 'schema' => ['description' => 'The purchase period. Unit: months.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3', 'title' => ''], ], [ 'name' => 'ChargeType', 'in' => 'query', 'schema' => [ 'description' => 'The billing type. Valid values:'."\n" .'- PREPAY: upfront.', 'enumValueTitles' => ['PREPAY' => 'Upfront.'], 'type' => 'string', 'enum' => ['POSTPAY', 'PREPAY'], 'required' => false, 'example' => 'PREPAY', 'title' => '', ], ], [ 'name' => 'AutoPay', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable automatic payment. Default value: false. Valid values:'."\n" .'- true: Enables automatic payment.'."\n" .'- false: Disables automatic payment.', 'enumValueTitles' => ['true' => 'automatic payment.', 'false' => 'no automatic payment.'], 'type' => 'boolean', 'default' => 'false', 'required' => false, 'example' => 'true', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response struct.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '30423A7F-A83D-1E24-B80E-86DD25790758'], 'OrderId' => ['description' => 'The order ID.', 'type' => 'string', 'example' => '31223****11', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'xcdn-ad*****s11w'."\n", 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'CheckOrderFailed', 'errorMessage' => 'Invalid order parameter.', 'description' => 'Invalid order parameter.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'InvalidSiteICP', 'errorMessage' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.', 'description' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.'], ['errorCode' => 'InvalidSiteName', 'errorMessage' => 'Invalid website name. Check and try again.', 'description' => 'Invalid website name. Check and try again.'], ['errorCode' => 'SYSTEM.NoSpecificCodeFailed', 'errorMessage' => 'Invalid subscription duration. Check and try again.', 'description' => 'Invalid subscription duration. Check and try again.'], ['errorCode' => 'CheckPlanFailed', 'errorMessage' => 'Invalid plan name or code. Check and try again.', 'description' => 'Invalid plan name or code. Check and try again.'], ['errorCode' => 'SubSiteUnavailable', 'errorMessage' => 'Subdomains are allowed only in Enterprise plans. Upgrade your plan to add a subdomain to ESA.', 'description' => 'Subdomains are allowed only in Enterprise plans. Upgrade your plan to add a subdomain to ESA.'], ['errorCode' => 'InsufficientAvailableQuota', 'errorMessage' => 'Your account balance is insufficient.', 'description' => 'Your account is in arrears, please pay the arrears before purchasing.'], ['errorCode' => 'InsufficientBalance', 'errorMessage' => 'Your account balance is insufficient.', 'description' => 'Your account balance is insufficient, please recharge before purchasing.'], ['errorCode' => 'InvalidComponent', 'errorMessage' => 'The order parameters is invalid.', 'description' => 'The order parameters is invalid.'], ['errorCode' => 'RamAuthFailed', 'errorMessage' => 'The sub-account has no operation permission.', 'description' => 'The RAM user does not have the required operation permissions.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"30423A7F-A83D-1E24-B80E-86DD25790758\\",\\n \\"OrderId\\": \\"31223****11\\",\\n \\"InstanceId\\": \\"xcdn-ad*****s11w\\\\n\\"\\n}","type":"json"}]', 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Purchase a cache reserve instance', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'PurchaseCacheReserve'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:PurchaseCacheReserve', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'PurchaseRatePlan' => [ 'summary' => 'Purchases a plan by calling PurchaseRatePlan.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeCode' => '239597', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'PlanName', 'in' => 'query', 'schema' => ['description' => 'The plan name.'."\n" ."\n" .'China site'."\n" ."\n" .'- Free Edition: entranceplan'."\n" .'- Basic: basic'."\n" .'- Standard: medium'."\n" .'- Premium: high'."\n" ."\n" .'International site'."\n" ."\n" .'- Entrance: entranceplan_intl'."\n" .'- Pro: basicplan_intl'."\n" .'- Premium: vipplan_intl'."\n" ."\n" .'> Note: For Enterprise Edition plans, the plan name is provided after backend configuration.', 'type' => 'string', 'required' => false, 'example' => 'basic', 'title' => ''], ], [ 'name' => 'PlanCode', 'in' => 'query', 'schema' => ['description' => 'The plan code.'."\n" ."\n" .'China site'."\n" ."\n" .'- Free Edition: entranceplan'."\n" .'- Basic: basicplan'."\n" .'- Standard: standardplan'."\n" .'- Premium: advancedplan'."\n" ."\n" .'International site'."\n" ."\n" .'- Entrance: entranceplan'."\n" .'- Pro: standardplan'."\n" .'- Premium: advancedpla.', 'type' => 'string', 'required' => false, 'example' => 'basicplan', 'title' => ''], ], [ 'name' => 'SiteName', 'in' => 'query', 'schema' => ['description' => 'The site name.', 'type' => 'string', 'required' => false, 'example' => 'test.com', 'title' => ''], ], [ 'name' => 'Coverage', 'in' => 'query', 'schema' => ['description' => 'The acceleration region. Valid values:'."\n" .'- domestic: the Chinese mainland only.'."\n" .'- global: global.'."\n" .'- overseas: global (excluding the Chinese mainland).', 'type' => 'string', 'default' => 'overseas', 'required' => false, 'example' => 'domestic', 'title' => ''], ], [ 'name' => 'Type', 'in' => 'query', 'schema' => [ 'description' => 'The site access type. Valid values:'."\n" .'- NS: NS access.'."\n" .'- CNAME: CNAME access.', 'enumValueTitles' => ['NS' => 'NS access.', 'CNAME' => 'CNAME access.'], 'type' => 'string', 'default' => 'CNAME', 'enum' => ['CNAME', 'NS'], 'required' => false, 'example' => 'CNAME', 'title' => '', ], ], [ 'name' => 'AutoRenew', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable auto-renewal. Valid values:'."\n" .'- true: Auto-renewal is enabled.'."\n" .'- false: Auto-renewal is disabled.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'Period', 'in' => 'query', 'schema' => ['description' => 'The purchase period, in months.'."\n" .'This parameter is required when you directly call this operation.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'ChargeType', 'in' => 'query', 'schema' => [ 'description' => 'The billing method. Valid values:'."\n" .'- PREPAY: subscription.'."\n" .'- POSTPAY: pay-as-you-go.'."\n" .'Set this parameter to PREPAY when you directly call this operation.', 'enumValueTitles' => ['POSTPAY' => 'Subscription.', 'PREPAY' => 'Pay-as-you-go.'], 'type' => 'string', 'enum' => ['POSTPAY', 'PREPAY'], 'required' => false, 'example' => 'PREPAY', 'title' => '', ], ], [ 'name' => 'AutoPay', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable automatic payment.'."\n" .'Set this parameter to true when you directly call this operation.', 'type' => 'boolean', 'default' => 'false', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'Amount', 'in' => 'query', 'schema' => ['description' => 'The number of plans to purchase.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '99', 'minimum' => '1', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'Channel', 'in' => 'query', 'schema' => ['description' => 'The channel field.', 'type' => 'string', 'required' => false, 'example' => 'xxxWodkxxx', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response struct.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '30423A7F-A83D-1E24-B80E-86DD25790758'], 'OrderId' => ['description' => 'The order ID.', 'type' => 'string', 'example' => '123123', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'esa-site-ads11w', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'CheckOrderFailed', 'errorMessage' => 'Invalid order parameter.', 'description' => 'Invalid order parameter.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'InvalidSiteICP', 'errorMessage' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.', 'description' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.'], ['errorCode' => 'InvalidSiteName', 'errorMessage' => 'Invalid website name. Check and try again.', 'description' => 'Invalid website name. Check and try again.'], ['errorCode' => 'SYSTEM.NoSpecificCodeFailed', 'errorMessage' => 'Invalid subscription duration. Check and try again.', 'description' => 'Invalid subscription duration. Check and try again.'], ['errorCode' => 'CheckPlanFailed', 'errorMessage' => 'Invalid plan name or code. Check and try again.', 'description' => 'Invalid plan name or code. Check and try again.'], ['errorCode' => 'SubSiteUnavailable', 'errorMessage' => 'Subdomains are allowed only in Enterprise plans. Upgrade your plan to add a subdomain to ESA.', 'description' => 'Subdomains are allowed only in Enterprise plans. Upgrade your plan to add a subdomain to ESA.'], ['errorCode' => 'InsufficientAvailableQuota', 'errorMessage' => 'Your account balance is insufficient.', 'description' => 'Your account is in arrears, please pay the arrears before purchasing.'], ['errorCode' => 'InsufficientBalance', 'errorMessage' => 'Your account balance is insufficient.', 'description' => 'Your account balance is insufficient, please recharge before purchasing.'], ['errorCode' => 'InvalidComponent', 'errorMessage' => 'The order parameters is invalid.', 'description' => 'The order parameters is invalid.'], ['errorCode' => 'RamAuthFailed', 'errorMessage' => 'The sub-account has no operation permission.', 'description' => ''], ['errorCode' => 'BuyWithSiteAmountErr', 'errorMessage' => 'Site-based purchase plans do not support bulk purchasing.', 'description' => 'Site-based purchase plans do not support bulk purchasing.'], ['errorCode' => 'EnterpriseAmountErr', 'errorMessage' => 'Enterprise plans do not support bulk purchase.', 'description' => 'Enterprise plans do not support bulk purchase.'], ['errorCode' => 'TrialService.HasOpened', 'errorMessage' => 'You have already activated the trial service.', 'description' => 'You have activated the trial service and cannot activate it again.'], ['errorCode' => 'UserQuantityExceed', 'errorMessage' => 'Your current purchase quantity exceeds the available quantity. Please select a new quantity.', 'description' => 'Your current purchase quantity exceeds the available quantity. Please select a new quantity.'], ['errorCode' => 'BASIC_INFO_UNCOMPLETED', 'errorMessage' => 'You have not completed your personal basic information. Please complete the information and try again.', 'description' => 'You have not completed your basic personal information. Please complete the information and re-operate. (If the current account is a managed sub-account, please contact the main account and click this link to complete the information.) 'Purchase a plan', 'description' => '1. Obtain the plan name and plan code by calling the DescribeRatePlanPrice operation.'."\n" .'2. If the acceleration region is not set to overseas, the site must have a valid China Internet Content Provider (ICP) filing.', 'changeSet' => [ ['createdAt' => '2025-06-18T03:30:35.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-06-13T03:33:33.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-04-08T06:39:34.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-02-20T05:44:58.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2024-09-18T06:13:40.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'PurchaseRatePlan'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:PurchaseRatePlan', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'PurgeCaches' => [ 'summary' => 'Refreshes file content on nodes. Supports refreshing by file, directory, cache tag, ignored parameters, hostname, and entire site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238881', 'abilityTreeNodes' => ['FEATUREdcdnBCJPGN', 'FEATUREdcdnELTTM1', 'FEATUREdcdnA9FG2P', 'FEATUREdcdnRELTJV', 'FEATUREdcdnEWYS3A', 'FEATUREdcdn4QVGXU'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'Type', 'in' => 'query', 'schema' => [ 'description' => 'The type of the refresh node. Valid values:'."\n" .'- **file** (default): file refresh.'."\n" .'- **cachekey**: cache key refresh.'."\n" .'- **cachetag**: cache label refresh.'."\n" .'- **directory**: folder refresh.'."\n" .'- **ignoreParams**: parameter-ignored refresh. This refers to removing the question mark (?) and all parameters after it from the request URL. When you commit a parameter-stripped URL through this API operation, the submitted URL is matched against cached resource URLs after their parameters are also stripped. If a cached resource URL matches the submitted URL after parameter stripping, the point of presence executes the refresh on the cached resource.'."\n" .'- **hostname**: hostname refresh.'."\n" .'- **purgeall**: refreshes all cached content under the site.', 'enumValueTitles' => ['cachetag' => 'cache tag refresh.', 'hostname' => 'hostname refresh.', 'file' => 'file refresh.', 'cachekey' => 'cache key refresh.', 'purgeall' => 'refreshes all cached content under the site.', 'ignoreparams' => 'parameter-ignored refresh.', 'directory' => 'directory refresh.'], 'type' => 'string', 'required' => true, 'enum' => ['file', 'cachetag', 'directory', 'ignoreparams', 'hostname', 'purgeall', 'cachekey'], 'example' => 'file', 'title' => '', ], ], [ 'name' => 'Content', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The refresh content.', 'type' => 'object', 'properties' => [ 'Files' => [ 'description' => 'The list of files to refresh. This parameter is required when Type is set to file.', 'type' => 'array', 'items' => ['description' => 'The list of files to refresh. This parameter is required when Type is set to file.'."\n" ."\n" .'> A maximum of 1,000 entries are allowed per request, with a maximum of 10 different domain names.', 'type' => 'any', 'required' => false, 'example' => '["http://a.com/1.jpg?b=1", "http://a.com/2.jpg?b=1"]', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], 'CacheTags' => [ 'description' => 'The list of cache tags to refresh. This parameter is required when Type is set to cachetag.', 'type' => 'array', 'items' => ['description' => 'The list of cache tags to refresh. This parameter is required when Type is set to cachetag.'."\n" ."\n" .'> A maximum of 30 entries are allowed per request.', 'type' => 'string', 'required' => false, 'example' => '["tag1", "tag2"]', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], 'Hostnames' => [ 'description' => 'The list of hostnames to refresh. This parameter is required when Type is set to hostname.', 'type' => 'array', 'items' => ['description' => 'The list of hostnames to refresh. This parameter is required when Type is set to hostname.'."\n" .'> A maximum of 10 domain names are allowed per request.', 'type' => 'string', 'required' => false, 'example' => '["a.com", "b.com"]', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], 'IgnoreParams' => [ 'description' => 'The list of files with parameters ignored. This parameter is required when Type is set to ignoreParams.', 'type' => 'array', 'items' => ['description' => 'The list of files with parameters ignored. This parameter is required when Type is set to ignoreParams.'."\n" ."\n" .'> A maximum of 100 entries are allowed per request, with a maximum of 10 different domain names.', 'type' => 'string', 'required' => false, 'example' => '["http://a.com/1.jpg", "http://a.com/2.jpg"]', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], 'Directories' => [ 'description' => 'The list of directories to refresh. This parameter is required when Type is set to directory.', 'type' => 'array', 'items' => ['description' => 'The list of directories to refresh. This parameter is required when Type is set to directory.'."\n" ."\n" .'> A maximum of 100 entries are allowed per request, with a maximum of 10 different domain names.', 'type' => 'string', 'required' => false, 'example' => '["http://a.com/path1/", "http://a.com/path2/"]', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], 'PurgeAll' => ['description' => 'Specifies whether to refresh all cached content under the site. Default value: false. Set this parameter to true when Type is set to purgeall.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], 'CacheKeys' => [ 'description' => 'The list of cache keys to refresh. This parameter is required when Type is set to cachekey.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Url' => ['description' => 'The URL to refresh.', 'type' => 'string', 'required' => false, 'example' => 'http://a.com/1.jpg?b=1', 'title' => ''], 'Headers' => [ 'description' => 'The header information corresponding to the cache key for the refresh. When the custom cache key feature is enabled, the cache key is generated based on the specified headers for the refresh.'."\n" ."\n" .'**UserGeo: country/region**'."\n" ."\n" .'- Country/region codes follow the ISO 3166-2 standard.'."\n" ."\n" .'**UserDeviceType: device type. Valid values:**'."\n" ."\n" .'- desktop'."\n" ."\n" .'- tablet'."\n" ."\n" .'- mobile'."\n" ."\n" .'**UserLanguage: language**'."\n" ."\n" .'- Language codes follow the ISO 639-1 or BCP 47 standard. For example, set this to zh to refresh content in Chinese.', 'type' => 'object', 'required' => false, 'additionalProperties' => ['description' => 'The value of the cache key header.', 'type' => 'string', 'example' => '{"Url":"http://www.example.com/dog_picture.jpg","Headers":{"cat": "789", "Cookie": "test444=444;test333=333;test222=222", "UserGeo": "US", "UserDeviceType": "desktop","UserLanguage": "zh-CN"}}', 'title' => ''], 'title' => '', 'example' => '', ], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'title' => '', 'example' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'Force', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to refresh all resources under the corresponding directory when the back-to-origin content is inconsistent with the origin server resources. Default value: false.'."\n" .'- **true**: Refreshes all resources under the corresponding directory.'."\n" .'- **false**: Refreshes only the changed resources under the corresponding directory.'."\n" ."\n" .'> '."\n" .'> This parameter takes effect for directory refresh, cache tag refresh, parameter-ignored refresh, hostname refresh, and full site cache refresh.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'EdgeComputePurge', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to refresh edge computing cached resources. For example, this allows refreshing content cached by the Edge Routine Cache API operation function.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'ET5BF670-09D5-4D0B-BEBY-D96A2A528000'], 'TaskId' => ['description' => 'The task ID. This ID is returned when you create a refresh or prefetch task.', 'type' => 'string', 'example' => '15940956620', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingTimeParameter', 'errorMessage' => 'The StartTime and EndTime must be both specified.', 'description' => 'Please provide both a start time and an end time.'], ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'DomainNameOverLimit', 'errorMessage' => 'A maximum of 500 domains are supported for each request.', 'description' => 'Only 500 domain names are supported at a time. Please reduce the number of domain names to request again.'], ['errorCode' => 'InvalidTime', 'errorMessage' => 'The query time cannot exceed the last 3 days.', 'description' => 'The query time cannot exceed the last 3 days.'], ['errorCode' => 'MissingParameter.ObjectType', 'errorMessage' => 'The ObjectType parameter is required if DomainName or ObjectType is specified.', 'description' => 'Specify the ObjectType parameter.'], ['errorCode' => 'InvalidStationParameter', 'errorMessage' => 'The specified Station is invalid.', 'description' => 'The specified node parameter is invalid.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ['errorCode' => 'InvalidTaskId.Malformed', 'errorMessage' => 'The specified taskId is invalid.', 'description' => 'The specified task ID is invalid.'], ['errorCode' => 'InvalidParameters.InvalidUrls', 'errorMessage' => 'The specified urls are invalid.', 'description' => 'The requested URL parameter is invalid.'], ['errorCode' => 'QuotaExceeded', 'errorMessage' => 'You attempts have exceeded the daily limit.', 'description' => 'Exceeding the same day quota limit. The number of submissions today has been exhausted. You can query the number of times a quota can be used today through the quota API.'], ['errorCode' => 'InvalidParameter.RecordNotBelongToSite', 'errorMessage' => 'The record name passed in does not belong to the current site.', 'description' => 'The record name passed in does not belong to the current site.'], ], 429 => [ ['errorCode' => 'TooManyRequests', 'errorMessage' => 'System load fluctuates, please try again later.', 'description' => 'System load fluctuates, please try again later.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"ET5BF670-09D5-4D0B-BEBY-D96A2A528000\\",\\n \\"TaskId\\": \\"15940956620\\"\\n}","type":"json"}]', 'title' => 'Refresh node cache', 'changeSet' => [ ['createdAt' => '2025-03-13T07:58:30.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-02-10T01:55:17.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-12-06T02:11:35.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2024-10-15T01:58:27.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'PurgeCaches'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:PurgeCaches', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'PutKv' => [ 'summary' => 'Creates or updates a single key-value pair in a namespace. The maximum size of a request is 2 MB.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238811', 'abilityTreeNodes' => ['FEATUREdcdnGMYWU5'], ], 'parameters' => [ [ 'name' => 'Namespace', 'in' => 'query', 'schema' => ['description' => 'The name of the namespace. You specify this name when you call the [CreateKvNamespace](~~2850317~~) operation.', 'type' => 'string', 'required' => true, 'example' => 'test_namespace', 'title' => ''], ], [ 'name' => 'Key', 'in' => 'query', 'schema' => ['description' => 'The key can be up to 512 bytes long and cannot contain spaces or forward slashes (/).', 'type' => 'string', 'required' => true, 'example' => 'test_key', 'title' => ''], ], [ 'name' => 'Value', 'in' => 'formData', 'schema' => ['description' => 'The value to associate with the key. The maximum size is 2 MB (2,000,000 bytes). For values that exceed this limit, use the [PutKvWithHighCapacity](~~2850486~~) operation.', 'type' => 'string', 'required' => true, 'example' => 'test_value', 'title' => ''], ], [ 'name' => 'Expiration', 'in' => 'query', 'schema' => ['description' => 'The expiration time for the key-value pair, as a Unix timestamp in seconds. This value cannot be earlier than the current time. If you specify both Expiration and ExpirationTtl, ExpirationTtl takes precedence.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1690081381', 'title' => ''], ], [ 'name' => 'ExpirationTtl', 'in' => 'query', 'schema' => ['description' => 'The time-to-live (TTL) for the key-value pair, in seconds. If you specify both Expiration and ExpirationTtl, ExpirationTtl takes precedence.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '3600', 'title' => ''], ], [ 'name' => 'Base64', 'in' => 'query', 'schema' => ['description' => 'Indicates whether the Value parameter uses Base64 encoding. Set this to true when storing a binary value. If this parameter is true, Value must be a valid Base64-encoded string.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response object.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F'], 'Length' => ['description' => 'The length of the value in the key-value pair.', 'type' => 'string', 'example' => '4', 'title' => ''], 'Value' => ['description' => 'The value of the key-value pair. If the value is longer than 256 characters, the response includes only the first 100 and last 100 characters.', 'type' => 'string', 'example' => 'test', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidAccount.Malformed', 'errorMessage' => 'The specified account is invalid.', 'description' => 'The account number is not entered correctly, for example, the input is empty.'], ['errorCode' => 'InvalidNameSpace.Malformed', 'errorMessage' => 'The specified namespace is invalid.', 'description' => 'The bucket name is entered incorrectly, such as an empty string.'], ['errorCode' => 'InvalidKey.Malformed', 'errorMessage' => 'The specified key is invalid.', 'description' => 'Key name input error, such as entering an empty string.'], ['errorCode' => 'InvalidKey.ExceedsMaximum', 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', 'description' => 'The length of the requested key is too large.'], ['errorCode' => 'InvalidValue.ExceedsMaximum', 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', 'description' => 'The value deposited is too large.'], ], 403 => [ ['errorCode' => 'InvalidKey.ExceedsCapacity', 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', 'description' => 'The capacity of the storage space exceeds the limit.'], ['errorCode' => 'Unauthorized.InvalidParameters', 'errorMessage' => 'The specified authentication parameters are invalid.', 'description' => 'Authentication parameter input error.'], ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'InvalidAccount.NotFound', 'errorMessage' => 'The specified account does not exist.', 'description' => 'The specified account does not exist.'], ['errorCode' => 'InvalidNameSpace.NotFound', 'errorMessage' => 'The specified namespace does not exist.', 'description' => ''], ['errorCode' => 'InvalidKey.NotFound', 'errorMessage' => 'The specified key does not exist.', 'description' => 'The specified key-value pair does not exist.'], ], 406 => [ ['errorCode' => 'InvalidNameSpace.Duplicate', 'errorMessage' => 'The specified namespace already exists.', 'description' => 'Specified storage space'], ['errorCode' => 'InvalidNameSpace.QuotaFull', 'errorMessage' => 'The maximum number of namespaces is exceeded.', 'description' => 'The number of storage spaces exceeds the capacity limit.'], ], 429 => [ ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests are submitted.', 'description' => 'Submissions are too frequent, please try again later'], ['errorCode' => 'TooQuickRequests', 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', 'description' => 'The modification or deletion of key-value pairs is too frequent.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'PutKv', 'changeSet' => [ ['createdAt' => '2024-09-20T13:49:27.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'PutKv'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:PutKv', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\",\\n \\"Length\\": \\"4\\",\\n \\"Value\\": \\"test\\"\\n}","type":"json"}]', ], 'PutKvWithHighCapacity' => [ 'summary' => 'Sets a single large-capacity key-value pair in a KV namespace. The maximum value size is 25 MB.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238726', 'abilityTreeNodes' => ['FEATUREdcdnGMYWU5'], ], 'parameters' => [ [ 'name' => 'Namespace', 'in' => 'query', 'schema' => ['description' => 'The name specified when you called the [CreateKvNamespace](~~2850317~~) operation.', 'type' => 'string', 'title' => '', 'required' => true, 'example' => 'test_namesapce'], ], [ 'name' => 'Key', 'in' => 'query', 'schema' => ['description' => 'The key name to set. The key name can be up to 512 characters in length and cannot contain spaces or backslashes (/).', 'type' => 'string', 'required' => true, 'example' => 'test_key', 'title' => ''], ], [ 'name' => 'Url', 'in' => 'query', 'schema' => ['description' => 'A publicly accessible HTTP or HTTPS URL that points to a JSON file containing the key-value pair to set. The server actively downloads the content from this URL.'."\n" ."\n" .'- If you use an SDK, the SDK automatically uploads the file and generates the URL.'."\n" ."\n" .'- In non-SDK scenarios, upload the JSON payload to any publicly accessible HTTP service and specify the URL.'."\n" ."\n" .'The file content pointed to by the URL must be in the following JSON format: {"Namespace":"","Key":"","Value":""}.', 'type' => 'string', 'required' => true, 'isFileTransferUrl' => true, 'example' => 'https://xxxobject.oss-cn-region.aliyuncs.com/9d91_xxxxxxxxxxx_158bb6e0f97c477791209bb46bd599f7', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F'], 'Length' => ['description' => 'The length of the value in the key-value pair.', 'type' => 'string', 'example' => '4', 'title' => ''], 'Value' => ['description' => 'The content of the key. If the content exceeds 256 characters, the first 100 and last 100 characters are returned with the middle portion omitted.', 'type' => 'string', 'example' => 'test', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidAccount.Malformed', 'errorMessage' => 'The specified account is invalid.', 'description' => 'The account number is not entered correctly, for example, the input is empty.'], ['errorCode' => 'InvalidNameSpace.Malformed', 'errorMessage' => 'The specified namespace is invalid.', 'description' => 'The bucket name is entered incorrectly, such as an empty string.'], ['errorCode' => 'InvalidKey.Malformed', 'errorMessage' => 'The specified key is invalid.', 'description' => 'Key name input error, such as entering an empty string.'], ['errorCode' => 'InvalidKey.ExceedsMaximum', 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', 'description' => 'The length of the requested key is too large.'], ['errorCode' => 'InvalidValue.ExceedsMaximum', 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', 'description' => 'The value deposited is too large.'], ], 403 => [ ['errorCode' => 'InvalidKey.ExceedsCapacity', 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', 'description' => 'The capacity of the storage space exceeds the limit.'], ['errorCode' => 'Unauthorized.InvalidParameters', 'errorMessage' => 'The specified authentication parameters are invalid.', 'description' => 'Authentication parameter input error.'], ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'InvalidAccount.NotFound', 'errorMessage' => 'The specified account does not exist.', 'description' => 'The specified account does not exist.'], ['errorCode' => 'InvalidNameSpace.NotFound', 'errorMessage' => 'The specified namespace does not exist.', 'description' => ''], ['errorCode' => 'InvalidKey.NotFound', 'errorMessage' => 'The specified key does not exist.', 'description' => 'The specified key-value pair does not exist.'], ], 406 => [ ['errorCode' => 'InvalidNameSpace.Duplicate', 'errorMessage' => 'The specified namespace already exists.', 'description' => 'Specified storage space'], ['errorCode' => 'InvalidNameSpace.QuotaFull', 'errorMessage' => 'The maximum number of namespaces is exceeded.', 'description' => 'The number of storage spaces exceeds the capacity limit.'], ], 429 => [ ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests are submitted.', 'description' => 'Submissions are too frequent, please try again later'], ['errorCode' => 'TooQuickRequests', 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', 'description' => 'The modification or deletion of key-value pairs is too frequent.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\",\\n \\"Length\\": \\"4\\",\\n \\"Value\\": \\"test\\"\\n}","type":"json"}]', 'title' => 'Set a single large-capacity key-value pair in a KV namespace', 'description' => 'This operation provides the same functionality as [PutKv](~~PutKv~~), but allows you to upload a larger request body. If the request body is small, use the [PutKv](~~PutKv~~) operation to reduce server-side processing time. This operation must be called by using an SDK. For example, when you use the Golang SDK, call the PutKvWithHighCapacityAdvance function.'."\n" .'```'."\n" .'func TestPutKvWithHighCapacity() {'."\n" .' // Configuration initialization'."\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" .' // Construct the key-value pair request to upload'."\n" .' namespace := "test-put-kv"'."\n" .' key := "test_PutKvWithHighCapacity_0"'."\n" .' value := strings.Repeat("t", 10*1024*1024)'."\n" .' rawReq := &PutKvRequest{'."\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" .' // If the payload is larger than 2 MB, call the high-capacity operation to upload it'."\n" .' reqHighCapacity := &PutKvWithHighCapacityAdvanceRequest{'."\n" .' Namespace: &namespace,'."\n" .' Key: &key,'."\n" .' UrlObject: bytes.NewReader([]byte(payload)),'."\n" .' }.'."\n" ."\n" .' resp, err := cli.PutKvWithHighCapacityAdvance(reqHighCapacity, runtime)'."\n" .' if err != nil {'."\n" .' return err'."\n" .' }'."\n" .' return nil'."\n" .'}.', 'changeSet' => [ ['createdAt' => '2024-09-20T13:49:26.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '2', 'countWindow' => 1, 'regionId' => '*', 'api' => 'PutKvWithHighCapacity'], ], ], 'ramActions' => [], ], 'RebuildEdgeContainerAppStagingEnv' => [ 'summary' => 'Rebuild the staging environment of an edge container application.', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238564', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', 'schema' => ['description' => 'The application ID. You can call the [ListEdgeContainerApps](~~ListEdgeContainerApps~~) operation to obtain the application ID.'."\n" .'>This parameter is required. If this parameter is not specified, the API returns InvalidParameter.appid (400). You can call ListEdgeContainerApps to obtain a valid application ID.'."\n" .'Dependency chain: CreateEdgeContainerApp (if not created) → CreateEdgeContainerAppVersion → PublishEdgeContainerAppVersion (environment=staging) → RebuildEdgeContainerAppStagingEnv'."\n" .'', 'type' => 'string', 'required' => false, 'example' => 'app-88068867578379****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-3C82-72F8FD6DA2FE'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-3C82-72F8FD6DA2FE\\"\\n}","type":"json"}]', 'title' => 'RebuildEdgeContainerAppStagingEnv', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'RebuildEdgeContainerAppStagingEnv'], ], ], 'ramActions' => [], ], 'ReleaseInstance' => [ 'summary' => 'Schedules the release of a security instance.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238733', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the security instance. This must be a DDoS security instance ID in the format of esa-ddos-*. You can call the ListDDoSInstances operation to obtain the ID. Site instance IDs in the format of esa-site-* are not supported.', 'type' => 'string', 'required' => true, 'example' => 'esa-ddos-2sdj**3s'."\n", 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-****-A1D7-6C044FE73368'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'CheckOrderFailed', 'errorMessage' => 'Invalid order parameter.', 'description' => 'Invalid order parameter.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'InvalidSiteICP', 'errorMessage' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.', 'description' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.'], ['errorCode' => 'InvalidSiteName', 'errorMessage' => 'Invalid website name. Check and try again.', 'description' => 'Invalid website name. Check and try again.'], ['errorCode' => 'SYSTEM.NoSpecificCodeFailed', 'errorMessage' => 'Invalid subscription duration. Check and try again.', 'description' => 'Invalid subscription duration. Check and try again.'], ['errorCode' => 'CheckPlanFailed', 'errorMessage' => 'Invalid plan name or code. Check and try again.', 'description' => 'Invalid plan name or code. Check and try again.'], ['errorCode' => 'SubSiteUnavailable', 'errorMessage' => 'Subdomains are allowed only in Enterprise plans. Upgrade your plan to add a subdomain to ESA.', 'description' => 'Subdomains are allowed only in Enterprise plans. Upgrade your plan to add a subdomain to ESA.'], ['errorCode' => 'InsufficientAvailableQuota', 'errorMessage' => 'Your account balance is insufficient.', 'description' => 'Your account is in arrears, please pay the arrears before purchasing.'], ['errorCode' => 'InsufficientBalance', 'errorMessage' => 'Your account balance is insufficient.', 'description' => 'Your account balance is insufficient, please recharge before purchasing.'], ['errorCode' => 'InvalidComponent', 'errorMessage' => 'The order parameters is invalid.', 'description' => 'The order parameters is invalid.'], ['errorCode' => 'RamAuthFailed', 'errorMessage' => 'The sub-account has no operation permission.', 'description' => ''], ['errorCode' => 'Instance.ReleaseFailed', 'errorMessage' => 'Instance release failed.', 'description' => 'Instance release failed.'], ['errorCode' => 'InvalidInstance', 'errorMessage' => 'The instance ID is missing or invalid. Make sure that the instance ID is valid and try again.', 'description' => 'The instance ID is missing or invalid. Make sure that the instance ID is valid and try again.'], ], ], 'title' => 'Schedule release', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '6', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ReleaseInstance'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:ReleaseInstance', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-****-A1D7-6C044FE73368\\"\\n}","type":"json"}]', 'translator' => 'machine', ], 'ResetScheduledPreloadJob' => [ 'summary' => 'Resets the progress of a scheduled prefetch task and restarts the prefetch from the beginning.'."\n" .'Before calling this operation, you must first create a scheduled prefetch task by calling CreateScheduledPreloadJob to obtain a valid task ID, and then pass the ID to this operation for resetting.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239114', 'abilityTreeNodes' => ['FEATUREdcdn4TTNAL'], ], 'parameters' => [ [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The ID of the scheduled prefetch task.'."\n" .'>The ID of the scheduled prefetch task. This parameter is required. You can obtain the ID from the response of CreateScheduledPreloadJob after creating a task, or query the ID of an existing task by calling GetScheduledPreloadJob or ListScheduledPreloadJobs.>.', 'type' => 'string', 'required' => false, 'example' => '665d3af3621bccf3fe29e1a4'."\n", 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74'], 'AliUid' => ['title' => '', 'description' => 'The Alibaba Cloud account ID.', 'type' => 'string', 'example' => '15685865xxx14622'], 'CreatedAt' => ['title' => '', 'description' => 'The time when the task was created, in ISO 8601 format (for example, 2024-01-01T00:00:00+Z).', 'type' => 'string', 'example' => '2024-06-02T02:23:26Z'], 'Domains' => ['title' => '', 'description' => 'The list of domain names to prefetch.', 'type' => 'string', 'example' => 'testurl.com'], 'ErrorInfo' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'invalid domain:test.com'], 'FailedFileOss' => ['title' => '', 'description' => 'The OSS URL of the failed file.', 'type' => 'string', 'example' => 'https://xxxobject.oss-cn-region.aliyuncs.com/9d91_xxxxxxxxxxx_158bb6e0f97c477791209bb46bd599f7'], 'FileId' => ['title' => '', 'description' => 'The ID of the URL list file, which is used for downloading.', 'type' => 'string', 'example' => '665d3b48621bccf3fe29e1a7'], 'Id' => ['title' => '', 'description' => 'The task ID.', 'type' => 'string', 'example' => '665d3af3621bccf3fe29e1a4'], 'InsertWay' => [ 'title' => '', 'description' => 'The URL insertion method. Valid values:'."\n" .'- oss: URLs are imported in batches from an OSS file.'."\n" .'- testBox: URLs are entered one by one in a text box.', 'enumValueTitles' => ['oss' => 'URLs are imported in batches from an OSS file.', 'testBox' => 'URLs are entered one by one in a text box.'], 'type' => 'string', 'enum' => ['file', 'url'], 'example' => 'oss', ], 'Name' => ['title' => '', 'description' => 'The task name.', 'type' => 'string', 'example' => 'example'], 'SiteId' => ['title' => '', 'description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '190007158391808'], 'TaskSubmitted' => ['title' => '', 'description' => 'The number of URLs that have been submitted to the system for prefetching.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'TaskType' => [ 'title' => '', 'description' => 'The task type (refresh or prefetch). Valid values:'."\n" .'- path: directory refresh.'."\n" .'- refresh: URL refresh.'."\n" .'- preload: URL prefetch.', 'enumValueTitles' => ['path' => 'Directory refresh.', 'refresh' => 'URL refresh.', 'preload' => 'URL prefetch.'], 'type' => 'string', 'enum' => ['preload', 'refresh', 'path'], 'example' => 'preload', ], 'UrlCount' => ['title' => '', 'description' => 'The total number of URLs.', 'type' => 'integer', 'format' => 'int32', 'example' => '2'], 'UrlSubmitted' => ['title' => '', 'description' => 'The number of submitted URLs.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'InvalidJob.JobCountOfSiteFull', 'errorMessage' => 'The maximum number of prefetch tasks for the website has been reached. Delete some unwanted ones and try again.', 'description' => 'The maximum number of prefetch tasks for the website has been reached. Delete some unwanted ones and try again.'], ['errorCode' => 'InvalidParameter.ObjectId', 'errorMessage' => 'Invalid task ID or execution plan ID.', 'description' => 'Invalid task ID or execution plan ID.'], ['errorCode' => 'MissingOssUrl', 'errorMessage' => 'OssUrl missing. Specify a valid URL of the OSS object that stores URLs to prefetch.', 'description' => 'OssUrl missing. Specify a valid URL of the OSS object that stores URLs to prefetch.'], ['errorCode' => 'MissingUrlList', 'errorMessage' => 'Enter the URLs you want to prefetch.', 'description' => 'Enter the URLs you want to prefetch.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ], 403 => [ ['errorCode' => 'InvalidUid.PermissionDenied', 'errorMessage' => 'You do not have the permissions to perform this operation on this resource. Check whether the specified UID is correct and has the required permissions.', 'description' => 'You do not have the permissions to perform this operation on this resource. Check whether the specified UID is correct and has the required permissions.'], ], [ ['errorCode' => 'InvalidJob.NotFound', 'errorMessage' => 'The task does not exist. Check whether the task ID is correct or whether the task has been deleted.', 'description' => 'The task does not exist. Check whether the task ID is correct or whether the task has been deleted.'], ['errorCode' => 'LogNotFound', 'errorMessage' => 'Failed to query the log. Check whether the task ID and execution ID are valid.', 'description' => 'Failed to query the log. Check whether the task ID and execution ID are valid.'], ['errorCode' => 'InvalidExecution.NotFound', 'errorMessage' => 'The execution plan does not exist. Check whether the parameters such as the execution ID, start time, and end time are correct.', 'description' => 'The execution plan does not exist. Check whether the parameters such as the execution ID, start time, and end time are correct.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\",\\n \\"AliUid\\": \\"15685865xxx14622\\",\\n \\"CreatedAt\\": \\"2024-06-02T02:23:26Z\\",\\n \\"Domains\\": \\"testurl.com\\",\\n \\"ErrorInfo\\": \\"invalid domain:test.com\\",\\n \\"FailedFileOss\\": \\"https://xxxobject.oss-cn-region.aliyuncs.com/9d91_xxxxxxxxxxx_158bb6e0f97c477791209bb46bd599f7\\",\\n \\"FileId\\": \\"665d3b48621bccf3fe29e1a7\\",\\n \\"Id\\": \\"665d3af3621bccf3fe29e1a4\\",\\n \\"InsertWay\\": \\"oss\\",\\n \\"Name\\": \\"example\\",\\n \\"SiteId\\": 190007158391808,\\n \\"TaskSubmitted\\": 1,\\n \\"TaskType\\": \\"preload\\",\\n \\"UrlCount\\": 2,\\n \\"UrlSubmitted\\": 1\\n}","type":"json"}]', 'title' => 'Reset the progress of a scheduled prefetch task', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ResetScheduledPreloadJob'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:ResetScheduledPreloadJob', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'RevokeClientCertificate' => [ 'summary' => 'Revokes an activated client certificate.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239109', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The certificate ID.'."\n", 'type' => 'string', 'required' => true, 'example' => 'baba39055622c008b90285a8838ed09a', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The website ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890123', 'title' => ''], 'SiteName' => ['description' => 'The website name.'."\n", 'type' => 'string', 'example' => 'example.com'."\n", 'title' => ''], 'Id' => ['description' => 'The certificate ID.'."\n", 'type' => 'string', 'example' => 'baba39055622c008b90285a8838ed09a', 'title' => ''], 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A123425345', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Certificate.StatusError', 'errorMessage' => 'The status of the certificate is invalid.', 'description' => 'The specified certificate status is invalid.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Id.MissingParameter', 'errorMessage' => 'The parameter Id is required.', 'description' => 'The required parameter Id is missing.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'Certificate.NotFound', 'errorMessage' => 'The specified certificate does not exist.', 'description' => 'The specified certificate does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SiteId\\": 1234567890123,\\n \\"SiteName\\": \\"example.com\\\\n\\",\\n \\"Id\\": \\"baba39055622c008b90285a8838ed09a\\",\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A123425345\\"\\n}","type":"json"}]', 'title' => 'RevokeClientCertificate', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'RevokeClientCertificate'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:RevokeClientCertificate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'RollbackEdgeContainerAppVersion' => [ 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239284', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'formData', 'schema' => ['description' => 'The application ID.', 'type' => 'string', 'required' => true, 'maxLength' => 64, 'minLength' => 20, 'title' => '', 'example' => 'app-88068867578379****'], ], [ 'name' => 'VersionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the version to roll back to.', 'type' => 'string', 'required' => true, 'maxLength' => 64, 'minLength' => 20, 'title' => '', 'example' => 'ver-87962637161651****'], ], [ 'name' => 'Remarks', 'in' => 'formData', 'schema' => ['description' => 'Additional information about the rollback.', 'type' => 'string', 'required' => false, 'maxLength' => 1024, 'title' => '', 'example' => 'test rollback app'], ], [ 'name' => 'UsedPercent', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to use percentage rollback.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'Percentage', 'in' => 'query', 'schema' => ['description' => 'The deployment percentage for the target version after the rollback. Valid values: **1 to 100**. Default value: **0**.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '50', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C370DAF1-C838-4288-A1A0-9A87633D248E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidParameter.appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.'], ['errorCode' => 'InvalidParameter.VersionId', 'errorMessage' => 'The specified VersionId is invalid.  Please check the VersionId parameter. You may not have entered the parameter or the parameter does not start with ver-string. Please modify it and call the interface again.', 'description' => 'The VersionId parameter is invalid. Please check the VersionId parameter. You may not have entered the parameter or the parameter does not start with ver-string. Please modify it and call the interface again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'title' => 'Roll Back Edge Container Application', 'summary' => 'Rolls back an edge container application to a specified version. Use this API to quickly recover from a failed deployment and minimize service disruption.', 'changeSet' => [ ['createdAt' => '2025-04-08T08:08:06.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'RollbackEdgeContainerAppVersion'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:RollbackEdgeContainerAppVersion', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C370DAF1-C838-4288-A1A0-9A87633D248E\\"\\n}","type":"json"}]', ], 'SetAutomaticFrequencyControlConfig' => [ 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '253996', 'abilityTreeNodes' => ['FEATUREdcdnUTRW1O'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The ID of the site. Call the [ListSites](~~2850189~~) operation to obtain this ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version of the site. For a site with version management enabled, this parameter specifies the version to which the configuration applies. The default value is 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'Enable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable automatic frequency control. Valid values:'."\n" ."\n" .'- **on**: Enables automatic frequency control.'."\n" ."\n" .'- **off**: Disables automatic frequency control.', 'type' => 'string', 'required' => true, 'enum' => ['on', 'off'], 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Level', 'in' => 'query', 'schema' => [ 'description' => 'The protection level. Valid values:'."\n" ."\n" .'- **loose**: Loose protection.'."\n" ."\n" .'- **normal**: Normal protection.'."\n" ."\n" .'- **strict**: Strict protection.', 'type' => 'string', 'required' => true, 'enum' => ['loose', 'normal', 'strict'], 'example' => 'normal', 'title' => '', ], ], [ 'name' => 'ActionType', 'in' => 'query', 'schema' => [ 'description' => 'The action to take on requests that trigger the control. Valid values:'."\n" ."\n" .'- **observe**: Monitors the requests.'."\n" ."\n" .'- **deny**: Blocks the requests.'."\n" ."\n" .'- **js**: Issues a JS challenge.', 'type' => 'string', 'required' => true, 'enum' => ['observe', 'deny', 'js'], 'example' => 'js', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => 'F32C57AA-7BF8-49AE-A2CC-9F42390F5A19'], 'Enable' => ['description' => 'Indicates whether automatic frequency control is enabled. Valid values:'."\n" ."\n" .'- **on**: Enabled.'."\n" ."\n" .'- **off**: Disabled.', 'type' => 'string', 'example' => 'on', 'title' => ''], 'Level' => ['description' => 'The protection level. Valid values:'."\n" ."\n" .'- **loose**: Loose protection.'."\n" ."\n" .'- **normal**: Normal protection.'."\n" ."\n" .'- **strict**: Strict protection.', 'type' => 'string', 'example' => 'normal', 'title' => ''], 'ActionType' => ['description' => 'The action taken on requests that trigger the control. Valid values:'."\n" ."\n" .'- **observe**: Requests are monitored.'."\n" ."\n" .'- **deny**: Requests are blocked.'."\n" ."\n" .'- **js**: JS challenges are issued.', 'type' => 'string', 'example' => 'js', 'title' => ''], ], 'title' => '', 'description' => 'The response parameters.', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'SetAutomaticFrequencyControlConfig', 'summary' => 'Configures the automatic frequency control threshold for a site.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:SetAutomaticFrequencyControlConfig', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F32C57AA-7BF8-49AE-A2CC-9F42390F5A19\\",\\n \\"Enable\\": \\"on\\",\\n \\"Level\\": \\"normal\\",\\n \\"ActionType\\": \\"js\\"\\n}","type":"json"}]', ], 'SetCertificate' => [ 'summary' => 'Configures whether to enable the certificate feature for a site and updates certificate information.', 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239628', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'formData', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The certificate name. This parameter is required when Type is set to upload.', 'type' => 'string', 'required' => false, 'maxLength' => 128, 'example' => 'yourCertName', 'title' => ''], ], [ 'name' => 'CasId', 'in' => 'formData', 'schema' => ['description' => 'The cloud certificate ID. This parameter is required when Type is set to cas.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '30000478'."\n", 'title' => ''], ], [ 'name' => 'Type', 'in' => 'formData', 'schema' => [ 'description' => 'The certificate type. Valid values:'."\n" ."\n" .'- **cas**: certificate from SSL Certificates Service.'."\n" ."\n" .'- **upload**: custom uploaded certificate.'."\n" ."\n" .'- **keyless**: keyless certificate.', 'enumValueTitles' => ['cas' => 'Certificate from SSL Certificates Service.', 'upload' => 'Custom uploaded certificate.', 'keyless' => 'Keyless certificate.'], 'type' => 'string', 'required' => true, 'enum' => ['cas', 'upload', 'keyless'], 'example' => 'cas', 'title' => '', ], ], [ 'name' => 'Certificate', 'in' => 'formData', 'schema' => ['description' => 'The certificate content. This parameter is required when Type is set to upload.', 'type' => 'string', 'required' => false, 'example' => '-----BEGIN CERTIFICATE-----', 'title' => ''], ], [ 'name' => 'PrivateKey', 'in' => 'formData', 'schema' => ['description' => 'The certificate private key. This parameter is required when Type is set to upload.', 'type' => 'string', 'required' => false, 'example' => '-----BEGIN PRIVATE KEY-----', 'title' => ''], ], [ 'name' => 'Region', 'in' => 'formData', 'schema' => ['description' => 'The region. This parameter is required when Type is set to cas. Valid values:'."\n" ."\n" .'- China site accounts: cn-hangzhou.'."\n" ."\n" .'- International site accounts: ap-southeast-1.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'formData', 'schema' => ['description' => 'The certificate ID. Certificates of the free type (created by calling the ApplyCertificate operation) are not supported. Certificates of the cas and upload types are supported.', 'type' => 'string', 'required' => false, 'example' => 'babae7c40fef412d887688b91c9e****', 'title' => ''], ], [ 'name' => 'KeyServerId', 'in' => 'query', 'schema' => ['description' => 'The keyless server ID. This parameter takes effect only when Type is set to keyless.', 'type' => 'string', 'required' => false, 'example' => '1233112****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'A666D44F-19D6-490E-97CF-1A64AB962C57'], 'Id' => ['description' => 'The certificate ID.', 'type' => 'string', 'example' => 'babae7c40fef412d887688b91c9e****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Certificate.StatusError', 'errorMessage' => 'The status of the certificate is invalid.', 'description' => 'The specified certificate status is invalid.'], ['errorCode' => 'Certificate.Duplicated', 'errorMessage' => 'The certificate name already exists.', 'description' => 'The certificate is duplicated.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidCertificate.NotFound', 'errorMessage' => 'The specified certificate does not match the website. Check the validity of the certificate and try again.', 'description' => 'The specified certificate does not match the website. Check the validity of the certificate and try again.'], ['errorCode' => 'InvalidSSLPub', 'errorMessage' => 'The specified Certificate is invalid.', 'description' => 'The value specified for the Certificate parameter is invalid.'], ['errorCode' => 'InvalidSSLPri', 'errorMessage' => 'The specified PrivateKey is invalid.', 'description' => 'The value specified for the PrivateKey parameter is invalid.'], ['errorCode' => 'CasId.MissingParameter', 'errorMessage' => 'The CasId parameter is required.', 'description' => 'The CasId parameter is missing.'], ['errorCode' => 'PrivateKey.MissingParameter', 'errorMessage' => 'The PrivateKey parameter is required.', 'description' => 'Missing PrivateKey parameter.'], ['errorCode' => 'Certificate.MissingParameter', 'errorMessage' => 'The Certificate parameter is required.', 'description' => 'Missing Certificate parameter.'], ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.', 'description' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'UpdateFreeCertificate.NotSupport', 'errorMessage' => 'The free certificate does not support the update operation.', 'description' => 'The free certificate does not support the update operation.'], ['errorCode' => 'CertificateDomainNotMatchSite', 'errorMessage' => 'The domain name in the specified certificate does not match the site.', 'description' => 'The domain name in the certificate does not match the current site.'], ['errorCode' => 'CertificateNotMatchPrivateKey', 'errorMessage' => 'The specified certificate does not match the private key.', 'description' => 'The specified certificate and private key do not match.'], ['errorCode' => 'CertQuotaCheckFailed', 'errorMessage' => 'The custom certificate quota verification failed. The number of uploaded certificates exceeds the upper limit allowed for the plan.', 'description' => 'The custom certificate quota verification failed. The number of uploaded certificates exceeds the upper limit allowed for the plan.'], ], 404 => [ ['errorCode' => 'Certificate.NotFound', 'errorMessage' => 'The specified certificate does not exist.', 'description' => 'The specified certificate does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A666D44F-19D6-490E-97CF-1A64AB962C57\\",\\n \\"Id\\": \\"babae7c40fef412d887688b91c9e****\\"\\n}","type":"json"}]', 'title' => 'Configure site certificate', 'changeSet' => [ ['createdAt' => '2025-02-13T01:37:33.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-01-09T05:44:49.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-10-15T03:45:00.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-10-03T13:48:40.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T09:53:46.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-06T06:59:01.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SetCertificate'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:SetCertificate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'SetClientCaCertificateHostnames' => [ 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239185', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'Hostnames', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'type' => 'array', 'items' => ['description' => 'A hostname.', 'type' => 'string', 'required' => false, 'example' => 'www.example.com ', 'title' => ''], 'required' => true, 'description' => 'A list of hostnames.', 'title' => '', 'example' => '', ], ], [ 'name' => 'Id', 'in' => 'formData', 'schema' => ['description' => 'The client CA certificate ID.', 'type' => 'string', 'required' => false, 'example' => 'babaabcd****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The site ID. You can obtain the ID by calling the [ListSites](~~ListSites~~) API.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456****', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], 'Id' => ['description' => 'The client CA certificate ID.', 'type' => 'string', 'example' => 'babaabcd****', 'title' => ''], 'Hostnames' => [ 'type' => 'array', 'items' => ['description' => 'A hostname.', 'type' => 'string', 'example' => 'www.example.com', 'title' => ''], 'description' => 'A list of bound hostnames.', 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '34DCBC8A-****-****-****-6DAA11D7DDBD', 'title' => ''], ], 'title' => '', 'description' => 'The response object.', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'QuotaCheckFailed.Function', 'errorMessage' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.', 'description' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'Certificate.NotFound', 'errorMessage' => 'The specified certificate does not exist.', 'description' => 'The specified certificate does not exist.'], ], ], 'title' => 'SetClientCaCertificateHostnames', 'summary' => 'Binds hostnames to a specified client CA certificate. If you do not specify a certificate, the hostnames are bound to the ESA CA certificate.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SiteId\\": 0,\\n \\"SiteName\\": \\"example.com\\",\\n \\"Id\\": \\"babaabcd****\\",\\n \\"Hostnames\\": [\\n \\"www.example.com\\"\\n ],\\n \\"RequestId\\": \\"34DCBC8A-****-****-****-6DAA11D7DDBD\\"\\n}","type":"json"}]', ], 'SetClientCertificateHostnames' => [ 'summary' => 'Associates domain names with a specified client CA certificate. If no certificate is specified, the domain names are associated with the ESA CA certificate. This API is deprecated. Use SetClientCaCertificateHostnames instead.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239185', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'Hostnames', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'The list of domain names to associate.', 'type' => 'array', 'items' => ['description' => 'The domain name.', 'type' => 'string', 'required' => false, 'example' => 'www.example.com', 'title' => ''], 'required' => true, 'title' => '', 'example' => '', ], ], [ 'name' => 'Id', 'in' => 'formData', 'schema' => ['description' => 'The client CA certificate ID.', 'type' => 'string', 'required' => false, 'example' => 'babab9db65ee5efcca9f3d41d4b50d**', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456789****', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com ', 'title' => ''], 'Id' => ['description' => 'The client CA certificate ID.', 'type' => 'string', 'example' => 'babab9db65ee5efcca9f3d41d4b50d**', 'title' => ''], 'Hostnames' => [ 'description' => 'The list of domain names to associate.', 'type' => 'array', 'items' => ['description' => 'The domain name.', 'type' => 'string', 'example' => 'www.example.com', 'title' => ''], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'ET5BF670-09D5-4D0B-BEBY-D96A2A528000', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'QuotaCheckFailed.Function', 'errorMessage' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.', 'description' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], [ ['errorCode' => 'Certificate.NotFound', 'errorMessage' => 'The specified certificate does not exist.', 'description' => 'The specified certificate does not exist.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SiteId\\": 0,\\n \\"SiteName\\": \\"example.com \\",\\n \\"Id\\": \\"babab9db65ee5efcca9f3d41d4b50d**\\",\\n \\"Hostnames\\": [\\n \\"www.example.com\\"\\n ],\\n \\"RequestId\\": \\"ET5BF670-09D5-4D0B-BEBY-D96A2A528000\\"\\n}","type":"json"}]', 'title' => 'Set client CA certificate hostname bindings', 'requestParamsDescription' => 'The Id parameter value must be the `Id` field value of each certificate record in the ListClientCaCertificates response, or the `CACertificateId` field value of each certificate record in the ListClientCertificates response, not the `Id` field. When associating domain names with an ESA CA certificate, you do not need to specify the certificate Id.', 'changeSet' => [ ['createdAt' => '2025-03-13T09:10:44.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SetClientCertificateHostnames'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:SetClientCertificateHostnames', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'SetDdosMaxBurstGbps' => [ 'summary' => 'Sets the maximum burstable protection bandwidth for a DDoS instance in mainland China.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '254004', 'abilityTreeNodes' => ['FEATUREdcdn5DYCZJ'], ], 'parameters' => [ [ 'name' => 'InstanceId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The ID of the instance. You can call the [ListUserRatePlanInstances](~~2852398~~) operation to obtain the instance ID.', 'type' => 'string', 'required' => true, 'example' => 'esa-site-ads11w', 'title' => ''], ], [ 'name' => 'MaxBurstGbps', 'in' => 'query', 'schema' => ['description' => 'The maximum burstable protection bandwidth for the DDoS instance in mainland China. The unit is Gbps.', 'type' => 'string', 'required' => true, 'example' => '300', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request. Alibaba Cloud generates this unique ID for each request. Use the ID to troubleshoot issues.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'NoPermission', 'errorMessage' => 'You do not have permissions to access or operate on the resource.Contact your account administrator to attach the AliyunESAFullAccess policy to the current user.', 'description' => 'You do not have permissions to access or operate on the resource.Contact your account administrator to attach the AliyunESAFullAccess policy to the current user.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'ConfExceedLimit', 'errorMessage' => 'The number of function configurations exceeds the limit. Please check the interface document to see the number of configurations that can be supported by a single function.', 'description' => 'The number of configuration items for the current function has exceeded the upper limit set by the system.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'PlanNotSupportCnDdos', 'errorMessage' => 'The plan corresponding to the current instance does not include ddos platform protection in mainland China, so the DDOS elastic protection value cannot be set. Please upgrade the package and try again.', 'description' => 'The plan corresponding to the current instance does not include ddos platform protection in mainland China, so the DDOS elastic protection value cannot be set. Please upgrade the package and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'SetDdosMaxBurstGbps', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\"\\n}","type":"json"}]', ], 'SetHttpDDoSAttackIntelligentProtection' => [ 'summary' => 'This operation configures the intelligent HTTP DDoS protection settings for a site.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239326', 'abilityTreeNodes' => ['FEATUREdcdnO1ZP9O'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The ID of the site. You can obtain the site ID by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'minimum' => '1', 'example' => '123456****', 'title' => ''], ], [ 'name' => 'AiMode', 'in' => 'query', 'schema' => [ 'description' => 'The mode for the intelligent HTTP DDoS protection feature. Valid values:'."\n" ."\n" .'- **observe**: The system generates warnings for attack traffic but does not block it.'."\n" ."\n" .'- **defense**: The system blocks detected attack traffic.', 'type' => 'string', 'required' => true, 'enum' => ['observe', 'defense'], 'example' => 'defense', 'title' => '', ], ], [ 'name' => 'AiTemplate', 'in' => 'query', 'schema' => [ 'description' => 'The sensitivity level for the intelligent HTTP DDoS protection feature. Valid values:'."\n" ."\n" .'- **level0**: very loose'."\n" ."\n" .'- **level30**: loose'."\n" ."\n" .'- **level60**: normal'."\n" ."\n" .'- **level90**: strict', 'type' => 'string', 'required' => true, 'enum' => ['level30', 'level60', 'level90', 'level0'], 'example' => 'level60', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response object.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '156A6B-677B1A-4297B7-9187B7-2B44792'], 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456****', 'title' => ''], 'AiMode' => ['description' => 'The protection mode for the intelligent HTTP DDoS protection feature. Valid values:'."\n" ."\n" .'- **observe**: The system generates warnings for attack traffic but does not block it.'."\n" ."\n" .'- **defense**: The system blocks detected attack traffic.', 'type' => 'string', 'example' => 'defense', 'title' => ''], 'AiTemplate' => ['description' => 'The sensitivity level for the intelligent HTTP DDoS protection feature. Valid values:'."\n" ."\n" .'- **level0**: very loose'."\n" ."\n" .'- **level30**: loose'."\n" ."\n" .'- **level60**: normal'."\n" ."\n" .'- **level90**: strict', 'type' => 'string', 'example' => 'level60', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'ErrSiteIdNoteEnterprise', 'errorMessage' => 'This feature is unavailable because your website is not associated with an Enterprise plan. Upgrade your plan to Enterprise.', 'description' => 'This feature is unavailable because your website is not associated with an Enterprise plan. Upgrade your plan to Enterprise.'], ], 403 => [ ['errorCode' => 'SiteIdDDoSVersionCheckFailed', 'errorMessage' => 'SiteId DDoS version check failed.', 'description' => 'Failed to check the DDoS version corresponding to the site.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"156A6B-677B1A-4297B7-9187B7-2B44792\\",\\n \\"SiteId\\": 0,\\n \\"AiMode\\": \\"defense\\",\\n \\"AiTemplate\\": \\"level60\\"\\n}","type":"json"}]', 'title' => 'SetHttpDDoSAttackIntelligentProtection', 'changeSet' => [ ['createdAt' => '2024-11-19T03:35:34.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SetHttpDDoSAttackIntelligentProtection'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:SetHttpDDoSAttackIntelligentProtection', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'SetHttpDDoSAttackProtection' => [ 'summary' => 'Configures HTTP DDoS attack protection for a website.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239030', 'abilityTreeNodes' => ['FEATUREdcdn5DYCZJ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'minimum' => '1', 'example' => '123456****', 'title' => ''], ], [ 'name' => 'GlobalMode', 'in' => 'query', 'schema' => [ 'description' => 'The level of HTTP DDoS attack protection. Valid values:'."\n" ."\n" .'* **very weak**: very loose.'."\n" .'* **weak**: loose.'."\n" .'* **default**: normal.'."\n" .'* **hard**: strict.'."\n", 'type' => 'string', 'required' => true, 'example' => 'default', 'enum' => ['weak', 'default', 'hard', 'very weak'], 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'C370DAF1-C838-4288-A1A0-9A87633D248E'], 'SiteId' => ['description' => 'The website ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '123456****', 'title' => ''], 'GlobalMode' => ['description' => 'The level of HTTP DDoS attack protection.'."\n", 'type' => 'string', 'example' => 'default'."\n", 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'ErrSiteIdNoteEnterprise', 'errorMessage' => 'This feature is unavailable because your website is not associated with an Enterprise plan. Upgrade your plan to Enterprise.', 'description' => 'This feature is unavailable because your website is not associated with an Enterprise plan. Upgrade your plan to Enterprise.'], ], 403 => [ ['errorCode' => 'SiteIdDDoSVersionCheckFailed', 'errorMessage' => 'SiteId DDoS version check failed.', 'description' => 'Failed to check the DDoS version corresponding to the site.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C370DAF1-C838-4288-A1A0-9A87633D248E\\",\\n \\"SiteId\\": 0,\\n \\"GlobalMode\\": \\"default\\\\n\\"\\n}","type":"json"}]', 'title' => 'SetHttpDDoSAttackProtection', 'changeSet' => [ ['createdAt' => '2024-11-19T03:35:34.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SetHttpDDoSAttackProtection'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:SetHttpDDoSAttackProtection', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'SetHttpDDoSAttackRuleAction' => [ 'summary' => 'Set the Protection Action for Specified HTTP DDoS Attack Rules', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '263689', 'abilityTreeNodes' => ['FEATUREdcdn5DYCZJ'], 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID, which can be obtained by calling the [ListSites](~~2850189~~) API.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'minimum' => '1', 'example' => '123456****', 'title' => ''], ], [ 'name' => 'RuleIds', 'in' => 'query', 'schema' => ['description' => 'List of rule IDs to be operated on, separated by English commas (,).'."\n" .'> You can call the [DescribeHttpDDoSAttackRules](~~DescribeHttpDDoSAttackRules~~) API to get this parameter.', 'type' => 'string', 'required' => true, 'minLength' => 1, 'example' => '100000', 'title' => ''], ], [ 'name' => 'RuleAction', 'in' => 'query', 'schema' => [ 'description' => 'Rule action, with values:'."\n" ."\n" .'- **deny**: Block.'."\n" ."\n" .'- **js**: JS Verification.'."\n" ."\n" .'- **observe**: Observe.', 'type' => 'string', 'required' => true, 'enum' => ['deny', 'js', 'observe'], 'example' => 'js', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Response Schema', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID', 'type' => 'string', 'example' => 'C370DAF1-C838-4288-A1A0-9A87633D2***'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'The specified SiteId is invalid.', 'description' => 'The specified SiteId is invalid.Check parameter SiteId and try again.'], ['errorCode' => 'ErrSiteIdNoteEnterprise', 'errorMessage' => 'This feature is unavailable because your website is not associated with an Enterprise plan. Upgrade your plan to Enterprise.', 'description' => 'This feature is unavailable because your website is not associated with an Enterprise plan. Upgrade your plan to Enterprise.'], ], 403 => [ ['errorCode' => 'SiteIdDDoSVersionCheckFailed', 'errorMessage' => 'SiteId DDoS version check failed.', 'description' => 'Failed to check the DDoS version corresponding to the site.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'title' => 'Set the Protection Action for Specified HTTP DDoS Attack Rules', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:SetHttpDDoSAttackRuleAction', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C370DAF1-C838-4288-A1A0-9A87633D2***\\"\\n}","type":"json"}]', ], 'SetHttpDDoSAttackRuleStatus' => [ 'summary' => 'Set the Protection Status of Specified HTTP DDoS Attack Rules', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '263688', 'abilityTreeNodes' => ['FEATUREdcdn5DYCZJ'], 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID, which can be obtained by calling the [ListSites](~~2850189~~) interface.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'minimum' => '1', 'example' => '123456****', 'title' => ''], ], [ 'name' => 'RuleIds', 'in' => 'query', 'schema' => ['description' => 'List of rule IDs to be operated on, separated by English commas (,).'."\n" .'> You can call the [DescribeHttpDDoSAttackRules](~~DescribeHttpDDoSAttackRules~~) interface to get this parameter.', 'type' => 'string', 'required' => true, 'minLength' => 1, 'example' => '87570', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => [ 'description' => 'Rule status'."\n" ."\n" .'- **on**: Enable.'."\n" .'- **off**: Disable.', 'type' => 'string', 'required' => true, 'enum' => ['on', 'off'], 'example' => 'on', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Response schema', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'ID of the request', 'type' => 'string', 'example' => 'F7B84CF8-F8A4-53F8-9B91-2643FD72042B'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'The specified SiteId is invalid.', 'description' => 'The specified SiteId is invalid.Check parameter SiteId and try again.'], ['errorCode' => 'ErrSiteIdNoteEnterprise', 'errorMessage' => 'This feature is unavailable because your website is not associated with an Enterprise plan. Upgrade your plan to Enterprise.', 'description' => 'This feature is unavailable because your website is not associated with an Enterprise plan. Upgrade your plan to Enterprise.'], ], 403 => [ ['errorCode' => 'SiteIdDDoSVersionCheckFailed', 'errorMessage' => 'SiteId DDoS version check failed.', 'description' => 'Failed to check the DDoS version corresponding to the site.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'title' => 'Set the Protection Status of Specified HTTP DDoS Attack Rules', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:SetHttpDDoSAttackRuleStatus', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F7B84CF8-F8A4-53F8-9B91-2643FD72042B\\"\\n}","type":"json"}]', ], 'SetKeylessServer' => [ 'summary' => 'Creates or updates a keyless server configuration.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239628', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can obtain this ID by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'Host', 'in' => 'formData', 'schema' => ['description' => 'The hostname of the keyless server. The value can be a domain name or an IP address.', 'type' => 'string', 'required' => true, 'maxLength' => 128, 'example' => 'keyless.example.com', 'title' => ''], ], [ 'name' => 'Port', 'in' => 'formData', 'schema' => ['description' => 'The keyless server port.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '443', 'title' => ''], ], [ 'name' => 'Verify', 'in' => 'formData', 'schema' => ['description' => 'Specifies whether to verify the server certificate of the keyless server. Default: false.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'CaCertificate', 'in' => 'formData', 'schema' => ['description' => 'The CA certificate used to verify the server certificate of the keyless server. This parameter applies only when `Verify` is set to `true`.', 'type' => 'string', 'required' => false, 'example' => '-----BEGIN CERTIFICATE-----****', 'title' => ''], ], [ 'name' => 'ClientCertificate', 'in' => 'formData', 'schema' => ['description' => 'The client certificate. This parameter must be used with the `ClientPrivateKey` parameter.', 'type' => 'string', 'required' => false, 'example' => '-----BEGIN CERTIFICATE-----****', 'title' => ''], ], [ 'name' => 'ClientPrivateKey', 'in' => 'formData', 'schema' => ['description' => 'The client private key. This parameter must be used with the `ClientCertificate` parameter.', 'type' => 'string', 'required' => false, 'example' => '-----BEGIN RSA PRIVATE KEY-----****', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'formData', 'schema' => ['description' => 'The keyless server ID.', 'type' => 'string', 'required' => false, 'example' => 'baba39055622c008b90285a8838e****', 'title' => ''], ], [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The keyless server name.', 'type' => 'string', 'required' => true, 'example' => 'example', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '34DCBC8A-****-****-****-6DAA11D7DDBD'], 'Id' => ['description' => 'The keyless server ID.', 'type' => 'string', 'example' => 'babaabcd****', 'title' => ''], 'SiteId' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456****', 'title' => ''], 'SiteName' => ['description' => 'The site name.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], ], 'title' => '', 'description' => 'The response object.', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Certificate.Duplicated', 'errorMessage' => 'The certificate name already exists.', 'description' => 'The certificate is duplicated.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidCertificate.NotFound', 'errorMessage' => 'The specified certificate does not match the website. Check the validity of the certificate and try again.', 'description' => 'The specified certificate does not match the website. Check the validity of the certificate and try again.'], ['errorCode' => 'PrivateKey.MissingParameter', 'errorMessage' => 'The PrivateKey parameter is required.', 'description' => 'Missing PrivateKey parameter.'], ['errorCode' => 'Certificate.MissingParameter', 'errorMessage' => 'The Certificate parameter is required.', 'description' => 'Missing Certificate parameter.'], ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.', 'description' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.'], ['errorCode' => 'InvalidSSLPub', 'errorMessage' => 'The specified Certificate is invalid.', 'description' => 'The value specified for the Certificate parameter is invalid.'], ['errorCode' => 'InvalidSSLPri', 'errorMessage' => 'The specified PrivateKey is invalid.', 'description' => 'The value specified for the PrivateKey parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'UpdateFreeCertificate.NotSupport', 'errorMessage' => 'The free certificate does not support the update operation.', 'description' => 'The free certificate does not support the update operation.'], ['errorCode' => 'CertificateDomainNotMatchSite', 'errorMessage' => 'The domain name in the specified certificate does not match the site.', 'description' => 'The domain name in the certificate does not match the current site.'], ['errorCode' => 'CertificateNotMatchPrivateKey', 'errorMessage' => 'The specified certificate does not match the private key.', 'description' => 'The specified certificate and private key do not match.'], ['errorCode' => 'CertQuotaCheckFailed', 'errorMessage' => 'The custom certificate quota verification failed. The number of uploaded certificates exceeds the upper limit allowed for the plan.', 'description' => 'The custom certificate quota verification failed. The number of uploaded certificates exceeds the upper limit allowed for the plan.'], ], 404 => [ ['errorCode' => 'Certificate.NotFound', 'errorMessage' => 'The specified certificate does not exist.', 'description' => 'The specified certificate does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'SetKeylessServer', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"34DCBC8A-****-****-****-6DAA11D7DDBD\\",\\n \\"Id\\": \\"babaabcd****\\",\\n \\"SiteId\\": 0,\\n \\"SiteName\\": \\"example.com\\"\\n}","type":"json"}]', ], 'SetOriginClientCertificateHostnames' => [ 'summary' => 'Associates specified hostnames with an origin client certificate.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '261756', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'formData', 'schema' => ['description' => 'The ID of the site.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'formData', 'schema' => ['description' => 'The ID of the certificate.', 'type' => 'string', 'required' => true, 'example' => 'babaabcd****', 'title' => ''], ], [ 'name' => 'Hostnames', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'The hostnames to associate with the certificate.', 'type' => 'array', 'items' => ['description' => 'A hostname.', 'type' => 'string', 'required' => false, 'example' => 'www.example.com', 'title' => ''], 'required' => true, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74', 'title' => ''], 'Id' => ['description' => 'The ID of the certificate.', 'type' => 'string', 'example' => 'babaabcd****', 'title' => ''], 'SiteName' => ['description' => 'The name of the site.', 'type' => 'string', 'example' => 'example.com', 'title' => ''], 'Hostnames' => [ 'description' => 'The hostnames associated with the certificate.', 'type' => 'array', 'items' => ['description' => 'A hostname in the list.', 'type' => 'string', 'example' => 'www.example.com', 'title' => ''], 'title' => '', 'example' => '', ], 'SiteId' => ['description' => 'The ID of the site.', 'type' => 'integer', 'format' => 'int64', 'example' => '123456789****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.', 'description' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'QuotaCheckFailed.Function', 'errorMessage' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.', 'description' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'Id.MissingParameter', 'errorMessage' => 'The parameter Id is required.', 'description' => 'The required parameter Id is missing.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Attach domain names to the origin fetch client certificate at the domain name granularity.', 'changeSet' => [ ['createdAt' => '2025-03-31T09:21:09.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SetOriginClientCertificateHostnames'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:SetOriginClientCertificateHostnames', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\",\\n \\"Id\\": \\"babaabcd****\\",\\n \\"SiteName\\": \\"example.com\\",\\n \\"Hostnames\\": [\\n \\"www.example.com\\"\\n ],\\n \\"SiteId\\": 0\\n}","type":"json"}]', ], 'StartScheduledPreloadExecution' => [ 'summary' => 'Starts a scheduled prefetch based on the prefetch plan ID.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239332', 'abilityTreeNodes' => ['FEATUREdcdn4TTNAL'], ], 'parameters' => [ [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The prefetch plan ID.', 'type' => 'string', 'required' => true, 'example' => '665d3b48621bccf3fe29e1a7', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '65C66B7B-671A-8297-9187-2R5477247B76'], 'Id' => ['description' => 'The prefetch plan ID.', 'type' => 'string', 'example' => '665d3b48621bccf3fe29e1a7', 'title' => ''], 'StartTime' => ['description' => 'The start time of the scheduled prefetch plan, in ISO 8601 format (such as 2024-01-01T00:00:00+Z).', 'type' => 'string', 'example' => '2024-05-31T17:10:48.849+08:00', 'title' => ''], 'EndTime' => ['description' => 'The end time of the scheduled prefetch plan, in ISO 8601 format (such as 2024-01-01T00:00:00+Z).', 'type' => 'string', 'example' => '2024-05-31T18:10:48.849+08:00', 'title' => ''], 'Interval' => ['description' => 'The execution interval between each batch of the scheduled prefetch plan, in seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '60', 'title' => ''], 'SliceLen' => ['description' => 'The number of URLs in each batch of the scheduled prefetch.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'Status' => ['description' => 'The status of the scheduled prefetch plan. Valid values:'."\n" .'- **waiting**: Waiting to be executed.'."\n" .'- **running**: Being executed.'."\n" .'- **finished**: Execution completed.'."\n" .'- **failed**: Execution failed.'."\n" .'- **stopped**: Execution paused.', 'type' => 'string', 'example' => 'waiting', 'title' => ''], 'JobId' => ['description' => 'The prefetch task ID.', 'type' => 'string', 'example' => '665d3af3621bccf3fe29e1a4', 'title' => ''], 'AliUid' => ['description' => 'The Alibaba Cloud account ID.', 'type' => 'string', 'example' => '15685865xxx14622', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'InvalidJob.JobCountOfSiteFull', 'errorMessage' => 'The maximum number of prefetch tasks for the website has been reached. Delete some unwanted ones and try again.', 'description' => 'The maximum number of prefetch tasks for the website has been reached. Delete some unwanted ones and try again.'], ['errorCode' => 'InvalidParameter.ObjectId', 'errorMessage' => 'Invalid task ID or execution plan ID.', 'description' => 'Invalid task ID or execution plan ID.'], ['errorCode' => 'MissingOssUrl', 'errorMessage' => 'OssUrl missing. Specify a valid URL of the OSS object that stores URLs to prefetch.', 'description' => 'OssUrl missing. Specify a valid URL of the OSS object that stores URLs to prefetch.'], ['errorCode' => 'MissingUrlList', 'errorMessage' => 'Enter the URLs you want to prefetch.', 'description' => 'Enter the URLs you want to prefetch.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ], 403 => [ ['errorCode' => 'InvalidUid.PermissionDenied', 'errorMessage' => 'You do not have the permissions to perform this operation on this resource. Check whether the specified UID is correct and has the required permissions.', 'description' => 'You do not have the permissions to perform this operation on this resource. Check whether the specified UID is correct and has the required permissions.'], ], [ ['errorCode' => 'InvalidJob.NotFound', 'errorMessage' => 'The task does not exist. Check whether the task ID is correct or whether the task has been deleted.', 'description' => 'The task does not exist. Check whether the task ID is correct or whether the task has been deleted.'], ['errorCode' => 'LogNotFound', 'errorMessage' => 'Failed to query the log. Check whether the task ID and execution ID are valid.', 'description' => 'Failed to query the log. Check whether the task ID and execution ID are valid.'], ['errorCode' => 'InvalidExecution.NotFound', 'errorMessage' => 'The execution plan does not exist. Check whether the parameters such as the execution ID, start time, and end time are correct.', 'description' => 'The execution plan does not exist. Check whether the parameters such as the execution ID, start time, and end time are correct.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"65C66B7B-671A-8297-9187-2R5477247B76\\",\\n \\"Id\\": \\"665d3b48621bccf3fe29e1a7\\",\\n \\"StartTime\\": \\"2024-05-31T17:10:48.849+08:00\\",\\n \\"EndTime\\": \\"2024-05-31T18:10:48.849+08:00\\",\\n \\"Interval\\": 60,\\n \\"SliceLen\\": 10,\\n \\"Status\\": \\"waiting\\",\\n \\"JobId\\": \\"665d3af3621bccf3fe29e1a4\\",\\n \\"AliUid\\": \\"15685865xxx14622\\"\\n}","type":"json"}]', 'title' => 'Start a single scheduled prefetch plan', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'StartScheduledPreloadExecution'], ], ], 'ramActions' => [], ], 'StopScheduledPreloadExecution' => [ 'summary' => 'Stops a single scheduled preload execution plan based on the preload plan ID.'."\n" .'Prerequisites: (1) This API only takes effect when the execution plan status is running. Execution plans in the waiting or failed status cannot be stopped. (2) Whether an execution plan can reach the running status depends on whether the site it belongs to has completed access verification (site Status=active).', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239019', 'abilityTreeNodes' => ['FEATUREdcdn4TTNAL'], ], 'parameters' => [ [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The preload plan ID, obtained from the SuccessExecutions[].Id field returned by CreateScheduledPreloadExecutions. Before calling this API, you must first create a preload task by calling CreateScheduledPreloadJob, and then create an execution plan by calling CreateScheduledPreloadExecutions.', 'type' => 'string', 'required' => true, 'example' => '66599bd7397885b43804901c', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-A198-72F8FD6DA2FE'], 'Id' => ['description' => 'The preload plan ID.', 'type' => 'string', 'example' => '66599bd7397885b43804901c', 'title' => ''], 'StartTime' => ['description' => 'The start time of the scheduled preload plan, in ISO 8601 format (e.g., 2024-01-01T00:00:00+Z).', 'type' => 'string', 'example' => '2024-05-31T17:10:48.849+08:00', 'title' => ''], 'EndTime' => ['description' => 'The end time of the scheduled preload plan, in ISO 8601 format (e.g., 2024-01-01T00:00:00+Z).', 'type' => 'string', 'example' => '2024-05-31T18:10:48.849+08:00', 'title' => ''], 'Interval' => ['description' => 'The execution interval between batches in the scheduled preload plan, in seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '60', 'title' => ''], 'SliceLen' => ['description' => 'The number of URLs per batch in the scheduled preload.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'Status' => ['description' => 'The status of the scheduled preload plan. Valid values:'."\n" .'- **waiting**: Waiting to be executed.'."\n" .'- **running**: Being executed.'."\n" .'- **finished**: Execution completed.'."\n" .'- **failed**: Execution failed.'."\n" .'- **stopped**: Execution paused.', 'type' => 'string', 'example' => 'stopped', 'title' => ''], 'JobId' => ['description' => 'The preload task ID.', 'type' => 'string', 'example' => '665d3af3621bccf3fe29e1a4', 'title' => ''], 'AliUid' => ['description' => 'The Alibaba Cloud account ID.', 'type' => 'string', 'example' => '15685865xxx14622', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'InvalidJob.JobCountOfSiteFull', 'errorMessage' => 'The maximum number of prefetch tasks for the website has been reached. Delete some unwanted ones and try again.', 'description' => 'The maximum number of prefetch tasks for the website has been reached. Delete some unwanted ones and try again.'], ['errorCode' => 'InvalidParameter.ObjectId', 'errorMessage' => 'Invalid task ID or execution plan ID.', 'description' => 'Invalid task ID or execution plan ID.'], ['errorCode' => 'MissingOssUrl', 'errorMessage' => 'OssUrl missing. Specify a valid URL of the OSS object that stores URLs to prefetch.', 'description' => 'OssUrl missing. Specify a valid URL of the OSS object that stores URLs to prefetch.'], ['errorCode' => 'MissingUrlList', 'errorMessage' => 'Enter the URLs you want to prefetch.', 'description' => 'Enter the URLs you want to prefetch.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ], 403 => [ ['errorCode' => 'InvalidUid.PermissionDenied', 'errorMessage' => 'You do not have the permissions to perform this operation on this resource. Check whether the specified UID is correct and has the required permissions.', 'description' => 'You do not have the permissions to perform this operation on this resource. Check whether the specified UID is correct and has the required permissions.'], ], [ ['errorCode' => 'InvalidJob.NotFound', 'errorMessage' => 'The task does not exist. Check whether the task ID is correct or whether the task has been deleted.', 'description' => 'The task does not exist. Check whether the task ID is correct or whether the task has been deleted.'], ['errorCode' => 'LogNotFound', 'errorMessage' => 'Failed to query the log. Check whether the task ID and execution ID are valid.', 'description' => 'Failed to query the log. Check whether the task ID and execution ID are valid.'], ['errorCode' => 'InvalidExecution.NotFound', 'errorMessage' => 'The execution plan does not exist. Check whether the parameters such as the execution ID, start time, and end time are correct.', 'description' => 'The execution plan does not exist. Check whether the parameters such as the execution ID, start time, and end time are correct.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-A198-72F8FD6DA2FE\\",\\n \\"Id\\": \\"66599bd7397885b43804901c\\",\\n \\"StartTime\\": \\"2024-05-31T17:10:48.849+08:00\\",\\n \\"EndTime\\": \\"2024-05-31T18:10:48.849+08:00\\",\\n \\"Interval\\": 60,\\n \\"SliceLen\\": 10,\\n \\"Status\\": \\"stopped\\",\\n \\"JobId\\": \\"665d3af3621bccf3fe29e1a4\\",\\n \\"AliUid\\": \\"15685865xxx14622\\"\\n}","type":"json"}]', 'title' => 'Stop a Single Scheduled Preload Execution Plan', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'StopScheduledPreloadExecution'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:StopScheduledPreloadExecution', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'SubmitUploadTask' => [ 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239230', 'abilityTreeNodes' => ['FEATUREdcdnBCJPGN', 'FEATUREdcdnRELTJV', 'FEATUREdcdnEWYS3A', 'FEATUREdcdn4TTNAL'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID. You can call the [ListSites](~~ListSites~~) operation to obtain the ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'UploadId', 'in' => 'query', 'schema' => ['description' => 'The ID of the file upload task, which is generated when you call [UploadTask](~~UploadTask~~).'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1593805857882113', 'title' => ''], ], [ 'name' => 'Force', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to refresh resources in the corresponding directory if the requested content is different from that on the origin server. Default value: false. This parameter takes effect for a purge task.'."\n" ."\n" .'* **true**: purges all resources in the directory.'."\n" .'* **false**: refresh the changed resources in the directory.'."\n", 'type' => 'boolean', 'required' => false, 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9'], 'UploadId' => ['description' => 'The ID of the file upload task.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1593805857882113', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingTimeParameter', 'errorMessage' => 'The StartTime and EndTime must be both specified.', 'description' => 'Please provide both a start time and an end time.'], ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'DomainNameOverLimit', 'errorMessage' => 'A maximum of 500 domains are supported for each request.', 'description' => 'Only 500 domain names are supported at a time. Please reduce the number of domain names to request again.'], ['errorCode' => 'InvalidTime', 'errorMessage' => 'The query time cannot exceed the last 3 days.', 'description' => 'The query time cannot exceed the last 3 days.'], ['errorCode' => 'MissingParameter.ObjectType', 'errorMessage' => 'The ObjectType parameter is required if DomainName or ObjectType is specified.', 'description' => 'Specify the ObjectType parameter.'], ['errorCode' => 'InvalidStationParameter', 'errorMessage' => 'The specified Station is invalid.', 'description' => 'The specified node parameter is invalid.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ['errorCode' => 'InvalidTaskId.Malformed', 'errorMessage' => 'The specified taskId is invalid.', 'description' => 'The specified task ID is invalid.'], ['errorCode' => 'InvalidParameters.InvalidUrls', 'errorMessage' => 'The specified urls are invalid.', 'description' => 'The requested URL parameter is invalid.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'SubmitUploadTask', 'summary' => 'Submits a purge or prefetch task after a file that contains resources to be purged or prefetched is uploaded.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"UploadId\\": 1593805857882113\\n}","type":"json"}]', ], 'TagResources' => [ 'summary' => 'Adds one or more tags to resources.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238938', 'abilityTreeNodes' => ['FEATUREdcdn6S5O3S'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The region ID. Valid values:'."\n" ."\n" .'* China site (aliyun.com): cn-hangzhou'."\n" .'* International site (alibabacloud.com): ap-southeast-1'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The resource ID. Enter a website ID or DNS record ID.'."\n", 'type' => 'array', 'items' => ['description' => 'The resource ID. Enter a website ID or DNS record ID.'."\n", 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''], 'required' => true, 'maxItems' => 51, 'title' => '', 'example' => '', ], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags that you want to add to the resource. You can enter up to 20 tags.'."\n", 'type' => 'array', 'items' => [ 'description' => 'The tags that you want to add to the resource. You can enter up to 20 tags.'."\n", 'type' => 'object', 'properties' => [ 'Key' => ['title' => '', 'description' => 'The tag keys.'."\n", 'type' => 'string', 'required' => true, 'example' => 'env'], 'Value' => ['title' => '', 'description' => 'The tag value.'."\n", 'type' => 'string', 'required' => true, 'example' => 'value'], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => true, 'maxItems' => 21, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceType', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The type of the resource. Valid values:'."\n" ."\n" .'* Site: **site**'."\n" .'* DNS records: **record**'."\n", 'type' => 'string', 'required' => true, 'example' => 'site', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '156A6B-677B1A-4297B7-9187B7-2B44792', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ['errorCode' => 'Record.NotFound', 'errorMessage' => 'The record does not exist. Check your configurations and try again.', 'description' => 'The record does not exist. Check your configurations and try again.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"156A6B-677B1A-4297B7-9187B7-2B44792\\"\\n}","type":"json"}]', 'title' => 'TagResources', 'changeSet' => [ ['createdAt' => '2025-08-21T07:40:23.000Z', 'description' => 'Error codes changed, Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'TagResources'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:TagResources', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UntagResources' => [ 'summary' => 'Deletes a resource tag based on a specified resource ID.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239579', 'abilityTreeNodes' => ['FEATUREdcdn6S5O3S'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The ID of the region where the resources reside. Set the value to **cn-hangzhou**.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The ID of resource N. Valid values of N: **1** to **50**.'."\n", 'type' => 'array', 'items' => ['description' => 'The ID of resource N. Valid values of N: **1** to **50**.'."\n", 'type' => 'string', 'required' => false, 'example' => 'example.com', 'title' => ''], 'required' => true, 'maxItems' => 51, 'title' => '', 'example' => '', ], ], [ 'name' => 'TagKey', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The key of tag N to remove from the resource. Valid values of N: **1** to **20**.'."\n", 'type' => 'array', 'items' => ['description' => 'The key of tag N to remove from the resource. Valid values of N: **1** to **20**.'."\n", 'type' => 'string', 'required' => false, 'example' => 'env', 'title' => ''], 'required' => false, 'maxItems' => 21, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceType', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The resource type.'."\n", 'type' => 'string', 'required' => true, 'example' => 'site', 'title' => ''], ], [ 'name' => 'All', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'Specifies whether to remove all tags. Valid values:'."\n" ."\n" .'* **true**'."\n" .'* **false**'."\n" ."\n" .'Default value: **false**.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '85H66C7B-671A-4297-9187-2C4477247A74', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 404 => [ ['errorCode' => 'InvalidResourceId.NotFound', 'errorMessage' => 'The specified resource does not exist or is released.', 'description' => 'The resource does not exist or has been released.'], ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ['errorCode' => 'Record.NotFound', 'errorMessage' => 'The record does not exist. Modify it and try again.', 'description' => 'The record does not exist. Modify it and try again.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'UntagResources', 'changeSet' => [ ['createdAt' => '2025-08-21T07:40:23.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T06:13:40.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UntagResources'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UntagResources', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"85H66C7B-671A-4297-9187-2C4477247A74\\"\\n}","type":"json"}]', ], 'UpdateCacheReserveSpec' => [ 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '249938', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'Instance ID.', 'type' => 'string', 'required' => false, 'example' => 'esa-cr-9tuv*********', 'title' => ''], ], [ 'name' => 'TargetQuotaGb', 'in' => 'query', 'schema' => ['description' => 'Cache requested size, in GB.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1000', 'title' => ''], ], [ 'name' => 'ChargeType', 'in' => 'query', 'schema' => [ 'description' => 'Billing type. Valid values:'."\n" .'- PREPAY'."\n" .'- POSTPAY', 'enumValueTitles' => ['PREPAY' => 'PREPAY', 'POSTPAY' => 'POSTPAY'], 'type' => 'string', 'required' => false, 'example' => 'PREPAY', 'title' => '', ], ], [ 'name' => 'AutoPay', 'in' => 'query', 'schema' => ['description' => 'Automatic payment.', 'type' => 'boolean', 'default' => 'false', 'required' => false, 'example' => 'true', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Response structure.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => '40423A7F-A83D-1E24-B80E-86DD25790759'."\n"], 'OrderId' => ['description' => 'Order ID.', 'type' => 'string', 'example' => '2223332122***'."\n", 'title' => ''], 'InstanceId' => ['description' => 'Instance ID.', 'type' => 'string', 'example' => 'esa-cr-9tuv*********', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'CheckPlanFailed', 'errorMessage' => 'Invalid plan name or code. Check and try again.', 'description' => 'Invalid plan name or code. Check and try again.'], ['errorCode' => 'InvalidSiteICP', 'errorMessage' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.', 'description' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.'], ['errorCode' => 'InvalidSiteName', 'errorMessage' => 'Invalid website name. Check and try again.', 'description' => 'Invalid website name. Check and try again.'], ['errorCode' => 'SYSTEM.NoSpecificCodeFailed', 'errorMessage' => 'Invalid subscription duration. Check and try again.', 'description' => 'Invalid subscription duration. Check and try again.'], ['errorCode' => 'Order.InstanceHasUnpaidOrder', 'errorMessage' => 'You have an unpaid order. Complete the payment or cancel the order first.', 'description' => 'You have an unpaid order. Complete the payment or cancel the order first.'], ['errorCode' => 'InvalidInstance', 'errorMessage' => 'The instance ID is missing or invalid. Make sure that the instance ID is valid and try again.', 'description' => 'The instance ID is missing or invalid. Make sure that the instance ID is valid and try again.'], ['errorCode' => 'InsufficientBalance', 'errorMessage' => 'Your account balance is insufficient.', 'description' => 'Your account balance is insufficient, please recharge before purchasing.'], ['errorCode' => 'InsufficientAvailableQuota', 'errorMessage' => 'Your account balance is insufficient.', 'description' => 'Your account is in arrears, please pay the arrears before purchasing.'], ['errorCode' => 'UpdowngradeConfigNoChange', 'errorMessage' => 'Failed to change the configuration because the new configuration you specified is the same as the current one in use. Specify a correct configuration and try again.', 'description' => 'The configuration for the upgrade or downgrade is not changed.'], ['errorCode' => 'InvalidComponent', 'errorMessage' => 'The order parameters is invalid.', 'description' => 'The order parameters is invalid.'], ['errorCode' => 'RamAuthFailed', 'errorMessage' => 'The sub-account has no operation permission.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Cache Reserve Specification Change', 'summary' => 'Cache Reserve Specification Change', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateCacheReserveSpec'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:UpdateCacheReserveSpec', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"40423A7F-A83D-1E24-B80E-86DD25790759\\\\n\\",\\n \\"OrderId\\": \\"2223332122***\\\\n\\",\\n \\"InstanceId\\": \\"esa-cr-9tuv*********\\"\\n}","type":"json"}]', ], 'UpdateCacheRule' => [ 'summary' => 'Modify the cache configuration.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257965', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The ID of the site. To get this ID, call the [ListSites](~~ListSites~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '35281609698****', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The name of the rule. This parameter is optional for a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => ['description' => 'Controls whether the rule is enabled. This parameter is optional for a global configuration. Valid values:'."\n" ."\n" .'- `on`: Enables the rule.'."\n" ."\n" .'- `off`: Disables the rule.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'A conditional expression that matches user requests. This parameter is optional for a global configuration. Two scenarios are supported:'."\n" ."\n" .'- To match all incoming requests, set the value to `true`.'."\n" ."\n" .'- To match specific requests, set the value to a custom expression, for example, `(http.host eq "video.example.com")`.', 'type' => 'string', 'required' => false, 'example' => '(http.host eq \\"video.example.com\\")', 'title' => ''], ], [ 'name' => 'BypassCache', 'in' => 'query', 'schema' => ['description' => 'The cache bypass mode. Valid values:'."\n" ."\n" .'- `cache_all`: Caches all requests.'."\n" ."\n" .'- `bypass_all`: Bypasses the cache for all requests.', 'type' => 'string', 'required' => false, 'example' => 'cache_all', 'title' => ''], ], [ 'name' => 'BrowserCacheMode', 'in' => 'query', 'schema' => ['description' => 'The browser cache mode. Valid values:'."\n" ."\n" .'- `no_cache`: Does not cache content in the browser.'."\n" ."\n" .'- `follow_origin`: Follows the caching policy of the origin server.'."\n" ."\n" .'- `override_origin`: Overrides the caching policy of the origin server.', 'type' => 'string', 'required' => false, 'example' => 'no_cache', 'title' => ''], ], [ 'name' => 'BrowserCacheTtl', 'in' => 'query', 'schema' => ['description' => 'The browser cache TTL (Time to Live), in seconds.', 'type' => 'string', 'required' => false, 'example' => '300', 'title' => ''], ], [ 'name' => 'EdgeCacheMode', 'in' => 'query', 'schema' => ['description' => 'The cache mode for the edge node. Valid values:'."\n" ."\n" .'- `follow_origin`: Follows the origin server\'s caching policy. If the origin server has no policy, the default policy is used.'."\n" ."\n" .'- `no_cache`: Does not cache content.'."\n" ."\n" .'- `override_origin`: Overrides the caching policy of the origin server.'."\n" ."\n" .'- `follow_origin_bypass`: Follows the caching policy of the origin server, if one exists. Otherwise, content is not cached.'."\n" ."\n" .'- `follow_origin_override`: Follows the caching policy of the origin server, if one exists. Otherwise, a custom cache TTL is used.', 'type' => 'string', 'required' => false, 'example' => 'follow_origin', 'title' => ''], ], [ 'name' => 'EdgeCacheTtl', 'in' => 'query', 'schema' => ['description' => 'The edge node cache TTL (Time to Live), in seconds.', 'type' => 'string', 'required' => false, 'example' => '300', 'title' => ''], ], [ 'name' => 'EdgeStatusCodeCacheTtl', 'in' => 'query', 'schema' => ['description' => 'The cache TTL for specific status codes, in seconds.'."\n" ."\n" .'- You can set the cache TTL for a specific status code. For example, `404=10` caches responses with a 404 status code for 10 seconds.'."\n" ."\n" .'- You can set the cache TTL for `4xx` and `5xx` status code ranges. For example, `4xx=10` caches all responses with a `4xx` status code for 10 seconds.'."\n" ."\n" .'- Separate multiple status code settings with commas.', 'type' => 'string', 'required' => false, 'example' => '5xx=0,404=10', 'title' => ''], ], [ 'name' => 'SortQueryStringForCache', 'in' => 'query', 'schema' => ['description' => 'Controls whether to sort query string parameters when generating a cache key. Valid values:'."\n" ."\n" .'- `on`: Enables sorting.'."\n" ."\n" .'- `off`: Disables sorting.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'QueryStringMode', 'in' => 'query', 'schema' => ['description' => 'Controls how query strings are used to generate a cache key. Valid values:'."\n" ."\n" .'- `ignore_all`: Ignores all query strings.'."\n" ."\n" .'- `exclude_query_string`: Removes specified query strings.'."\n" ."\n" .'- `reserve_all`: Retains all query strings. This is the default value.'."\n" ."\n" .'- `include_query_string`: Retains only specified query strings.', 'type' => 'string', 'required' => false, 'example' => 'ignore_all', 'title' => ''], ], [ 'name' => 'QueryString', 'in' => 'query', 'schema' => ['description' => 'The query string parameters to include in or exclude from the cache key. Separate multiple parameters with spaces.', 'type' => 'string', 'required' => false, 'example' => 'example1 example2', 'title' => ''], ], [ 'name' => 'IncludeHeader', 'in' => 'query', 'schema' => ['description' => 'The headers to include in the cache key. Both the header names (case-insensitive) and their values are used. Separate multiple headers with spaces. Header names can contain the following characters:'."\n" ."\n" .'- Symbols: ! # $ % & \' \\* + - . ^ \\_ | \\~'."\n" ."\n" .'- Digits: 0-9'."\n" ."\n" .'- Lowercase letters: a-z', 'type' => 'string', 'required' => false, 'example' => 'headername1 headername2', 'title' => ''], ], [ 'name' => 'IncludeCookie', 'in' => 'query', 'schema' => ['description' => 'The cookies to include in the cache key. Both the cookie names (case-insensitive) and their values are used. Separate multiple cookies with spaces. Cookie names can contain the following characters:'."\n" ."\n" .'- Symbols: ! # $ % & \' \\* + - . ^ \\_ | \\~'."\n" ."\n" .'- Digits: 0-9'."\n" ."\n" .'- Lowercase letters: a-z', 'type' => 'string', 'required' => false, 'example' => 'cookiename1 cookiename2', 'title' => ''], ], [ 'name' => 'CacheReserveEligibility', 'in' => 'query', 'schema' => ['description' => 'Controls whether requests bypass the cache reserve node during an origin-pull. Valid values:'."\n" ."\n" .'- `bypass_cache_reserve`: The request bypasses the cache reserve.'."\n" ."\n" .'- `eligible_for_cache_reserve`: The request is eligible for cache reserve.', 'type' => 'string', 'required' => false, 'example' => 'bypass_cache_reserve', 'title' => ''], ], [ 'name' => 'CheckPresenceHeader', 'in' => 'query', 'schema' => ['description' => 'The headers to check for. If a specified header is present in the request, its name (case-insensitive) is added to the cache key. Separate multiple headers with spaces. Header names can contain the following characters:'."\n" ."\n" .'- Symbols: ! # $ % & \' \\* + - . ^ \\_ | \\~'."\n" ."\n" .'- Digits: 0-9'."\n" ."\n" .'- Lowercase letters: a-z', 'type' => 'string', 'required' => false, 'example' => 'headername1 headername2', 'title' => ''], ], [ 'name' => 'CheckPresenceCookie', 'in' => 'query', 'schema' => ['description' => 'The cookies to check for. If a specified cookie is present in the request, its name (case-insensitive) is added to the cache key. Separate multiple cookies with spaces. Cookie names can contain the following characters:'."\n" ."\n" .'- Symbols: ! # $ % & \' \\* + - . ^ \\_ | \\~'."\n" ."\n" .'- Digits: 0-9'."\n" ."\n" .'- Lowercase letters: a-z', 'type' => 'string', 'required' => false, 'example' => 'cookiename1 cookiename2', 'title' => ''], ], [ 'name' => 'UserDeviceType', 'in' => 'query', 'schema' => ['description' => 'Controls whether to include the client device type in the cache key. Valid values:'."\n" ."\n" .'- `on`: Enables this feature.'."\n" ."\n" .'- `off`: Disables this feature.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'UserGeo', 'in' => 'query', 'schema' => ['description' => 'Controls whether to include the client\'s geographic location in the cache key. Valid values:'."\n" ."\n" .'- `on`: Enables this feature.'."\n" ."\n" .'- `off`: Disables this feature.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'UserLanguage', 'in' => 'query', 'schema' => ['description' => 'Controls whether to include the client\'s language in the cache key. Valid values:'."\n" ."\n" .'- `on`: Enables this feature.'."\n" ."\n" .'- `off`: Disables this feature.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'ServeStale', 'in' => 'query', 'schema' => ['description' => 'Controls whether to serve stale content. If enabled, an edge node can serve expired content from its cache if the origin server is unavailable. Valid values:'."\n" ."\n" .'- `on`: Enables this feature.'."\n" ."\n" .'- `off`: Disables this feature.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'AdditionalCacheablePorts', 'in' => 'query', 'schema' => ['description' => '- Enables caching on the specified ports.'."\n" ."\n" .'- Valid values: `8880`, `2052`, `2082`, `2086`, `2095`, `2053`, `2083`, `2087`, `2096`'."\n" ."\n" .'- Separate multiple ports with commas.', 'type' => 'string', 'required' => false, 'example' => '8880,2052,2086', 'title' => ''], ], [ 'name' => 'CacheDeceptionArmor', 'in' => 'query', 'schema' => ['description' => 'Defends against Web Cache Deception attacks by caching only validated content. Valid values:'."\n" ."\n" .'- `on`: Enables the feature.'."\n" ."\n" .'- `off`: Disables the feature.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The execution priority of the rule. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PostCache', 'in' => 'query', 'schema' => ['title' => 'Toggle for the Post cache feature.', 'description' => 'Controls whether to cache responses to POST requests.', 'type' => 'string', 'example' => 'on', 'required' => false], ], [ 'name' => 'PostBodySizeLimit', 'in' => 'query', 'schema' => ['description' => 'The maximum size of a request body for POST caching, in KB. The value must be an integer from 1 to 8. If you leave this parameter empty, the default value of 8 KB is used.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PostBodyCacheKey', 'in' => 'query', 'schema' => ['title' => 'Processing pattern for the cache key.', 'description' => 'Controls how the request body is used to generate the cache key for POST requests. Valid values:'."\n" ."\n" .'- `md5`: Calculates the MD5 hash of the request body and includes the hash in the cache key.'."\n" ."\n" .'- `ignore`: Ignores the request body when generating the cache key.', 'type' => 'string', 'example' => 'ignore', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response data.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'QuotaCheckFailed.FunctionArg', 'errorMessage' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.', 'description' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\"\\n}","type":"json"}]', 'title' => 'Modify Site Cache Configuration', 'changeSet' => [ ['createdAt' => '2025-03-27T02:58:48.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateCacheRule'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateCacheRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UpdateCacheTag' => [ 'summary' => 'Modifies the cache tag configuration of your website.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257332', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '5407498413****', 'title' => ''], ], [ 'name' => 'TagName', 'in' => 'query', 'schema' => [ 'description' => 'The name of the custom cache tag.', 'type' => 'string', 'required' => false, 'enum' => [], 'example' => 'example', 'title' => '', ], ], [ 'name' => 'CaseInsensitive', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to ignore case sensitivity. Valid values:'."\n" ."\n" .'- on'."\n" ."\n" .'- off', 'enumValueTitles' => ['off' => 'off', 'on' => 'on'], 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the website configurations. You can use this parameter to specify a version of your website to apply the feature settings. By default, version 0 is used.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-280B-72F8FD6DA2FE'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'UpdateCacheTag', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateCacheTag'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateCacheTag', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-280B-72F8FD6DA2FE\\"\\n}","type":"json"}]', ], 'UpdateCnameFlattening' => [ 'summary' => 'Modifies the CNAME flattening configuration of a website.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257389', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'FlattenMode', 'in' => 'query', 'schema' => [ 'description' => 'The CNAME flattening mode. Valid values:'."\n" ."\n" .'* flatten_all: flattens all CNAMEs.'."\n" .'* flatten_at_root: flattens only the root domain. Default: flatten_at_root'."\n", 'type' => 'string', 'required' => true, 'example' => 'flatten_all', 'enum' => ['flatten_all', 'flatten_at_root'], 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-280B-72F8FD6DA2FE'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-280B-72F8FD6DA2FE\\"\\n}","type":"json"}]', 'title' => 'UpdateCnameFlattening', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateCnameFlattening'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateCnameFlattening', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'write', ], 'UpdateCompressionRule' => [ 'summary' => 'Modifies the compression rule configuration of a site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257664', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '5407498413****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID. You can call the [ListCompressionRules](~~ListCompressionRules~~) operation to obtain the configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '35281609698****', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The rule name. You do not need to set this parameter when adding a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => [ 'description' => 'The rule switch. You do not need to set this parameter when adding a global configuration. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The rule content, which uses a conditional expression to match user requests. You do not need to set this parameter when adding a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: Set the value to true.'."\n" .'- Match specified requests: Set the value to a custom expression, such as (http.host eq \\"video.example.com\\").', 'type' => 'string', 'required' => false, 'example' => '(http.host eq "video.example.com")', 'title' => ''], ], [ 'name' => 'Brotli', 'in' => 'query', 'schema' => [ 'description' => 'Brotli compression. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'example' => 'on', 'required' => false, 'title' => '', ], ], [ 'name' => 'Gzip', 'in' => 'query', 'schema' => [ 'description' => 'Gzip compression. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'example' => 'on', 'required' => false, 'title' => '', ], ], [ 'name' => 'Zstd', 'in' => 'query', 'schema' => [ 'description' => 'Zstd compression. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'example' => 'on', 'required' => false, 'title' => '', ], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CE8EB0DE-3267-53D1-AB83-F36377D63FD0'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'QuotaCheckFailed.FunctionArg', 'errorMessage' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.', 'description' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CE8EB0DE-3267-53D1-AB83-F36377D63FD0\\"\\n}","type":"json"}]', 'title' => 'Modify compression rule configuration', 'changeSet' => [ ['createdAt' => '2025-03-27T02:58:48.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-02-12T02:25:42.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateCompressionRule'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateCompressionRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UpdateCrossBorderOptimization' => [ 'summary' => 'Modifies the China mainland network access optimization configuration for a site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257427', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'Enable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable China mainland network access optimization. This feature is disabled by default. Valid values:'."\n" ."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'required' => true, 'enum' => ['on', 'off'], 'example' => 'on', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-A198-72F8FD6DA2FE'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'CanNotOpenCrossBorderOptimization', 'errorMessage' => 'Can not open cross border optimization.', 'description' => 'Can not open cross border optimization.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-A198-72F8FD6DA2FE\\"\\n}","type":"json"}]', 'title' => 'Modify China mainland network access optimization configuration for a site', 'description' => 'The site plan must be Enterprise Edition or higher to enable China mainland network access optimization.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateCrossBorderOptimization'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateCrossBorderOptimization', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UpdateCustomHostname' => [ 'summary' => 'Updates a SaaS domain name. You can modify the bound record ID, certificate type, and other settings.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239650', 'abilityTreeNodes' => ['FEATUREdcdn4DMKZ4'], ], 'parameters' => [ [ 'name' => 'HostnameId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'The ID of the SaaS domain name. You can obtain the ID by calling the [ListCustomHostnames](~~3018667~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123'], ], [ 'name' => 'RecordId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'The ID of the record to bind. You can obtain the ID by calling the [ListRecords](~~2850265~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1234567890123'], ], [ 'name' => 'SslFlag', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => [ 'title' => '', 'description' => 'The SSL switch. Valid values:'."\n" .'- **on**: Enables SSL.'."\n" .'- **off**: Disables SSL.', 'enumValueTitles' => ['off' => 'Disables SSL.', 'on' => 'Enables SSL.'], 'type' => 'string', 'required' => false, 'enum' => ['on', 'off'], 'example' => 'on', ], ], [ 'name' => 'CertType', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The certificate type. This parameter is required when SslFlag is set to on. Valid values:'."\n" .'- **free**: free certificate.'."\n" .'- **upload**: uploaded certificate.'."\n" .'- **cas**: SSL Certificates Service certificate.', 'enumValueTitles' => ['cas' => 'SSL Certificates Service certificate.', 'upload' => 'Uploaded certificate.', 'free' => 'Free certificate.'], 'type' => 'string', 'enum' => ['free', 'upload', 'cas'], 'required' => false, 'example' => 'cas', ], ], [ 'name' => 'Certificate', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'The certificate content. This parameter is required when CertType is set to upload.', 'type' => 'string', 'required' => false, 'example' => '-----BEGIN CERTIFICATE-----'], ], [ 'name' => 'PrivateKey', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'The certificate private key. This parameter is required when CertType is set to upload.', 'type' => 'string', 'required' => false, 'example' => '-----BEGIN PRIVATE KEY-----'], ], [ 'name' => 'CasId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The ID of the SSL Certificates Service certificate. This parameter is required when CertType is set to cas.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '30000478'."\n"], ], [ 'name' => 'CasRegion', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'The region of the SSL Certificates Service certificate. This parameter is required when CertType is set to cas. Valid values:'."\n" .'- Chinese mainland accounts: cn-hangzhou.'."\n" .'- International accounts: ap-southeast-1.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'NoPermission', 'errorMessage' => 'You do not have permissions to access or operate on the resource.Contact your account administrator to attach the AliyunESAFullAccess policy to the current user.', 'description' => 'You do not have permissions to access or operate on the resource.Contact your account administrator to attach the AliyunESAFullAccess policy to the current user.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'Record.ServiceBusy', 'errorMessage' => 'The record is being configured. Try again later.', 'description' => 'The record is being configured. Try again later.'], ['errorCode' => 'CustomHostname.QueryCasCertFailed', 'errorMessage' => 'Fail to query CAS certificate details. Please try again later.', 'description' => ''], ['errorCode' => 'CustomHostname.CheckQuotaFailed', 'errorMessage' => 'Fail to check quota for custom hostname. Please try again later.', 'description' => ''], ['errorCode' => 'QuotaExceed.CustomHostname', 'errorMessage' => 'The number of custom hostnames exceeds the plan quota. Contact the sales team to increase your quota.', 'description' => 'The number of custom hostnames exceeds the plan quota. Contact the sales team to increase your quota.'], ['errorCode' => 'CustomHostname.OfflineForMultiReason', 'errorMessage' => 'Unable to activate the custom hostname because it is offline due to multiple reasons.', 'description' => ''], ], 404 => [ ['errorCode' => 'CustomHostname.NotFound', 'errorMessage' => 'The custom hostname does not exist. Modify it and try again.', 'description' => 'The custom hostname does not exist. Modify it and try again.'], ['errorCode' => 'CustomHostname.ApplyCertFailed', 'errorMessage' => 'Fail to apply a free cert for custom hostname. Please try again later.', 'description' => ''], ['errorCode' => 'CustomHostname.SetCertFailed', 'errorMessage' => 'Fail to deploy a cert for custom hostname. Please try again later.', 'description' => ''], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'Update a saaS domain name', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateCustomHostname'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateCustomHostname', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\"\\n}","type":"json"}]', ], 'UpdateCustomResponseCodeRule' => [ 'summary' => 'Modifies the response code rewrite configuration of a site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257647', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '437375513708224', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '352816096987136', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The rule name. You do not need to set this parameter when adding a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example'."\n", 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => [ 'description' => 'The rule switch. You do not need to set this parameter when adding a global configuration. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The rule content, which uses a conditional expression to match user requests. You do not need to set this parameter when adding a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: Set the value to true.'."\n" .'- Match specified requests: Set the value to a custom expression, for example: (http.host eq \\"video.example.com\\").', 'type' => 'string', 'required' => false, 'example' => '(http.host eq "video.example.com")', 'title' => ''], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'ReturnCode', 'in' => 'query', 'schema' => ['description' => 'The response code.', 'type' => 'string', 'required' => false, 'example' => '200', 'title' => ''], ], [ 'name' => 'PageId', 'in' => 'query', 'schema' => ['description' => 'The response page.', 'type' => 'string', 'required' => false, 'example' => '0', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The request response result.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'C7518056-E30F-55F8-97DD-004D8030703B'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ['errorCode' => 'VerifyExpressionError', 'errorMessage' => 'Dynamic expression is invalid.', 'description' => 'Dynamic expression is invalid.'], ['errorCode' => 'InvalidValOfDelHeader', 'errorMessage' => 'The delete header operation does not support setting value.', 'description' => 'The delete header operation does not support setting value.'], ['errorCode' => 'SiteFunction.WafPageNotExist', 'errorMessage' => 'The custom page referenced in the custom response code configuration does not exist.', 'description' => 'The custom page referenced in the custom response code configuration does not exist.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'title' => 'Update response code rewrite configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateCustomResponseCodeRule'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateCustomResponseCodeRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C7518056-E30F-55F8-97DD-004D8030703B\\"\\n}","type":"json"}]', ], 'UpdateCustomScenePolicy' => [ 'summary' => 'Updates a specified custom scene policy.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239280', 'abilityTreeNodes' => ['FEATUREdcdnL8HX1L'], ], 'parameters' => [ [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The name of the policy.', 'type' => 'string', 'required' => true, 'maxLength' => 128, 'example' => 'test', 'title' => ''], ], [ 'name' => 'Template', 'in' => 'query', 'schema' => [ 'description' => 'The name of the template. Valid value:'."\n" ."\n" .'- **promotion**: major promotion', 'type' => 'string', 'required' => true, 'enum' => ['promotion'], 'example' => 'promotion', 'title' => '', ], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The start time of the policy.'."\n" ."\n" .'The time must be in UTC and in the ISO 8601 format: yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'required' => true, 'example' => '2023-04-03T16:00:00Z', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end time of the policy.'."\n" ."\n" .'The time must be in UTC and in the ISO 8601 format: yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'required' => true, 'example' => '2023-04-03T19:00:00Z'."\n", 'title' => ''], ], [ 'name' => 'Objects', 'in' => 'query', 'schema' => ['description' => 'The site IDs to associate with the policy. Use a comma (,) to separate multiple IDs.'."\n" ."\n" .'> This parameter is deprecated. We recommend using the `SiteIds` parameter instead. If the `SiteIds` parameter is specified, the `Objects` parameter is ignored. You must specify a value for either the `Objects` or `SiteIds` parameter.', 'type' => 'string', 'required' => false, 'example' => '123456****,123457****'."\n", 'title' => ''], ], [ 'name' => 'PolicyId', 'in' => 'query', 'schema' => ['description' => 'To obtain the policy ID, call the [DescribeCustomScenePolicies](~~2850508~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'minimum' => '1', 'exclusiveMinimum' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'SiteIds', 'in' => 'query', 'schema' => ['description' => 'The site IDs to associate with the policy. Use a comma (,) to separate multiple IDs.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => '123456****,123457****'."\n"], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The data returned by the request.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'], 'Name' => ['description' => 'The name of the policy.', 'type' => 'string', 'example' => 'test', 'title' => ''], 'Template' => ['description' => 'The name of the template. Valid value:'."\n" ."\n" .'- **promotion**: major promotion', 'type' => 'string', 'example' => 'promotion', 'title' => ''], 'StartTime' => ['description' => 'The start time of the policy.'."\n" ."\n" .'The time is in UTC and in the ISO 8601 format: yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2023-04-03T16:00:00Z'."\n", 'title' => ''], 'EndTime' => ['description' => 'The end time of the policy.'."\n" ."\n" .'The time is in UTC and in the ISO 8601 format: yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2023-04-03T19:00:00Z'."\n", 'title' => ''], 'Objects' => [ 'description' => 'A list of associated site IDs.'."\n" ."\n" .'> This parameter is deprecated. We recommend that you use the `SiteIds` parameter instead.', 'type' => 'array', 'items' => ['description' => 'A site ID.', 'type' => 'string', 'example' => '123456****', 'title' => ''], 'title' => '', 'example' => '', ], 'PolicyId' => ['description' => 'The ID of the policy.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'SiteIds' => ['description' => 'The associated site IDs. Multiple IDs are separated by a comma (,).', 'type' => 'string', 'example' => '123456****,123457****'."\n", 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'PolicyNameExist', 'errorMessage' => 'The policy name already exists.', 'description' => 'Policy name already exists.'], ['errorCode' => 'CreateTimeError', 'errorMessage' => 'The effective time of the same policy template cannot overlap.', 'description' => 'The effective time of the same policy template cannot overlap.'], ['errorCode' => 'PolicyNotExist', 'errorMessage' => 'The policy does not exist.', 'description' => 'The policy does not exist. '], ['errorCode' => 'InvalidParameter.ObjectsAndSiteIds', 'errorMessage' => 'The specified Objects and SiteIds variables cannot both be empty strings.', 'description' => 'The specified Objects and SiteIds variables cannot both be empty strings.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'title' => 'Modify a scenario-specific policy ', 'changeSet' => [ ['createdAt' => '2025-06-03T09:31:40.000Z', 'description' => 'Error codes changed, Request parameters changed, Response parameters changed'], ['createdAt' => '2025-03-12T02:36:32.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateCustomScenePolicy'], ], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'esa:UpdateCustomScenePolicy', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\",\\n \\"Name\\": \\"test\\",\\n \\"Template\\": \\"promotion\\",\\n \\"StartTime\\": \\"2023-04-03T16:00:00Z\\\\n\\",\\n \\"EndTime\\": \\"2023-04-03T19:00:00Z\\\\n\\",\\n \\"Objects\\": [\\n \\"123456****\\"\\n ],\\n \\"PolicyId\\": 1,\\n \\"SiteIds\\": \\"123456****,123457****\\\\n\\"\\n}","type":"json"}]', ], 'UpdateDevelopmentMode' => [ 'summary' => 'Modifies the development mode configuration of your website. If you enable Development Mode, all requests bypass caching components on POPs and are redirected to the origin server. This allows clients to retrieve the most recent resources on the origin server.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257405', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'Enable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable Development Mode. Valid values:'."\n" ."\n" .'* on'."\n" .'* off'."\n", 'type' => 'string', 'required' => true, 'enumValueTitles' => ['off' => 'off', 'on' => 'on'], 'example' => 'on', 'enum' => [], 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '65C66B7B-671A-8297-9187-2R5477247B76'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"65C66B7B-671A-8297-9187-2R5477247B76\\"\\n}","type":"json"}]', 'title' => 'UpdateDevelopmentMode', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateDevelopmentMode'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateDevelopmentMode', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'write', ], 'UpdateEdgeContainerAppLogRiver' => [ 'summary' => 'Updates the log collection configuration of an edge container application.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '249447', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'AppId', 'in' => 'query', 'schema' => ['description' => 'The application ID. You can call the [ListEdgeContainerApps](~~2852396~~) operation to obtain the application ID.'."\n" .'>The AppId is in the format of the app- prefix followed by a numeric suffix, with a total length of 20 to 64 characters (example: app-8806886***83794688). Call ListEdgeContainerApps to obtain an existing AppId, or call CreateEdgeContainerApp to create an application first..', 'type' => 'string', 'required' => false, 'example' => 'app-88068867578379****', 'title' => ''], ], [ 'name' => 'Stdout', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable standard output collection for the container.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'Path', 'in' => 'query', 'schema' => ['description' => 'The log file of the container.', 'type' => 'string', 'required' => false, 'example' => '/root/hello.log', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '42DE97FA-45D2-5615-9A31-55D9EC0D7563'], 'Stdout' => ['description' => 'Specifies whether to enable standard output collection for the container.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Path' => ['description' => 'The log file of the container.', 'type' => 'string', 'example' => '/root/hello.log', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Invalid parameter. Check the parameter configuration.', 'description' => 'Invalid parameter. Check the parameter configuration.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"42DE97FA-45D2-5615-9A31-55D9EC0D7563\\",\\n \\"Stdout\\": true,\\n \\"Path\\": \\"/root/hello.log\\"\\n}","type":"json"}]', 'title' => 'Update edge container log collection configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateEdgeContainerAppLogRiver'], ], ], 'ramActions' => [], ], 'UpdateEdgeContainerAppResourceReserve' => [ 'summary' => 'Updates the resource reservation configuration of an edge container application.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '264840', 'abilityTreeNodes' => ['FEATUREdcdnFPSR60'], ], 'parameters' => [ [ 'name' => 'Enable', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable resource reservation.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'Forever', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to permanently enable reservation. Once enabled, you cannot set a reservation end time.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'DurationTime', 'in' => 'query', 'schema' => ['description' => 'The reservation end time. This parameter uses UTC time. To convert from UTC+8, add 8 hours. For example, if the current time is 2006-01-02 06:04:05 in UTC+8, enter "2006-01-02T14:04:05Z".', 'type' => 'string', 'required' => false, 'example' => '2006-01-02T15:04:05Z', 'title' => ''], ], [ 'name' => 'ReserveSet', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The list of reserved resources.', 'type' => 'array', 'items' => [ 'description' => 'The reserved region object.', 'type' => 'object', 'properties' => [ 'Region' => ['description' => 'The region information. For the Chinese mainland, you can specify a major region. For special administrative regions and areas outside China, you can specify a country or region. The following list shows the parameter mappings:'."\n" ."\n" .'Chinese mainland:'."\n" ."\n" .'- East China: huadong'."\n" .'- South China: huanan'."\n" .'- Central China: huazhong'."\n" .'- North China: huabei'."\n" .'- Northwest China: xibei'."\n" .'- Southwest China: xinan'."\n" .'- Northeast China: dongbei'."\n" ."\n" .'Special administrative regions and outside China:'."\n" .'- Taiwan (China): tw'."\n" .'- Macao (China): mo'."\n" .'- Hong Kong (China): hk'."\n" .'- Japan: jp'."\n" .'- United States: us'."\n" .'- Thailand: th'."\n" .'- South Korea: kr'."\n" .'- Russia: ru'."\n" .'- Singapore: sg'."\n" .'- France: fr'."\n" .'- Spain: es'."\n" .'- Italy: it'."\n" .'- Sweden: se'."\n" .'- United Arab Emirates: ae'."\n" .'- Indonesia: id'."\n" .'- Chile: cl'."\n" .'- Philippines: ph'."\n" .'- Malaysia: my'."\n" .'- Vietnam: vn'."\n" .'- Argentina: ar'."\n" .'- Australia: au'."\n" .'- Brazil: br'."\n" .'- Colombia: co'."\n" .'- Germany: de'."\n" .'- United Kingdom: gb'."\n" .'- Peru: pe'."\n" .'- Saudi Arabia: sa'."\n" .'- Netherlands: nl'."\n" .'- South Africa: za.', 'type' => 'string', 'required' => false, 'example' => 'huazhong', 'title' => ''], 'Isp' => ['description' => 'The Internet service provider (ISP). The following ISPs are supported. You do not need to specify an ISP for special administrative regions or areas outside China:'."\n" ."\n" .'- China Mobile: cmcc'."\n" .'- China Telecom: chinanet'."\n" .'- China Unicom: unicom.', 'type' => 'string', 'required' => false, 'example' => 'cmcc', 'title' => ''], 'Replicas' => ['description' => 'The number of container replicas.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'AppId', 'in' => 'query', 'schema' => ['description' => 'The application ID. You can call the [ListEdgeContainerApps](~~ListEdgeContainerApps~~) operation to obtain the application ID.'."\n" .'>The AppId format is the app- prefix followed by a numeric suffix, with a total length of 20 to 64 characters (example: app-8806886***83794688). Call ListEdgeContainerApps to obtain an existing AppId, or call CreateEdgeContainerApp to create an application first..', 'type' => 'string', 'required' => false, 'example' => 'app-88068867578379****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '1AB799CF-562A-5CAF-A99E-4354053D814F'], 'Enable' => ['description' => 'Specifies whether to enable resource reservation.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Forever' => ['description' => 'Indicates whether reservation is permanently enabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'DurationTime' => ['description' => 'The reservation end time. This parameter uses UTC time. To convert from UTC+8, add 8 hours. For example, if the current time is 2006-01-02 06:04:05 in UTC+8, enter "2006-01-02T14:04:05Z".', 'type' => 'string', 'example' => '2006-01-02T15:04:05Z', 'title' => ''], 'ReserveSet' => [ 'description' => 'The list of reserved resources.', 'type' => 'array', 'items' => [ 'description' => 'The reserved region object.', 'type' => 'object', 'properties' => [ 'Region' => ['description' => 'The region information. For the Chinese mainland, you can specify a major region. For special administrative regions and areas outside China, you can specify a country or region. The following list shows the parameter mappings:'."\n" ."\n" .'Chinese mainland:'."\n" ."\n" .'- East China: huadong'."\n" .'- South China: huanan'."\n" .'- Central China: huazhong'."\n" .'- North China: huabei'."\n" .'- Northwest China: xibei'."\n" .'- Southwest China: xinan'."\n" .'- Northeast China: dongbei'."\n" ."\n" .'Special administrative regions and outside China:'."\n" .'- Taiwan (China): tw'."\n" .'- Macao (China): mo'."\n" .'- Hong Kong (China): hk'."\n" .'- Japan: jp'."\n" .'- United States: us'."\n" .'- Thailand: th'."\n" .'- South Korea: kr'."\n" .'- Russia: ru'."\n" .'- Singapore: sg'."\n" .'- France: fr'."\n" .'- Spain: es'."\n" .'- Italy: it'."\n" .'- Sweden: se'."\n" .'- United Arab Emirates: ae'."\n" .'- Indonesia: id'."\n" .'- Chile: cl'."\n" .'- Philippines: ph'."\n" .'- Malaysia: my'."\n" .'- Vietnam: vn'."\n" .'- Argentina: ar'."\n" .'- Australia: au'."\n" .'- Brazil: br'."\n" .'- Colombia: co'."\n" .'- Germany: de'."\n" .'- United Kingdom: gb'."\n" .'- Peru: pe'."\n" .'- Saudi Arabia: sa'."\n" .'- Netherlands: nl'."\n" .'- South Africa: za.', 'type' => 'string', 'example' => 'huazhong', 'title' => ''], 'Isp' => ['description' => 'The Internet service provider (ISP). The following ISPs are supported. You do not need to specify an ISP for special administrative regions or areas outside China:'."\n" ."\n" .'- China Mobile: cmcc'."\n" .'- China Telecom: chinanet'."\n" .'- China Unicom: unicom.', 'type' => 'string', 'example' => 'cmcc', 'title' => ''], 'Replicas' => ['description' => 'The number of container replicas.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Invalid parameter. Check the parameter configuration.', 'description' => 'Invalid parameter. Check the parameter configuration.'], ['errorCode' => 'InvalidParameter.Appid', 'errorMessage' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'description' => 'The format of the input application ID is incorrect. You can use the ListEdgeContainerApps API to obtain the application ID.'], ], 404 => [ ['errorCode' => 'InvalidApp.NotFound', 'errorMessage' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1AB799CF-562A-5CAF-A99E-4354053D814F\\",\\n \\"Enable\\": true,\\n \\"Forever\\": true,\\n \\"DurationTime\\": \\"2006-01-02T15:04:05Z\\",\\n \\"ReserveSet\\": [\\n {\\n \\"Region\\": \\"huazhong\\",\\n \\"Isp\\": \\"cmcc\\",\\n \\"Replicas\\": 1\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Update edge container application resource reservation configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateEdgeContainerAppResourceReserve'], ], ], 'ramActions' => [], ], 'UpdateHttpIncomingRequestHeaderModificationRule' => [ 'summary' => 'Modify HTTP incoming request header configuration.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257647', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID, which can be obtained by calling the [ListSites](~~ListSites~~) API.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '568181195163328', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'Configuration ID. Can be obtained by calling the ListHttpIncomingRequestHeaderModificationRules API.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '419717024278528', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'Rule name. This parameter does not need to be set when adding a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => [ 'description' => 'Rule switch. This parameter does not need to be set when adding a global configuration. Valid values:'."\n" .'- on: Enable.'."\n" .'- off: Disable.', 'enumValueTitles' => ['off' => 'Disable', 'on' => 'Enable'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'Rule content, using conditional expressions to match user requests. This parameter does not need to be set when adding a global configuration. There are two usage scenarios:'."\n" .'- Match all incoming requests: Set the value to true.'."\n" .'- Match specified requests: Set the value to a custom expression, for example: (http.host eq \\"video.example.com\\")', 'type' => 'string', 'required' => false, 'example' => '(http.host eq "video.example.com")', 'title' => ''], ], [ 'name' => 'RequestHeaderModification', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'Modify request headers. Three operation types are supported: add, delete, and modify.', 'type' => 'array', 'items' => [ 'description' => 'Request header modification details.', 'type' => 'object', 'properties' => [ 'Operation' => [ 'description' => 'Operation type. Valid values:'."\n" ."\n" .'- add: Add.'."\n" .'- del: Delete.'."\n" .'- modify: Modify.', 'enumValueTitles' => ['add' => 'Add', 'modify' => 'Modify', 'del' => 'Delete'], 'type' => 'string', 'required' => true, 'enum' => ['add', 'modify', 'del'], 'example' => 'add', 'title' => '', ], 'Name' => ['description' => 'Request header name.', 'type' => 'string', 'required' => true, 'example' => 'headerName', 'title' => ''], 'Value' => ['description' => 'Request header value.', 'type' => 'string', 'required' => false, 'example' => 'headerValue', 'title' => ''], 'Type' => [ 'description' => 'Value type. Valid values:'."\n" .'- static: Static mode.'."\n" .'- dynamic: Dynamic mode.', 'enumValueTitles' => ['static' => 'Static mode', 'dynamic' => 'Dynamic mode'], 'type' => 'string', 'enum' => ['static', 'dynamic'], 'required' => false, 'example' => 'static', 'title' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'Rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Request response result.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'Request ID.', 'type' => 'string', 'example' => 'BFEF3861-8BB7-5B63-954C-6575EA7FB2CA'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ['errorCode' => 'VerifyExpressionError', 'errorMessage' => 'Dynamic expression is invalid.', 'description' => 'Dynamic expression is invalid.'], ['errorCode' => 'InvalidValOfDelHeader', 'errorMessage' => 'The delete header operation does not support setting value.', 'description' => 'The delete header operation does not support setting value.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"BFEF3861-8BB7-5B63-954C-6575EA7FB2CA\\"\\n}","type":"json"}]', 'title' => 'Update HTTP Incoming Request Header Modification Configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateHttpIncomingRequestHeaderModificationRule'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateHttpIncomingRequestHeaderModificationRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UpdateHttpIncomingResponseHeaderModificationRule' => [ 'summary' => 'Updates the HTTP incoming response header modification configuration for a site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257652', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '498607398028944', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID. You can call the ListHttpIncomingResponseHeaderModificationRules operation to obtain the configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '352816096987136', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The rule name. This parameter is not required when adding a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => [ 'description' => 'The rule switch. This parameter is not required when adding a global configuration. Valid values:'."\n" ."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'off', 'on' => 'on'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The rule content, which uses a conditional expression to match user requests. This parameter is not required when adding a global configuration. There are two usage scenarios:'."\n" .'- Match all incoming requests: Set the value to true.'."\n" .'- Match specified requests: Set the value to a custom expression, for example, (http.host eq \\"video.example.com\\").', 'type' => 'string', 'required' => false, 'example' => '(http.host eq "video.example.com")', 'title' => ''], ], [ 'name' => 'ResponseHeaderModification', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The response header modifications. Three operation types are supported: add, delete, and modify.', 'type' => 'array', 'items' => [ 'description' => 'The response header modification details.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The response header name.', 'type' => 'string', 'required' => true, 'example' => 'headerName', 'title' => ''], 'Operation' => [ 'description' => 'The operation type. Valid values:'."\n" ."\n" .'- add: Add.'."\n" .'- del: Delete.'."\n" .'- modify: Modify.', 'enumValueTitles' => ['add' => 'add', 'modify' => 'modify', 'del' => 'del'], 'type' => 'string', 'required' => true, 'enum' => ['add', 'modify', 'del'], 'example' => 'add', 'title' => '', ], 'Value' => ['description' => 'The response header value.', 'type' => 'string', 'required' => false, 'example' => 'headerValue', 'title' => ''], 'Type' => [ 'description' => 'The value type. Valid values:'."\n" .'- static: Static pattern.'."\n" .'- dynamic: Dynamic schema.', 'enumValueTitles' => ['static' => 'static', 'dynamic' => 'dynamic'], 'type' => 'string', 'enum' => ['static', 'dynamic'], 'required' => false, 'example' => 'static', 'title' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ['errorCode' => 'VerifyExpressionError', 'errorMessage' => 'Dynamic expression is invalid.', 'description' => 'Dynamic expression is invalid.'], ['errorCode' => 'InvalidValOfDelHeader', 'errorMessage' => 'The delete header operation does not support setting value.', 'description' => 'The delete header operation does not support setting value.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\"\\n}","type":"json"}]', 'title' => 'Update HTTP incoming response header modification configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateHttpIncomingResponseHeaderModificationRule'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateHttpIncomingResponseHeaderModificationRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UpdateHttpRequestHeaderModificationRule' => [ 'summary' => 'Modify HTTP request header rules.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257647', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'Configuration ID. You can call the [ListHttpRequestHeaderModificationRules](~~2867483~~) operation to obtain the configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '35281609698****', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'Rule name. This parameter is not required when adding a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => [ 'description' => 'Rule switch. This parameter is not required when adding a global configuration. Valid values:'."\n" .'- on: Enable.'."\n" .'- off: Disable.', 'enumValueTitles' => ['off' => 'Disable', 'on' => 'Enable'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'Rule content. Use conditional expressions to match user requests. This parameter is not required when adding a global configuration. There are two usage scenarios:'."\n" .'- Match all incoming requests: Set the value to true.'."\n" .'- Match specified requests: Set the value to a custom expression, for example: (http.host eq "video.example.com").', 'type' => 'string', 'required' => false, 'example' => '(http.host eq "video.example.com")', 'title' => ''], ], [ 'name' => 'RequestHeaderModification', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'Modify request headers. Three operation methods are supported: add, delete, and modify.', 'type' => 'array', 'items' => [ 'description' => 'Details of request header modification.', 'type' => 'object', 'properties' => [ 'Operation' => [ 'description' => 'Operation method. Valid values:'."\n" ."\n" .'- add: Add.'."\n" .'- del: Delete.'."\n" .'- modify: Modify.', 'enumValueTitles' => ['add' => 'Add', 'modify' => 'Modify', 'del' => 'Delete'], 'type' => 'string', 'required' => true, 'enum' => ['add', 'modify', 'del'], 'example' => 'add', 'title' => '', ], 'Name' => ['description' => 'Request header name.', 'type' => 'string', 'required' => true, 'example' => 'headerName', 'title' => ''], 'Value' => ['description' => 'Request header value.', 'type' => 'string', 'required' => false, 'example' => 'headerValue', 'title' => ''], 'Type' => [ 'description' => 'Value type. Valid values:'."\n" .'- static: Static mode.'."\n" .'- dynamic: Dynamic mode.', 'enumValueTitles' => ['static' => 'Static mode', 'dynamic' => 'Dynamic mode'], 'type' => 'string', 'enum' => ['static', 'dynamic'], 'required' => false, 'example' => 'static', 'title' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'Rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Response result.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'Request ID.', 'type' => 'string', 'example' => '2430E05E-1340-5773-B5E1-B743929F46F2'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ['errorCode' => 'VerifyExpressionError', 'errorMessage' => 'Dynamic expression is invalid.', 'description' => 'Dynamic expression is invalid.'], ['errorCode' => 'InvalidValOfDelHeader', 'errorMessage' => 'The delete header operation does not support setting value.', 'description' => 'The delete header operation does not support setting value.'], ['errorCode' => 'QuotaCheckFailed.FunctionArg', 'errorMessage' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.', 'description' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2430E05E-1340-5773-B5E1-B743929F46F2\\"\\n}","type":"json"}]', 'title' => 'Update HTTP Request Header Modification Configuration', 'changeSet' => [ ['createdAt' => '2025-04-10T07:02:38.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2025-03-27T02:58:48.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateHttpRequestHeaderModificationRule'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateHttpRequestHeaderModificationRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UpdateHttpResponseHeaderModificationRule' => [ 'summary' => 'Updates the HTTP response header modification configuration for a site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257652', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~ListSites~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456******', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID. You can call the [ListHttpResponseHeaderModificationRules](~~2867483~~) operation to obtain the configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '35281609698****', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The rule name. This parameter is not required when you add a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable the rule. This parameter is not required when you add a global configuration. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'enumValueTitles' => ['off' => 'off', 'on' => 'on'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The rule content, which uses a conditional expression to match user requests. This parameter is not required when you add a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: Set the value to true.'."\n" .'- Match specified requests: Set the value to a custom expression, such as (http.host eq \\"video.example.com\\").', 'type' => 'string', 'required' => false, 'example' => '(http.host eq "video.example.com")', 'title' => ''], ], [ 'name' => 'ResponseHeaderModification', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The response header modifications. Three operation types are supported: add, delete, and modify.', 'type' => 'array', 'items' => [ 'description' => 'The response header modification details.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The response header name.', 'type' => 'string', 'required' => true, 'example' => 'headerName', 'title' => ''], 'Operation' => [ 'description' => 'The operation type. Valid values:'."\n" ."\n" .'- add: adds a response header.'."\n" .'- del: deletes a response header.'."\n" .'- modify: modifies a response header.', 'enumValueTitles' => ['add' => 'add', 'modify' => 'modify', 'del' => 'del'], 'type' => 'string', 'required' => true, 'enum' => ['add', 'modify', 'del'], 'example' => 'add', 'title' => '', ], 'Value' => ['description' => 'The response header value.', 'type' => 'string', 'required' => false, 'example' => 'headerValue', 'title' => ''], 'Type' => [ 'description' => 'The value type. Valid values:'."\n" .'- static: static pattern.'."\n" .'- dynamic: dynamic schema.', 'enumValueTitles' => ['static' => 'static', 'dynamic' => 'dynamic'], 'type' => 'string', 'enum' => ['static', 'dynamic'], 'required' => false, 'example' => 'static', 'title' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-280B-72F8FD6DA2FE'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ['errorCode' => 'VerifyExpressionError', 'errorMessage' => 'Dynamic expression is invalid.', 'description' => 'Dynamic expression is invalid.'], ['errorCode' => 'InvalidValOfDelHeader', 'errorMessage' => 'The delete header operation does not support setting value.', 'description' => 'The delete header operation does not support setting value.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'QuotaCheckFailed.FunctionArg', 'errorMessage' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.', 'description' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-280B-72F8FD6DA2FE\\"\\n}","type":"json"}]', 'title' => 'Update HTTP response header modification configuration', 'changeSet' => [ ['createdAt' => '2025-04-10T07:02:39.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2025-03-27T02:58:48.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateHttpResponseHeaderModificationRule'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateHttpResponseHeaderModificationRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UpdateHttpsApplicationConfiguration' => [ 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257969', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. To obtain this ID, call the [ListSites](~~ListSites~~) API.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '35281609698****', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The rule name. This parameter is not required for a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable the rule. This parameter is not required for a global configuration. Valid values:'."\n" ."\n" .'- `on`: Enables the rule.'."\n" ."\n" .'- `off`: Disables the rule.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The conditional expression that the rule uses to match requests. This parameter is not required for a global configuration.'."\n" ."\n" .'- To match all incoming requests, set the value to `true`.'."\n" ."\n" .'- To match specific requests, provide a custom expression, such as `(http.host eq "video.example.com")`', 'type' => 'string', 'required' => false, 'example' => '(http.host eq \\"video.example.com\\")', 'title' => ''], ], [ 'name' => 'HttpsForce', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable Force HTTPS. This feature is disabled by default. Valid values:'."\n" ."\n" .'- `on`: Enables Force HTTPS.'."\n" ."\n" .'- `off`: Disables Force HTTPS.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'HttpsForceCode', 'in' => 'query', 'schema' => ['description' => 'The redirect status code for Force HTTPS. Valid values:'."\n" ."\n" .'- `301`'."\n" ."\n" .'- `302`'."\n" ."\n" .'- `307`'."\n" ."\n" .'- `308`', 'type' => 'string', 'required' => false, 'example' => '301', 'title' => ''], ], [ 'name' => 'AltSvc', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable the `Alt-Svc` header. This feature is disabled by default. Valid values:'."\n" ."\n" .'- `on`: Enables the Alt-Svc header.'."\n" ."\n" .'- `off`: Disables the Alt-Svc header.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'AltSvcClear', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to include the `clear` directive in the `Alt-Svc` header. The directive is not included by default. Valid values:'."\n" ."\n" .'- `on`: Includes the directive.'."\n" ."\n" .'- `off`: Does not include the directive.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'AltSvcPersist', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to include the `persist` directive in the `Alt-Svc` header. The directive is not included by default. Valid values:'."\n" ."\n" .'- `on`: Includes the directive.'."\n" ."\n" .'- `off`: Does not include the directive.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'AltSvcMa', 'in' => 'query', 'schema' => ['description' => 'The max-age for the Alt-Svc header, in seconds. The default is 86400.', 'type' => 'string', 'required' => false, 'example' => '86400', 'title' => ''], ], [ 'name' => 'Hsts', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable HTTP Strict Transport Security (HSTS). This feature is disabled by default. Valid values:'."\n" ."\n" .'- `on`: Enables HSTS.'."\n" ."\n" .'- `off`: Disables HSTS.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'HstsMaxAge', 'in' => 'query', 'schema' => ['description' => 'The HSTS max-age in seconds.', 'type' => 'string', 'required' => false, 'example' => '3600', 'title' => ''], ], [ 'name' => 'HstsIncludeSubdomains', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to include subdomains in the HSTS policy. Subdomains are not included by default. Valid values:'."\n" ."\n" .'- `on`: Includes subdomains.'."\n" ."\n" .'- `off`: Does not include subdomains.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'HstsPreload', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable HSTS Preload. HSTS Preload is disabled by default. Valid values:'."\n" ."\n" .'- `on`: Enables Preload.'."\n" ."\n" .'- `off`: Disables Preload.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The execution order of the rule. A lower value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'HttpsSniVerify', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable Server Name Indication (SNI) verification. This feature is disabled by default. Valid values:'."\n" ."\n" .'- `on`: Enables SNI verification.'."\n" ."\n" .'- `off`: Disables SNI verification.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'HttpsNoSniDeny', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to deny TLS handshake requests that do not include an SNI. This feature is disabled by default. Valid values:'."\n" ."\n" .'- `on`: Denies requests without an SNI.'."\n" ."\n" .'- `off`: Allows requests without an SNI.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'HttpsSniWhitelist', 'in' => 'query', 'schema' => ['description' => 'The SNI allowlist. Separate multiple hostnames with spaces.', 'type' => 'string', 'required' => false, 'example' => 'abc edf', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response object.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '35C66C7B-671H-4297-9187-2C4477247A78'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'QuotaCheckFailed.FunctionArg', 'errorMessage' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.', 'description' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'title' => 'Modify Site HTTPS Application Configuration', 'summary' => 'Update the HTTPS Application Configuration.', 'changeSet' => [ ['createdAt' => '2025-06-03T07:09:13.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-03-27T02:58:48.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateHttpsApplicationConfiguration'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateHttpsApplicationConfiguration', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"35C66C7B-671H-4297-9187-2C4477247A78\\"\\n}","type":"json"}]', ], 'UpdateHttpsBasicConfiguration' => [ 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257970', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~ListSites~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1231231221****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '3528160969****', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The rule name. This parameter is not required when you add a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => ['description' => 'Indicates whether the rule is enabled. This parameter is not required when you add a global configuration. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The conditional expression used to match incoming requests. This parameter is not required when you add a global configuration. Use cases:'."\n" ."\n" .'- To match all incoming requests, set the value to `true`.'."\n" ."\n" .'- To match specific requests, set the value to a custom expression, for example, `(http.host eq "video.example.com")`.', 'type' => 'string', 'required' => false, 'example' => '(http.host eq \\"video.example.com\\")'."\n", 'title' => ''], ], [ 'name' => 'Https', 'in' => 'query', 'schema' => ['description' => 'Indicates whether HTTPS is enabled. Default value: `on`. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Tls10', 'in' => 'query', 'schema' => ['description' => 'Indicates whether TLS 1.0 is enabled. Default value: `off`. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Tls11', 'in' => 'query', 'schema' => ['description' => 'Indicates whether TLS 1.1 is enabled. Default value: `off`. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Tls12', 'in' => 'query', 'schema' => ['description' => 'Indicates whether TLS 1.2 is enabled. Default value: `off`. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Tls13', 'in' => 'query', 'schema' => ['description' => 'Indicates whether TLS 1.3 is enabled. Default value: `off`. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'CiphersuiteGroup', 'in' => 'query', 'schema' => ['description' => 'The cipher suite group. Default value: `all`. Valid values:'."\n" ."\n" .'- `all`: All cipher suites.'."\n" ."\n" .'- `strict`: strong cipher suites.'."\n" ."\n" .'- `custom`: custom cipher suites.', 'type' => 'string', 'required' => false, 'example' => 'all', 'title' => ''], ], [ 'name' => 'Ciphersuite', 'in' => 'query', 'schema' => ['description' => 'The custom cipher suite to use when `CiphersuiteGroup` is set to `custom`.', 'type' => 'string', 'required' => false, 'example' => 'TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256', 'title' => ''], ], [ 'name' => 'OcspStapling', 'in' => 'query', 'schema' => ['description' => 'Indicates whether OCSP stapling is enabled. Default value: `off`. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Http2', 'in' => 'query', 'schema' => ['description' => 'Indicates whether HTTP/2 is enabled. Default value: `on`. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Http3', 'in' => 'query', 'schema' => ['description' => 'Indicates whether HTTP/3 is enabled. Default value: `on`. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response data.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'QuotaCheckFailed.FunctionArg', 'errorMessage' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.', 'description' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.'], ['errorCode' => 'QuotaCheckFailed.Function', 'errorMessage' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.', 'description' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'title' => 'Modify Site HTTPS Basic Configuration', 'summary' => 'Modify Basic HTTPS Configuration.', 'changeSet' => [ ['createdAt' => '2025-03-27T02:58:48.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateHttpsBasicConfiguration'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateHttpsBasicConfiguration', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\"\\n}","type":"json"}]', ], 'UpdateIPv6' => [ 'summary' => 'Modify IPv6 configuration for a website.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257436', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling [ListSites](~~2850189~~).', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '5407498413****', 'title' => ''], ], [ 'name' => 'Enable', 'in' => 'query', 'schema' => [ 'description' => 'The switch. Valid values:'."\n" ."\n" .'- **on**: enabled.'."\n" .'- **off**: disabled.', 'enumValueTitles' => ['off' => 'Disabled', 'on' => 'Enabled'], 'type' => 'string', 'required' => true, 'enum' => ['on', 'off'], 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Region', 'in' => 'query', 'schema' => [ 'description' => 'The region in which IPv6 is enabled. Default value: x.x.'."\n" ."\n" .'- x.x: global.'."\n" .'- cn.cn: Chinese mainland.', 'enumValueTitles' => ['x.x' => 'Global', 'cn.cn' => 'Chinese mainland'], 'type' => 'string', 'enum' => ['x.x', 'cn.cn'], 'required' => false, 'example' => 'x.x', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\"\\n}","type":"json"}]', 'title' => 'Modify IPv6 configuration for a website', 'changeSet' => [ ['createdAt' => '2025-03-27T02:33:22.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateIPv6'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateIPv6', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UpdateImageTransform' => [ 'summary' => 'Modifies the image transformation configuration of a site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257354', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID. You can call the [ListImageTransforms](~~2869056~~) operation to obtain the configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '352816096987136', 'title' => ''], ], [ 'name' => 'Enable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable image transformation. Valid values:'."\n" ."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The rule name. You do not need to set this parameter when adding a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => [ 'description' => 'The rule switch. You do not need to set this parameter when adding a global configuration. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The rule content, which uses a conditional expression to match user requests. You do not need to set this parameter when adding a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: Set the value to true.'."\n" .'- Match specified requests: Set the value to a custom expression, such as (http.host eq \\"video.example.com\\").', 'type' => 'string', 'required' => false, 'example' => '(http.request.uri.path.file_name eq \\"jpg\\")', 'title' => ''], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The execution order of the rule. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'AutoWebp', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The adaptive WebP setting.', 'type' => 'string', 'example' => 'on', 'required' => false], ], [ 'name' => 'AutoAvif', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The adaptive AVIF setting.', 'type' => 'string', 'example' => 'on', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'QuotaCheckFailed.FunctionArg', 'errorMessage' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.', 'description' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","type":"json"}]', 'title' => 'Modify site image transformation configuration', 'changeSet' => [ ['createdAt' => '2025-03-27T02:58:48.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateImageTransform'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateImageTransform', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UpdateList' => [ 'summary' => 'Updates a custom list.', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239583', 'abilityTreeNodes' => ['FEATUREdcdnL8HX1L'], ], 'parameters' => [ [ 'name' => 'Id', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The ID of the custom list. You can obtain the ID by calling the [ListLists](~~2850217~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '40000001'], ], [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The new name of the custom list. If this parameter is not specified, the original name is retained.'."\n" ."\n" .'**Naming rules**: Only letters, digits, and underscores are supported (`^\\w{1,64}$`). The name must be 1 to 64 characters in length.', 'type' => 'string', 'required' => true, 'example' => 'example'], ], [ 'name' => 'Description', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The new description of the list.', 'type' => 'string', 'required' => true, 'example' => 'a custom list'], ], [ 'name' => 'Items', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The new list content. The value is a JSON array string, for example, `["1.1.1.1","2.2.2.2"]`.'."\n" ."\n" .'**Full overwrite semantics**: The specified `Items` value completely overwrites the existing list content instead of appending to it.'."\n" ."\n" .'> ⚠️ **If this parameter is not specified or is set to an empty value, the existing list content is cleared**. To retain existing items and append new ones, call `GetList` to retrieve the current `Items`, merge them, and then submit the combined list.'."\n" ."\n" .'**Element format**: The format depends on the `Kind` value specified when the list was created. UpdateList does not support modifying Kind.'."\n" .'- Kind = `ip`: Each element must be a valid IP address or CIDR block. If an element is invalid, `WrongValueMatched` is returned.'."\n" .'- Other Kind values: The element format is subject to the relevant specifications. The number of elements is limited by the tenant quota `NumberItemsPerList`. This limit does not apply to the `ip` Kind.', 'type' => 'array', 'items' => ['title' => '', 'description' => 'The updated list content item.', 'type' => 'string', 'example' => '10.1.1.1', 'required' => false], 'required' => true, 'example' => 'a custom list', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], 403 => [ ['errorCode' => '%s.NotSupport', 'errorMessage' => 'The specified resource type %s is not supported.', 'description' => 'The specified resource type is not supported. To use this type of resource, please contact us.'], ['errorCode' => '%s.OverQuota', 'errorMessage' => 'The quantity of %s exceeds the quota.', 'description' => 'The amount of this resource exceeds the quota. If you need to apply for more quota, please contact us.'], ['errorCode' => '%s.WrongValueMatched', 'errorMessage' => 'The value of specified parameter %s can not pass the matching check.', 'description' => 'The value of the specified parameter can not pass the matching check. If you determine that you need to use this parameter value, please contact us.'], ['errorCode' => 'List.NotExist', 'errorMessage' => 'The specified list does not exist.', 'description' => 'The specified list does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\"\\n}","type":"json"}]', 'title' => 'Update a custom list', 'changeSet' => [ ['createdAt' => '2024-09-25T07:02:49.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T09:53:46.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateList'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateList', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'UpdateLoadBalancer' => [ 'summary' => 'To modify an existing load balancer, you must specify its load balancer ID.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238302', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'Enabled', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether the load balancer is enabled.'."\n" ."\n" .'- `true`: The load balancer is enabled.'."\n" ."\n" .'- `false`: The load balancer is disabled.', 'enumValueTitles' => ['true' => 'true', 'false' => 'false'], 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => '', ], ], [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The ID of the Site. You can obtain this ID by calling the [ListSites](~~ListSites~~) API operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1159101787****', 'title' => ''], ], [ 'name' => 'AdaptiveRouting', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'Configures origin-pull behavior across address pools.', 'type' => 'object', 'properties' => [ 'FailoverAcrossPools' => ['description' => 'Specifies whether to perform origin-pull across address pools.'."\n" ."\n" .'- `true`: Enables origin-pull across address pools.'."\n" ."\n" .'- `false`: Disables origin-pull across address pools.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], 'OriginLevelRetry' => ['type' => 'boolean', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'DefaultPools', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'A list of default address pool IDs.', 'type' => 'array', 'items' => ['description' => 'The ID of a default address pool.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '96228666776****', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'FallbackPool', 'in' => 'query', 'schema' => ['description' => 'The ID of the fallback address pool. Traffic is routed to this pool when all other address pools are unavailable.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '96228666776****', 'title' => ''], ], [ 'name' => 'RandomSteering', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The configuration for weighted round-robin. This setting controls the weight of traffic distributed to different address pools.', 'type' => 'object', 'properties' => [ 'DefaultWeight' => ['description' => 'The default weight applied to all address pools that do not have a specific weight defined. The value must be an integer from 0 to 100, inclusive.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '50', 'title' => ''], 'PoolWeights' => [ 'description' => 'A map of pool IDs to their corresponding weights. These weights determine the proportion of traffic routed to each backend server pool.', 'type' => 'object', 'required' => false, 'additionalProperties' => ['description' => 'The weight for a single origin pool. The value must be an integer from 0 to 100, inclusive. A value of 0 indicates that no traffic is routed to this pool.', 'type' => 'integer', 'format' => 'int32', 'example' => '50', 'title' => ''], 'title' => '', 'example' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'Rules', 'in' => 'query', 'allowEmptyValue' => false, 'style' => 'json', 'schema' => [ 'description' => 'A list of rules that define behavior overrides for specific conditions.', 'type' => 'array', 'items' => [ 'description' => 'The configuration of a single rule.', 'type' => 'object', 'properties' => [ 'RuleName' => ['description' => 'The name of the rule. This parameter is not required when you configure global settings.', 'type' => 'string', 'required' => false, 'example' => 'rule_1', 'title' => ''], 'Rule' => ['description' => 'The content of the rule, specified as a conditional expression to match user requests. This parameter is not required when you configure global settings. Use cases:'."\n" ."\n" .'- To match all incoming requests, set the value to `true`.'."\n" ."\n" .'- To match specific requests, set the value to a custom expression, such as `(http.host eq "video.example.com")`.', 'type' => 'string', 'required' => false, 'example' => 'http.request.method eq "GET" ', 'title' => ''], 'RuleEnable' => ['description' => 'Specifies whether the rule is enabled. This parameter is not required when you configure global settings. Valid values:'."\n" ."\n" .'- `on`: Enabled.'."\n" ."\n" .'- `off`: Disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], 'FixedResponse' => [ 'description' => 'The fixed response to return when the rule\'s condition is met.', 'type' => 'object', 'properties' => [ 'ContentType' => ['description' => 'The value of the `Content-Type` field in the HTTP response header.', 'type' => 'string', 'required' => false, 'example' => 'application/json', 'title' => ''], 'Location' => ['description' => 'The value of the `Location` field in the HTTP response header. This is typically used for redirections.', 'type' => 'string', 'required' => false, 'example' => 'http://www.example.com/index.html'."\n", 'title' => ''], 'MessageBody' => ['description' => 'The content of the response body.', 'type' => 'string', 'required' => false, 'example' => 'Hello World!'."\n", 'title' => ''], 'StatusCode' => ['description' => 'The HTTP status code of the response.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '200', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'Overrides' => ['description' => 'The settings to override for requests that match this rule\'s condition. These settings take precedence over the load balancer\'s main configuration.', 'type' => 'any', 'required' => false, 'example' => '{'."\n" .' "adaptive_routing": {'."\n" .' "failover_across_pools": true'."\n" .' },'."\n" .' "sub_region_pools": {'."\n" .' "AL,AT": ['."\n" .' 92298024898****,'."\n" .' 92304347804****'."\n" .' ],'."\n" .' "BG,BY": ['."\n" .' 92298024898****'."\n" .' ]'."\n" .' },'."\n" .' "default_pools": ['."\n" .' 92298024898****,'."\n" .' 92304347804****'."\n" .' ],'."\n" .' "fallback_pool": 92298024898****,'."\n" .' "location_strategy": {'."\n" .' "mode": "resolver_ip",'."\n" .' "prefer_ecs": "always"'."\n" .' },'."\n" .' "random_steering": {'."\n" .' "default_weight": 0.3,'."\n" .' "pool_weights": {'."\n" .' "92298024898****": 0.7,'."\n" .' "92304347804****": 0.8'."\n" .' }'."\n" .' },'."\n" .' "region_pools": {'."\n" .' "CN,SEAS": ['."\n" .' 92298024898****,'."\n" .' 92304347804****'."\n" .' ],'."\n" .' "SAF,SAS": ['."\n" .' 92304347804****'."\n" .' ]'."\n" .' },'."\n" .' "session_affinity": "ip",'."\n" .' "steering_policy": "geo",'."\n" .' "ttl": 30'."\n" .' }', 'title' => ''], 'Sequence' => ['description' => 'The execution priority of the rule. This parameter is optional. If you do not specify this parameter, rules are executed in the order they are listed. If specified, the value must be an integer greater than 0. A larger value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], 'Terminates' => ['description' => 'Specifies whether to stop processing subsequent rules after this rule is matched.'."\n" ."\n" .'- `true`: Stop processing subsequent rules.'."\n" ."\n" .'- `false`: Continue processing subsequent rules. This is the default value.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'SessionAffinity', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => [ 'description' => 'The method for session affinity, which ensures that requests from the same client are routed to the same origin server. Valid values:'."\n" ."\n" .'- `off`: Disables session affinity.'."\n" ."\n" .'- `ip`: Enables session affinity based on the client IP address.'."\n" ."\n" .'- `cookie`: Enables session affinity based on a cookie.', 'type' => 'string', 'enum' => [], 'required' => false, 'example' => 'ip', 'title' => '', ], ], [ 'name' => 'SteeringPolicy', 'in' => 'query', 'schema' => ['description' => 'The traffic steering policy, which determines how traffic is distributed among the address pools.', 'type' => 'string', 'required' => false, 'example' => 'order'."\n", 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'An optional description of the load balancer for easier identification and management.', 'type' => 'string', 'example' => 'Load balancer description', 'required' => false, 'title' => ''], ], [ 'name' => 'Ttl', 'in' => 'query', 'schema' => ['description' => 'The Time to Live (TTL) for the DNS record, in seconds. The default is 30. The value must be between 10 and 600, inclusive.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '300', 'title' => ''], ], [ 'name' => 'Monitor', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The health check monitor configuration.', 'type' => 'object', 'properties' => [ 'Type' => ['description' => 'The protocol to use for the health check, such as `HTTP`. If you set this to `off`, no health check is performed.', 'type' => 'string', 'required' => false, 'example' => 'HTTP', 'title' => ''], 'Method' => ['description' => 'The HTTP method to use for the health check. For example, `GET`.', 'type' => 'string', 'required' => false, 'example' => 'GET', 'title' => ''], 'Port' => ['description' => 'The port on the origin server to use for the health check.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '80', 'title' => ''], 'Path' => ['description' => 'The path on the origin server to request for the health check. For example, `/healthcheck`.', 'type' => 'string', 'required' => false, 'example' => '/health'."\n", 'title' => ''], 'Interval' => ['description' => 'The interval in seconds between each health check. For example, `60`.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100', 'title' => ''], 'Timeout' => ['description' => 'The timeout for the health check, in seconds. The value must be between 1 and 10, inclusive.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5', 'title' => ''], 'ExpectedCodes' => ['description' => 'The expected HTTP status codes that indicate a healthy response. For example, `200,202`.', 'type' => 'string', 'required' => false, 'example' => '200,202', 'title' => ''], 'FollowRedirects' => ['description' => 'Specifies whether the health check monitor follows HTTP redirections.'."\n" ."\n" .'- `true`: The monitor follows HTTP redirections.'."\n" ."\n" .'- `false`: The monitor does not follow HTTP redirections.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], 'ConsecutiveUp' => ['description' => 'The number of consecutive successful health checks required to declare an origin server healthy. For example, `3`.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3', 'title' => ''], 'ConsecutiveDown' => ['description' => 'The number of consecutive failed health checks required to declare an origin server unhealthy. For example, `5`.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5', 'title' => ''], 'Header' => ['description' => 'The HTTP request headers to send with each health check.', 'type' => 'any', 'required' => false, 'example' => ' {'."\n" .' "host": ['."\n" .' "example1.com",'."\n" .' "example2.com"'."\n" .' ]'."\n" .' }', 'title' => ''], 'MonitoringRegion' => [ 'description' => 'The regions from which the health checks are performed. The default value is `Global`.'."\n" ."\n" .'- `Global`: From probe locations worldwide.'."\n" ."\n" .'- `ChineseMainland`: From probe locations within the Chinese mainland.'."\n" ."\n" .'- `OutsideChineseMainland`: From probe locations outside the Chinese mainland.', 'enumValueTitles' => ['OutsideChineseMainland' => 'Outside Chinese mainland', 'ChineseMainland' => 'Chinese mainland', 'Global' => 'Global'], 'type' => 'string', 'required' => false, 'example' => 'Global', 'title' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The ID of the load balancer. You can obtain this ID by calling the [ListLoadBalancers](~~2868897~~) API operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '95913670174****', 'title' => ''], ], [ 'name' => 'RegionPools', 'in' => 'query', 'schema' => ['description' => 'A map of primary regions to their corresponding address pools.', 'type' => 'any', 'required' => false, 'example' => '{'."\n" .' "ENAM": ['."\n" .' 12345678****'."\n" .' ],'."\n" .' "WNAM": ['."\n" .' 23456789****,'."\n" .' 23456789****'."\n" .' ]'."\n" .'}', 'title' => ''], ], [ 'name' => 'SubRegionPools', 'in' => 'query', 'schema' => ['description' => 'A map of secondary regions to their corresponding address pools. To assign the same address pools to multiple secondary regions, combine their codes into a single, comma-separated key.', 'type' => 'any', 'required' => false, 'example' => '{"AL,MO": [92298024898****],"CN-SH,CN-SX,CN-SC":[92304347804****,92843536908****]}', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The structure of the response returned for a successful load balancer update.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F'."\n"], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'LoadBalancerQuotaCheckFailed', 'errorMessage' => 'Load balancer enable quota check failed.', 'description' => 'Your current plan cannot use the load balancer related functions. If you need to use it, upgrade the plan.'], ['errorCode' => 'LoadBalancerNumberExceedQuotaLimit', 'errorMessage' => 'The number of load balancers you have added has reached the limit of the plan quota. Please delete the unused load balancers or upgrade the plan and try again.', 'description' => 'The number of load balancers you have added has reached the limit of the plan quota. Please delete the unused load balancers or upgrade the plan and try again.'], ['errorCode' => 'LoadBalancerRuleQuotaCheckFailed', 'errorMessage' => 'Your current plan does not support configuring load balancer custom rules, or the load balancer rules you have added exceed the plan quota limit. Please upgrade the plan or delete the rules that are no longer in use and try again.', 'description' => 'Your current plan does not support configuring load balancer custom rules, or the load balancer rules you have added exceed the plan quota limit. Please upgrade the plan or delete the rules that are no longer in use and try again.'], ['errorCode' => 'LoadBalancerPolicyCheckFailed', 'errorMessage' => 'Your current plan does not support the load balancer scheduling policy. Upgrade the plan and try again.', 'description' => 'Your current plan does not support the load balancer scheduling policy. Upgrade the plan and try again.'], ['errorCode' => 'LoadBalancerHealthDetectionQuotaCheckFailed', 'errorMessage' => 'Your current plan does not allow you to configure the load balancer\'s health detection. Upgrade the plan and try again.', 'description' => 'Your current plan does not allow you to configure the load balancer\'s health detection. Upgrade the plan and try again.'], ['errorCode' => 'LoadBalancerHealthDetectionIntervalCheckFailed', 'errorMessage' => 'The configured load balancer health detection interval exceeds the quota range allowed by the plan. Please revise the interval within the range or upgrade the plan and try again.', 'description' => 'The configured load balancer health detection interval exceeds the quota range allowed by the plan. Please revise the interval within the range or upgrade the plan and try again.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'MonitorExpectedBodyInvalid', 'errorMessage' => 'Invalid response body. Specify a response body that does not exceed 102,400 characters in length in your custom rule.', 'description' => 'Invalid response body. Specify a response body that does not exceed 102,400 characters in length in your custom rule.'], ['errorCode' => 'MonitorExpectedCodesInvalid', 'errorMessage' => 'Invalid expected status code for the probe.Make sure that you specify no more than 10 status codes in the probe settings, and each status code must be 3 to 4 characters in length.Examples: 200, 301, 3xx, 8000, and 88xx.', 'description' => 'Invalid expected status code for the probe.Make sure that you specify no more than 10 status codes in the probe settings, and each status code must be 3 to 4 characters in length.Examples: 200, 301, 3xx, 8000, and 88xx.'], ['errorCode' => 'MonitorHeaderInvalid', 'errorMessage' => 'Invalid request header for the probe. You can add up to 10 request headers, each with 1 to 9 values. The combined length of all headers and values cannot exceed 6,000 characters. You cannot configure the User-Agent header.', 'description' => 'The incoming monitor is carrying an illegal request header. Make sure that the number of request headers does not exceed 10, that each request header has a value length between 1 and 10, and that you must not use the User-Agent request header (which is reserved for internal specific scenarios). In addition, the total length of all request headers and their values must not exceed 6000 characters. Please check and correct the request header configuration and try again.'], ['errorCode' => 'MonitorMethodNotSupport', 'errorMessage' => 'Invalid HTTP method for the probe request. Valid values are GET and HEAD.', 'description' => 'Invalid HTTP method for the probe request. Valid values are GET and HEAD.'], ['errorCode' => 'MonitorPathNotSupport', 'errorMessage' => 'Invalid probe URL path.If you set the probe protocol to HTTP or HTTPS, make sure you specify a probe URL path that does not exceed 1,024 characters in length.', 'description' => 'Invalid probe URL path.If you set the probe protocol to HTTP or HTTPS, make sure you specify a probe URL path that does not exceed 1,024 characters in length.'], ['errorCode' => 'MonitorPortNotSupport', 'errorMessage' => 'Invalid probe port. Specify a valid port from 1 to 65535 for the probe request. Then, try again.', 'description' => 'The incoming monitor listening port is not supported. The port value range is [1-65535]. Please ensure that the port is within the value range and try again.'], ['errorCode' => 'MonitorRetriesInvalid', 'errorMessage' => 'Invalid number of probe retries. Specify an integer from 0 to 5. Then, try again.', 'description' => 'Invalid number of probe retries. Specify an integer from 0 to 5. Then try again.'], ['errorCode' => 'MonitorTimeoutInvalid', 'errorMessage' => 'Invalid timeout for the probe. Valid values are 1 to 10.', 'description' => 'Invalid timeout for the probe. Valid values are 1 to 10.'], ['errorCode' => 'MonitorTypeNotSupport', 'errorMessage' => 'Invalid protocol. Valid values are off, HTTP, HTTPS, TCP, UDP, ICMP Ping, and SMTP.', 'description' => 'Invalid protocol. Valid values are off, HTTP, HTTPS, TCP, UDP, ICMP Ping, and SMTP.'], ['errorCode' => 'OriginPoolNotExist', 'errorMessage' => 'The specified origin pool does not exist or does not belong to your account or website. Check and try again.', 'description' => 'The specified origin pool does not exist or does not belong to your account or website. Check and try again.'], ['errorCode' => 'LoadBalancerNameConflict', 'errorMessage' => 'The load balancer name or the hostname for the origin pool already exists. Try again with a unique name.', 'description' => 'The load balancer name or the hostname for the origin pool already exists. Try again with a unique name.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'SourceCircleExist', 'errorMessage' => 'The host record of the resource to be operated on is already the source station of another resource, or the source station of the current resource has been added as a host record. To avoid loopback, modify the host record or source station and retry.', 'description' => 'The host record of the resource to be operated on is already the source station of another resource, or the source station of the current resource has been added as a host record. To avoid loopback, modify the host record or source station and retry.'], ['errorCode' => 'LoadBalancerNotExist', 'errorMessage' => 'The specified load balancer name is invalid or load balancing is not enabled for your website.Make sure that you specify a valid load balancer name and load balancing is enabled. Then, try again.', 'description' => 'The specified load balancer name is invalid or load balancing is not enabled for your website.Make sure that you specify a valid load balancer name and load balancing is enabled. Then, try again.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ], 403 => [ ['errorCode' => 'QuotaExceeded', 'errorMessage' => 'The quota is exceeded.', 'description' => 'The quota is exceeded.'], ], [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\\\n\\"\\n}","type":"json"}]', 'title' => 'Modify Existing Load Balancer Information', 'description' => 'This operation modifies multiple configurations for a load balancer, including its name, acceleration status, session persistence policy, and advanced traffic routing settings.>Changes to certain parameters might affect the stability of existing services. Proceed with caution.>', 'changeSet' => [ ['createdAt' => '2025-06-16T02:25:11.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-02-13T01:34:54.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateLoadBalancer'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateLoadBalancer', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'translator' => 'manual', ], 'UpdateManagedTransform' => [ 'summary' => 'Modify the site hosting transformation configuration.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257446', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The ID of the site. You can call the [ListSites](~~2850189~~) operation to obtain this ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'AddClientGeolocationHeader', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to add a header that contains visitor geolocation information. Valid values:'."\n" ."\n" .'- `on`: Add the header.'."\n" ."\n" .'- `off`: Do not add the header.', 'enumValueTitles' => ['off' => 'off', 'on' => 'on'], 'type' => 'string', 'required' => false, 'enum' => [], 'example' => 'on', 'title' => '', ], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version of the site. For sites with version management enabled, this parameter specifies the version to which the configuration applies. Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'AddRealClientIpHeader', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to add the `ali-real-client-ip` header, which contains the real client IP. Valid values:'."\n" ."\n" .'- `on`: Add the header.'."\n" ."\n" .'- `off`: Do not add the header.', 'enumValueTitles' => ['off' => 'off', 'on' => 'on'], 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'RealClientIpHeaderName', 'in' => 'query', 'schema' => ['description' => 'The name of the header that contains the real client IP. The name must start with a letter and can contain letters, digits (0-9), and hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'test-header', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response schema.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-A198-72F8FD6DA2FE'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-A198-72F8FD6DA2FE\\"\\n}","type":"json"}]', 'title' => 'Modify Site Managed Transformation Configuration', 'changeSet' => [ ['createdAt' => '2025-05-09T05:58:31.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateManagedTransform'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateManagedTransform', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UpdateNetworkOptimization' => [ 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257971', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. Call the [ListSites](~~2850189~~) operation to obtain this ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '352816096987136', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The rule name. This parameter is optional for global configurations.', 'type' => 'string', 'required' => false, 'example' => 'rule_example', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => ['description' => 'Controls whether the rule is enabled. This parameter is optional for global configurations. Valid values:'."\n" ."\n" .'- on: The rule is enabled.'."\n" ."\n" .'- off: The rule is disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The conditional expression used to match requests. This parameter is optional for global configurations.'."\n" ."\n" .'- To match all incoming requests, set the value to true.'."\n" ."\n" .'- To match specific requests, set the value to a custom expression, for example, (http.host eq "video.example.com").', 'type' => 'string', 'required' => false, 'example' => '(http.host eq \\"video.example.com\\")', 'title' => ''], ], [ 'name' => 'SmartRouting', 'in' => 'query', 'schema' => ['description' => 'Controls whether smart routing is enabled. This feature is disabled by default. Valid values:'."\n" ."\n" .'- on: Smart routing is enabled.'."\n" ."\n" .'- off: Smart routing is disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Http2Origin', 'in' => 'query', 'schema' => ['description' => 'Controls whether HTTP/2 to origin is enabled. This feature is disabled by default. Valid values:'."\n" ."\n" .'- on: HTTP/2 to origin is enabled.'."\n" ."\n" .'- off: HTTP/2 to origin is disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Websocket', 'in' => 'query', 'schema' => ['description' => 'Controls whether WebSocket is enabled. This feature is enabled by default. Valid values:'."\n" ."\n" .'- on: WebSocket is enabled.'."\n" ."\n" .'- off: WebSocket is disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Grpc', 'in' => 'query', 'schema' => ['description' => 'Controls whether gRPC is enabled. This feature is disabled by default. Valid values:'."\n" ."\n" .'- on: gRPC is enabled.'."\n" ."\n" .'- off: gRPC is disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'UploadMaxFilesize', 'in' => 'query', 'schema' => ['description' => 'The maximum upload file size, in MB. The value must be an integer from 100 to 500.', 'type' => 'string', 'required' => false, 'example' => '100', 'title' => ''], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The rule execution order. Smaller values have higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-A198-72F8FD6DA2FE'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'title' => 'Modify Site Network Optimization Configuration', 'summary' => 'Updates a network optimization configuration.', 'changeSet' => [ ['createdAt' => '2025-03-27T02:58:48.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateNetworkOptimization'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateNetworkOptimization', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-A198-72F8FD6DA2FE\\"\\n}","type":"json"}]', ], 'UpdateOriginPool' => [ 'summary' => 'Modifies a single origin address pool specified by the origin address pool ID.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238439', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The origin address pool ID. You can call the [ListOriginPools](~~ListOriginPools~~) operation to obtain the ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1038520525196928', 'title' => ''], ], [ 'name' => 'Enabled', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the origin address pool is enabled. Valid values:'."\n" ."\n" .'- true: Enabled.'."\n" .'- false: Not enabled.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'Origins', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The origin server information added to the origin address pool. Use an array to pass multiple origin servers.', 'type' => 'array', 'items' => [ 'description' => 'The origin server information added to the origin address pool.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The origin server name. The name must be unique within an origin address pool.', 'type' => 'string', 'required' => false, 'example' => 'origin1', 'title' => ''], 'Address' => ['description' => 'The addresses of the origin server, such as www.example.com.', 'type' => 'string', 'required' => false, 'example' => 'www.example.com', 'title' => ''], 'Enabled' => ['description' => 'Specifies whether the origin server is enabled. Valid values:'."\n" ."\n" .'- true: Enabled.'."\n" .'- false: Not enabled.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], 'Header' => ['description' => 'The request header included in back-to-origin requests. Only Host is supported.', 'type' => 'any', 'required' => false, 'example' => '{'."\n" .' "Host": ['."\n" .' "example.com"'."\n" .' ]'."\n" .' }', 'title' => ''], 'Weight' => ['description' => 'The weight. The value is an integer from 0 to 100.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '50', 'title' => ''], 'Type' => ['description' => 'The origin server type. Valid values:'."\n" ."\n" .'- ip_domain: an IP address or domain name-based origin server.'."\n" .'- OSS: an OSS address-based origin server.'."\n" .'- S3: an AWS S3 origin server.', 'type' => 'string', 'required' => false, 'example' => 'OSS', 'title' => ''], 'AuthConf' => [ 'description' => 'The authentication information. This parameter is required when the origin server is OSS, S3, or another origin server that requires authentication.', 'type' => 'object', 'properties' => [ 'AuthType' => ['description' => 'The authentication type. Valid values:'."\n" ."\n" .'- public: public read/write. Use this value when the origin server is OSS or S3 with public read/write access.'."\n" .'- private_same_account: private same-account. Use this value when the origin server is OSS with same-account private authentication.'."\n" .'- private_cross_account: private cross-account. Use this value when the origin server is OSS with cross-account private authentication.'."\n" .'- private: Use this value when the origin server is S3 with private authentication.', 'type' => 'string', 'required' => false, 'example' => 'public', 'title' => ''], 'AccessKey' => ['description' => 'The AccessKey required for private authentication.', 'type' => 'string', 'required' => false, 'example' => 'yourAccessKeyID', 'title' => ''], 'SecretKey' => ['description' => 'The SecretKey required for private authentication.', 'type' => 'string', 'required' => false, 'example' => 'yourAccessKeySecret', 'title' => ''], 'Version' => ['description' => 'The signature version required when the origin server is AWS S3.', 'type' => 'string', 'required' => false, 'example' => 'v2', 'title' => ''], 'Region' => ['description' => 'The region of the origin server required when the origin server is AWS S3.', 'type' => 'string', 'required' => false, 'example' => 'us-east-1'."\n", 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'IpVersionPolicy' => ['description' => 'The IP protocol version used for back-to-origin requests. Valid values:'."\n" .'- round_robin: default policy. Randomly polls IPv4 or IPv6 origin servers.'."\n" .'- ipv4_first: preferentially uses IPv4 origin servers.'."\n" .'- ipv6_first: preferentially uses IPv6 origin servers.'."\n" .'- follow: preferentially follows the IP version used by the client.', 'type' => 'string', 'required' => false, 'example' => 'round_robin', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~ListSites~~) operation to obtain the ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '216558609793952', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74'], 'Id' => ['description' => 'The origin address pool ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1038520525196928', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'SourceNumberExceedLimit', 'errorMessage' => 'The number of sources in the origin pool exceeds the quota limit.', 'description' => 'The number of sources that can be created in the origin pool has reached the upper limit of the package. Please check your package quota and upgrade the package to obtain more quota.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'OriginPoolNotExist', 'errorMessage' => 'The specified origin pool does not exist or does not belong to your account or website. Check and try again.', 'description' => 'The specified origin pool does not exist or does not belong to your account or website. Check and try again.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'OriginPoolNameConflict', 'errorMessage' => 'The specified origin pool name already exists or its hostname conflicts with a load balancer name. Try again with a unique name.', 'description' => 'The specified origin pool name already exists or its hostname conflicts with a load balancer name. Try again with a unique name.'], ['errorCode' => 'SourceAddressInvalid', 'errorMessage' => 'Invalid origin address. Check whether the IP address or domain name is in the valid format.', 'description' => 'Invalid origin address. Check whether the IP address or domain name is in the valid format.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'InvalidParameter.AddressConflict', 'errorMessage' => 'Duplicate origin addresses. Make sure that each origin address for the same pool is unique.', 'description' => 'Duplicate origin addresses. Make sure that each origin address for the same pool is unique.'], ['errorCode' => 'SourceCircleExist', 'errorMessage' => 'The host record of the resource to be operated on is already the source station of another resource, or the source station of the current resource has been added as a host record. To avoid loopback, modify the host record or source station and retry.', 'description' => 'The host record of the resource to be operated on is already the source station of another resource, or the source station of the current resource has been added as a host record. To avoid loopback, modify the host record or source station and retry.'], ['errorCode' => 'SourceInBlackList', 'errorMessage' => 'The source is in the black list.', 'description' => 'The source is in the black list.'], ['errorCode' => 'InvalidParameter.SourceIpInBlacklist', 'errorMessage' => 'The provided origin is an invalid private IP address. Please verify and resubmit.', 'description' => 'The provided origin is an invalid private IP address. Please verify and resubmit.'], ['errorCode' => 'InvalidParameter.PrivateIpAsSourceUnsupported', 'errorMessage' => 'The provided origin is an invalid private IP address. Please verify and resubmit.', 'description' => 'The provided origin is an invalid private IP address. Please verify and resubmit.'], ['errorCode' => 'OriginPool.TypeNotSupport', 'errorMessage' => 'The origin address pool type is not supported.', 'description' => 'The origin address pool type is not supported.'], ['errorCode' => 'OriginPool.CheckQuotaFailed', 'errorMessage' => 'Failed to check source pool quota for site, please try again later.', 'description' => 'Failed to check source pool quota for site, please try again later.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'Modify a single origin address pool', 'changeSet' => [ ['createdAt' => '2025-05-20T11:43:19.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateOriginPool'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateOriginPool', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\",\\n \\"Id\\": 1038520525196928\\n}","type":"json"}]', ], 'UpdateOriginProtection' => [ 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '250098', 'abilityTreeNodes' => ['FEATUREdcdn4VDL9A'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. Call the [ListSites](~~2850189~~) API to get it.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'OriginConverge', 'in' => 'query', 'schema' => [ 'description' => 'The origin fetch convergence switch.'."\n" ."\n" .'- on: Enable origin fetch convergence.'."\n" ."\n" .'- off: Disable origin fetch convergence.', 'type' => 'string', 'required' => true, 'enum' => ['on', 'off'], 'example' => 'on', 'title' => '', ], ], [ 'name' => 'AutoConfirmIPList', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => [ 'type' => 'string', 'required' => false, 'example' => 'off', 'enum' => ['on', 'off'], 'description' => '', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '4C6B5E5A-42FC-5DF2-986C-4DAAE3C55086'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'OriginProtectionNotExist', 'errorMessage' => 'The site is not configured with origin protection, so it cannot be modified or deleted.', 'description' => 'The site is not configured with origin protection, so it cannot be modified or deleted.'], ['errorCode' => 'FunctionArgConflict.OriginProtection', 'errorMessage' => 'The automatic enabling of the latest back-to-source IP list and the back-to-source convergence are mutually exclusive functions and cannot be enabled at the same time.', 'description' => 'The automatic enabling of the latest back-to-source IP list and the back-to-source convergence are mutually exclusive functions and cannot be enabled at the same time.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'title' => 'UpdateOriginProtection', 'summary' => 'Modify the origin protection feature to enable or disable origin fetch convergence.', 'changeSet' => [ ['createdAt' => '2025-02-21T06:58:57.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateOriginProtection'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:UpdateOriginProtection', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4C6B5E5A-42FC-5DF2-986C-4DAAE3C55086\\"\\n}","type":"json"}]', ], 'UpdateOriginProtectionIpWhiteList' => [ 'summary' => 'Confirm that you want to update the site’s origin IP whitelist to the latest version.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '250107', 'abilityTreeNodes' => ['FEATUREdcdn4VDL9A'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID. Call the [ListSites](~~2850189~~) operation to get this value.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Response schema', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-A198-72F8FD6DA2FE'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'OriginProtectionNotExist', 'errorMessage' => 'The site is not configured with origin protection, so it cannot be modified or deleted.', 'description' => 'The site is not configured with origin protection, so it cannot be modified or deleted.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'title' => 'UpdateOriginProtectionIpWhiteList', 'changeSet' => [ ['createdAt' => '2025-02-21T06:58:57.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateOriginProtectionIpWhiteList'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:UpdateOriginProtectionIpWhiteList', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-A198-72F8FD6DA2FE\\"\\n}","type":"json"}]', ], 'UpdateOriginRule' => [ 'summary' => 'Updates a site\'s origin fetch rules.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257994', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can get this ID by calling the [ListSites](~~ListSites~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '5407498413****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '35281609698****', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The rule name. This parameter is not required when you add a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => ['description' => 'Indicates whether the rule is enabled. This parameter is not required when you add a global configuration. Valid values:'."\n" ."\n" .'- `on`: Enables the rule.'."\n" ."\n" .'- `off`: Disables the rule.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The rule content, which is a conditional expression that matches user requests. This parameter is not required when you add a global configuration.'."\n" ."\n" .'- To match all incoming requests, set the value to `true`.'."\n" ."\n" .'- To match specific requests, set the value to a custom expression, such as `(http.host eq "video.example.com")`.', 'type' => 'string', 'required' => false, 'example' => '(http.host eq \\"video.example.com\\")', 'title' => ''], ], [ 'name' => 'OriginHost', 'in' => 'query', 'schema' => ['description' => 'The `Host` header for the origin request.', 'type' => 'string', 'required' => false, 'example' => 'origin.example.com'."\n", 'title' => ''], ], [ 'name' => 'OriginScheme', 'in' => 'query', 'schema' => ['description' => 'The protocol for origin requests. Valid values:'."\n" ."\n" .'- `http`: The origin request uses HTTP.'."\n" ."\n" .'- `https`: The origin request uses HTTPS.'."\n" ."\n" .'- `follow`: The origin request uses the same protocol as the client request.', 'type' => 'string', 'required' => false, 'example' => 'http', 'title' => ''], ], [ 'name' => 'OriginSni', 'in' => 'query', 'schema' => ['description' => 'The Server Name Indication (SNI) for the origin request.', 'type' => 'string', 'required' => false, 'example' => 'origin.example.com'."\n", 'title' => ''], ], [ 'name' => 'DnsRecord', 'in' => 'query', 'schema' => ['description' => 'Overrides the DNS record for the origin request.', 'type' => 'string', 'required' => false, 'example' => 'test.example.com'."\n", 'title' => ''], ], [ 'name' => 'OriginHttpPort', 'in' => 'query', 'schema' => ['description' => 'The origin server port for HTTP requests.', 'type' => 'string', 'required' => false, 'example' => '8080', 'title' => ''], ], [ 'name' => 'OriginHttpsPort', 'in' => 'query', 'schema' => ['description' => 'The origin server port for HTTPS requests.', 'type' => 'string', 'required' => false, 'example' => '4433', 'title' => ''], ], [ 'name' => 'Range', 'in' => 'query', 'schema' => ['description' => 'Indicates whether to use range requests when fetching files from the origin server. Valid values:'."\n" ."\n" .'- `on`: Enables range requests.'."\n" ."\n" .'- `off`: Disables range requests.'."\n" ."\n" .'- `force`: Enforces range requests.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'OriginMtls', 'in' => 'query', 'schema' => ['description' => 'Indicates whether to enable mutual TLS (mTLS) for origin requests. Valid values:'."\n" ."\n" .'- `on`: Enables mTLS.'."\n" ."\n" .'- `off`: Disables mTLS.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'OriginVerify', 'in' => 'query', 'schema' => ['description' => 'Indicates whether to enable origin certificate verification. Valid values:'."\n" ."\n" .'- `on`: Enables verification.'."\n" ."\n" .'- `off`: Disables verification.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'RangeChunkSize', 'in' => 'query', 'schema' => ['description' => 'The size of each chunk for range requests. Valid values:'."\n" ."\n" .'- 512KB'."\n" ."\n" .'- 1MB'."\n" ."\n" .'- 2MB'."\n" ."\n" .'- 4MB', 'type' => 'string', 'required' => false, 'example' => '1MB', 'title' => ''], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The execution priority of the rule. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'OriginReadTimeout', 'in' => 'query', 'schema' => ['description' => 'The read timeout period for the origin server, in seconds.', 'type' => 'string', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'Follow302Enable', 'in' => 'query', 'schema' => ['description' => 'Indicates whether to follow 302 redirects for origin requests. Valid values:'."\n" ."\n" .'- `on`: Follows 302 redirects.'."\n" ."\n" .'- `off`: Does not follow 302 redirects.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Follow302MaxTries', 'in' => 'query', 'schema' => ['description' => 'The maximum number of 302 redirects to follow. The value must be an integer from 1 to 5.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'Follow302RetainArgs', 'in' => 'query', 'schema' => ['description' => 'Indicates whether to retain the original request parameters when following a 302 redirect. Valid values:'."\n" ."\n" .'- `on`: Retains the parameters.'."\n" ."\n" .'- `off`: Does not retain the parameters.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Follow302RetainHeader', 'in' => 'query', 'schema' => ['description' => 'Indicates whether to retain the original request headers when following a 302 redirect. Valid values:'."\n" ."\n" .'- `on`: Retains the headers.'."\n" ."\n" .'- `off`: Does not retain the headers.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Follow302TargetHost', 'in' => 'query', 'schema' => ['description' => 'The `Host` header for the redirected origin request.', 'type' => 'string', 'required' => false, 'example' => 'test.com', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response body.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'QuotaCheckFailed.FunctionArg', 'errorMessage' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.', 'description' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'title' => 'Modify Origin Rule Configuration for Site', 'changeSet' => [ ['createdAt' => '2025-04-17T08:47:33.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-04-01T01:57:04.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-03-27T02:58:48.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-03-20T05:57:46.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-02-27T09:16:40.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateOriginRule'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateOriginRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\"\\n}","type":"json"}]', ], 'UpdatePage' => [ 'summary' => 'Updates a custom response page that the user has created. You can use this operation to modify the page name, description, content type, and content.', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239594', 'abilityTreeNodes' => ['FEATUREdcdnL8HX1L'], ], 'parameters' => [ [ 'name' => 'Id', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The ID of the custom response page. You can obtain this value by calling the [ListPages](~~2850223~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '50000001'], ], [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The name of the custom response page after the update.'."\n" ."\n" .'**Naming suggestion**: Use a combination of letters, digits, and underscores (such as `blocked_page_v2`) for easy reference in rules. The character set, maximum length, and uniqueness constraints are subject to the server-side naming conventions for custom pages. If this parameter is not specified, the original name is retained.', 'type' => 'string', 'required' => true, 'example' => 'example'], ], [ 'name' => 'Description', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The description of the page after the update. This is used to identify the purpose of the page in the console list. This is an optional field. If this parameter is not specified, the original description is retained. The maximum field length is subject to the server-side limit.', 'type' => 'string', 'required' => true, 'example' => 'a custom deny page'], ], [ 'name' => 'ContentType', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The MIME type of the page content, which is returned to the client as the HTTP `Content-Type` response header when a rule is matched.'."\n" ."\n" .'**Common values**:'."\n" .'- `text/html`: HTML page'."\n" .'- `application/json`: JSON response'."\n" ."\n" .'> The complete set of supported values is subject to the server-side specification. The actual format of `Content` must match this field. A mismatch may cause browser rendering issues.', 'type' => 'string', 'required' => true, 'example' => 'text/html'], ], [ 'name' => 'Content', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The BASE64-encoded page content, which must be consistent with `ContentType`.'."\n" ."\n" .'**Encoding method**:'."\n" .'1. Convert the original page content to a UTF-8 byte string.'."\n" .'2. Encode the byte string using standard BASE64 encoding.'."\n" ."\n" .'**Example**: `hello page` → `PGh0bWw+aGVsbG8gcGFnZTwvaHRtbD4=`'."\n" ."\n" .'> The maximum size limit is subject to the server-side custom page specification. If this parameter is not specified, the original page content is retained.', 'type' => 'string', 'required' => true, 'example' => 'PGh0bWw+aGVsbG8gcGFnZTwvaHRtbD4='], ], [ 'name' => 'SiteIds', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The list of site IDs associated with this page after the update. This parameter uses full overwrite semantics.'."\n" ."\n" .'- You can obtain site IDs by calling the `ListSites` operation.'."\n" .'- Passing an empty list dissociates all sites from the page.'."\n" .'- Including a site ID that does not belong to your account returns an `InvalidParameter` error.', 'type' => 'array', 'items' => ['title' => '', 'description' => 'The associated site ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'required' => false], 'required' => false, 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], 403 => [ ['errorCode' => '%s.NotSupport', 'errorMessage' => 'The specified resource type %s is not supported.', 'description' => 'The specified resource type is not supported. To use this type of resource, please contact us.'], ['errorCode' => '%s.OverQuota', 'errorMessage' => 'The quantity of %s exceeds the quota.', 'description' => 'The amount of this resource exceeds the quota. If you need to apply for more quota, please contact us.'], ['errorCode' => '%s.WrongValueMatched', 'errorMessage' => 'The value of specified parameter %s can not pass the matching check.', 'description' => 'The value of the specified parameter can not pass the matching check. If you determine that you need to use this parameter value, please contact us.'], ['errorCode' => 'Page.NotExist', 'errorMessage' => 'The specified custom error page does not exist or is not recognized by the system.Check whether the error page identifier is correct and matches an error page that has been created and registered in the system\'s error handling framework.If you want to create a new error page, make sure that the creation process is complete.', 'description' => 'The specified custom error page does not exist or is not recognized by the system.Check whether the error page identifier is correct and matches an error page that has been created and registered in the system\'s error handling framework.If you want to create a new error page, make sure that the creation process is complete.'], ['errorCode' => 'Page.SiteAlreadyBound', 'errorMessage' => 'The specified site has already been associated with another custom error page of the same type. Dissociate the site from the existing page and try again.', 'description' => 'The specified site is already bound to another custom response page of the same type. Please first unbind the site from the existing page and then try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\"\\n}","type":"json"}]', 'title' => 'Update a custom response page', 'changeSet' => [ ['createdAt' => '2024-12-26T15:07:29.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-09-25T07:02:48.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T06:13:39.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdatePage'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdatePage', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'UpdatePerformanceDataCollection' => [ 'summary' => 'Modifies the web data quality collection configuration.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '264793', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can obtain the ID by calling the [ListSites](~~ListSites~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '34003500310****', 'title' => ''], ], [ 'name' => 'Enable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable quality data collection. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'required' => true, 'enum' => ['on', 'off'], 'example' => 'on', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-280B-72F8FD6DA2FE'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'title' => 'Modify web data quality collection configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdatePerformanceDataCollection'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdatePerformanceDataCollection', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-280B-72F8FD6DA2FE\\"\\n}","type":"json"}]', ], 'UpdateRatePlanSpec' => [ 'summary' => 'Modifies the specifications of a plan by calling UpdateRatePlanSpec.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239593', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'xcdn-91fknmb80f0g', 'title' => ''], ], [ 'name' => 'TargetPlanName', 'in' => 'query', 'schema' => ['description' => 'The name of the target plan.'."\n" ."\n" .'Alibaba Cloud China Website (www.aliyun.com)'."\n" ."\n" .'- Free Edition: entranceplan'."\n" .'- Basic Edition: basic'."\n" .'- Standard Edition: medium'."\n" .'- Premium Edition: high'."\n" ."\n" .'Alibaba Cloud International Website (www.alibabacloud.com)'."\n" ."\n" .'- Entrance: entranceplan_intl'."\n" .'- Pro: basicplan_intl'."\n" .'- Premium: vipplan_intl.', 'type' => 'string', 'required' => false, 'example' => 'basic', 'title' => ''], ], [ 'name' => 'TargetPlanCode', 'in' => 'query', 'schema' => ['description' => 'The code of the target plan.'."\n" ."\n" .'Alibaba Cloud China Website (www.aliyun.com)'."\n" ."\n" .'- Free Edition: entranceplan'."\n" .'- Basic Edition: basicplan'."\n" .'- Standard Edition: standardplan'."\n" .'- Premium Edition: advancedplan'."\n" ."\n" .'Alibaba Cloud International Website (www.alibabacloud.com)'."\n" ."\n" .'- Entrance: entranceplan'."\n" .'- Pro: standardplan'."\n" .'- Premium: advancedpla.', 'type' => 'string', 'required' => false, 'example' => 'entranceplan', 'title' => ''], ], [ 'name' => 'OrderType', 'in' => 'query', 'schema' => [ 'description' => 'The type of specification change. Valid values:'."\n" .'- UPGRADE: Upgrade.', 'enumValueTitles' => ['UPGRADE' => 'Upgrade.'], 'type' => 'string', 'enum' => ['UPGRADE'], 'required' => false, 'example' => 'UPGRADE', 'title' => '', ], ], [ 'name' => 'ChargeType', 'in' => 'query', 'schema' => ['description' => 'The billing type. Valid values:'."\n" .'- PREPAY: Subscription.'."\n" .'- POSTPAY: Pay-as-you-go.', 'type' => 'string', 'required' => false, 'example' => 'PREPAY', 'title' => ''], ], [ 'name' => 'AutoPay', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable automatic payment.', 'type' => 'boolean', 'default' => 'false', 'required' => false, 'example' => 'true', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response structure.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '30423A7F-A83D-1E24-B80E-86DD25790758'."\n"], 'OrderId' => ['description' => 'The order ID.', 'type' => 'string', 'example' => '2223332122***', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'xcdn-as23ds***', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'CheckPlanFailed', 'errorMessage' => 'Invalid plan name or code. Check and try again.', 'description' => 'Invalid plan name or code. Check and try again.'], ['errorCode' => 'InvalidSiteICP', 'errorMessage' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.', 'description' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.'], ['errorCode' => 'InvalidSiteName', 'errorMessage' => 'Invalid website name. Check and try again.', 'description' => 'Invalid website name. Check and try again.'], ['errorCode' => 'SYSTEM.NoSpecificCodeFailed', 'errorMessage' => 'Invalid subscription duration. Check and try again.', 'description' => 'Invalid subscription duration. Check and try again.'], ['errorCode' => 'Order.InstanceHasUnpaidOrder', 'errorMessage' => 'You have an unpaid order. Complete the payment or cancel the order first.', 'description' => 'You have an unpaid order. Complete the payment or cancel the order first.'], ['errorCode' => 'InvalidInstance', 'errorMessage' => 'The instance ID is missing or invalid. Make sure that the instance ID is valid and try again.', 'description' => 'The instance ID is missing or invalid. Make sure that the instance ID is valid and try again.'], ['errorCode' => 'InsufficientBalance', 'errorMessage' => 'Your account balance is insufficient.', 'description' => 'Your account balance is insufficient, please recharge before purchasing.'], ['errorCode' => 'InsufficientAvailableQuota', 'errorMessage' => 'Your account balance is insufficient.', 'description' => 'Your account is in arrears, please pay the arrears before purchasing.'], ['errorCode' => 'UpdowngradeConfigNoChange', 'errorMessage' => 'Failed to change the configuration because the new configuration you specified is the same as the current one in use. Specify a correct configuration and try again.', 'description' => 'The configuration for the upgrade or downgrade is not changed.'], ['errorCode' => 'InvalidComponent', 'errorMessage' => 'The order parameters is invalid.', 'description' => 'The order parameters is invalid.'], ['errorCode' => 'RamAuthFailed', 'errorMessage' => 'The sub-account has no operation permission.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"30423A7F-A83D-1E24-B80E-86DD25790758\\\\n\\",\\n \\"OrderId\\": \\"2223332122***\\",\\n \\"InstanceId\\": \\"xcdn-as23ds***\\"\\n}","type":"json"}]', 'title' => 'Change plan specifications', 'changeSet' => [ ['createdAt' => '2024-09-18T06:13:39.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateRatePlanSpec'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:UpdateRatePlanSpec', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'UpdateRecord' => [ 'summary' => 'Updates a DNS record. Various record types and origin authentication configurations are supported.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239650', 'abilityTreeNodes' => ['FEATUREdcdnVFT29S'], ], 'parameters' => [ [ 'name' => 'RecordId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The ID of the record. You can call [ListRecords](~~2850265~~) to obtain the record ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'Ttl', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The time-to-live (TTL) of the record, in seconds. Valid values: **30 to 86400**, or 1. A value of 1 indicates that the TTL of the record is automatically determined.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '30', 'title' => ''], ], [ 'name' => 'Proxied', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'Specifies whether to enable proxy acceleration for the record. Only CNAME records and A/AAAA records support proxy acceleration. Valid values:'."\n" .'- **true**: Enable proxy acceleration.'."\n" .'- **false**: Disable proxy acceleration.', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ 'name' => 'Type', 'in' => 'query', 'schema' => ['description' => 'The DNS type of the record, such as A/AAAA, CNAME, or TXT.', 'type' => 'string', 'required' => false, 'example' => 'A/AAAA', 'title' => ''], ], [ 'name' => 'Data', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The DNS information of the record. The content varies depending on the record type. For more information, see [documentation](~~2708761~~)[documentation](https://www.alibabacloud.com/help/doc-detail/2708761.html).', 'type' => 'object', 'properties' => [ 'Value' => ['description' => 'The record value or partial content. This parameter is required when you add A/AAAA, CNAME, NS, MX, TXT, CAA, SRV, or URI records. The meaning varies depending on the record type:'."\n" ."\n" .'- **A/AAAA**: The IP address to which the record points. Separate multiple IP addresses with commas (,). At least one IPv4 address is required.'."\n" .'- **CNAME**: The target domain name to which the record points.'."\n" .'- **NS**: The name server for the specified domain name.'."\n" .'- **MX**: A valid target mail server domain name.'."\n" .'- **TXT**: A valid text string.'."\n" .'- **CAA**: A valid certification authority domain name.'."\n" .'- **SRV**: A valid target host domain name.'."\n" .'- **URI**: A valid URI string.', 'type' => 'string', 'required' => false, 'example' => 'example.com', 'title' => ''], 'Priority' => ['description' => 'The priority of the record. Valid values: **0 to 65535**. A smaller value indicates a higher priority. This parameter is required when you add MX, SRV, or URI records.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], 'Flag' => ['description' => 'The flag of the record. The Flag of a CAA record indicates its priority and processing method. Valid values: **0 to 255**. This parameter is required when you add CAA records.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '128', 'title' => ''], 'Tag' => ['description' => 'The tag of the record. The Tag of a CAA record indicates its specific type and purpose. This parameter is required when you add CAA records.', 'type' => 'string', 'required' => false, 'example' => 'issue', 'title' => ''], 'Weight' => ['description' => 'The weight of the record. Valid values: **0 to 65535**. This parameter is required when you add SRV or URI records.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], 'Port' => ['description' => 'The port of the record. Valid values: **0 to 65535**. This parameter is required when you add SRV records.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], 'Type' => ['description' => 'The certificate type of the record (for CERT records) or the public key type (for SSHFP records). This parameter is required when you add CERT or SSHFP records.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], 'KeyTag' => ['description' => 'The public key identifier of the record. Valid values: **0 to 65535**. This parameter is required when you add CERT records.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], 'Algorithm' => ['description' => 'The encryption algorithm used by the record. Valid values: **0 to 255**. This parameter is required when you add CERT or SSHFP records.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], 'Certificate' => ['description' => 'The public key certificate information of the record. This parameter is required when you add CERT, SMIMEA, or TLSA records.', 'type' => 'string', 'required' => false, 'example' => 'dGVzdGFkYWxrcw==', 'title' => ''], 'Usage' => ['description' => 'The usage identifier of the record. Valid values: **0 to 255**. This parameter is required when you add SMIMEA or TLSA records.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], 'Selector' => ['description' => 'The type of certificate or public key used by the record. Valid values: **0 to 255**. This parameter is required when you add SMIMEA or TLSA records.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], 'MatchingType' => ['description' => 'The algorithm policy used by the record for matching or verifying certificates. Valid values: **0 to 255**. This parameter is required when you add SMIMEA or TLSA records.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], 'Fingerprint' => ['description' => 'The public key fingerprint value of the record. This parameter is required when you add SSHFP records.', 'type' => 'string', 'required' => false, 'example' => 'abcdef1234567890', 'title' => ''], ], 'required' => true, 'example' => '{'."\n" .' "value":"2.2.2.2"'."\n" .'}', 'title' => '', ], ], [ 'name' => 'SourceType', 'in' => 'query', 'schema' => ['description' => 'The origin server type of the CNAME record. This parameter is required when you add a CNAME record. Valid values:'."\n" ."\n" .'- **OSS**: OSS origin server.'."\n" .'- **S3**: S3 origin server.'."\n" .'- **LB**: load balancing origin server.'."\n" .'- **OP**: IPAM pool origin server.'."\n" .'- **Domain**: standard domain name origin server.'."\n" ."\n" .'If this parameter is not specified or is left empty, the default value is Domain, which indicates a standard domain name origin server type.', 'type' => 'string', 'required' => false, 'example' => 'OSS', 'title' => ''], ], [ 'name' => 'BizName', 'in' => 'query', 'schema' => ['description' => 'The business scenario for record acceleration. This parameter is not required for records without acceleration enabled. Valid values:'."\n" .'- **video_image**: video and image.'."\n" .'- **api**: API.'."\n" .'- **web**: web page.', 'type' => 'string', 'required' => false, 'example' => 'web', 'title' => ''], ], [ 'name' => 'Comment', 'in' => 'query', 'schema' => ['description' => 'The comment for the record.', 'type' => 'string', 'required' => false, 'example' => 'This is a remark.', 'title' => ''], ], [ 'name' => 'AuthConf', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The origin authentication information of the CNAME record.', 'type' => 'object', 'properties' => [ 'AuthType' => ['description' => 'The origin authentication type. Different origin server types support different authentication types. The origin server type refers to the SourceType parameter in this operation. When the origin server type is OSS or S3, you must specify the origin authentication type. Valid values:'."\n" ."\n" .'- **public**: public read. Select this value when the origin server type is OSS or S3 and the origin server allows public read access.'."\n" .'- **private**: private read. Select this value when the origin server type is S3 and the origin server allows only private read access.'."\n" .'- **private_same_account**: private same-account read. Select this value when the origin server type is OSS, the origin server is under the same Alibaba Cloud account, and the origin server allows only private read access.', 'type' => 'string', 'required' => false, 'example' => 'private', 'title' => ''], 'SecretKey' => ['description' => 'The SecretKey of the account to which the origin server belongs. This parameter is required when the origin server type is OSS and the origin authentication type is private cross-account read, or when the origin server type is S3 and the origin authentication type is private read.', 'type' => 'string', 'required' => false, 'example' => 'u0Nkg5gBK*******QF5wvKMM504JUHt', 'title' => ''], 'AccessKey' => ['description' => 'The AccessKey of the account to which the origin server belongs. This parameter is required when the origin server type is OSS and the origin authentication type is private cross-account read, or when the origin server type is S3 and the origin authentication type is private read.', 'type' => 'string', 'required' => false, 'example' => 'VIxuvJSA2S03f******kp208dy5w7', 'title' => ''], 'Region' => ['description' => 'The signature algorithm version. This parameter is required when the origin server type is S3 and the origin authentication type is private read. Valid values:'."\n" ."\n" .'- **v2**'."\n" ."\n" .'- **v4**'."\n" ."\n" .'Default value: v4.', 'type' => 'string', 'required' => false, 'example' => 'v2', 'title' => ''], 'Version' => ['description' => 'The region to which the origin server belongs. This parameter is required when the origin server type is S3. Obtain the region from the official S3 website.', 'type' => 'string', 'required' => false, 'example' => 'us-east-1', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'HostPolicy', 'in' => 'query', 'schema' => [ 'description' => 'The back-to-origin HOST policy. This parameter takes effect when the record type is CNAME. Settings the HOST policy for back-to-origin requests. Valid values:'."\n" ."\n" .'- **follow_hostname**: follows the host record.'."\n" .'- **follow_origin_domain**: follows the Origin Domain Name.', 'type' => 'string', 'enum' => [], 'required' => false, 'example' => 'follow_origin_domain', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'NoPermission', 'errorMessage' => 'You do not have permissions to access or operate on the resource.Contact your account administrator to attach the AliyunESAFullAccess policy to the current user.', 'description' => 'You do not have permissions to access or operate on the resource.Contact your account administrator to attach the AliyunESAFullAccess policy to the current user.'], ['errorCode' => 'InvalidParameter.RecordData', 'errorMessage' => 'Invalid record content. Adjust your configurations based on the API documentation.', 'description' => 'Invalid record content. Adjust your configurations based on the API documentation.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'Record.Reserved', 'errorMessage' => 'Another operation on the record is in progress. Try again later.', 'description' => 'Another operation on the record is in progress. Try again later.'], ['errorCode' => 'Record.ServiceBusy', 'errorMessage' => 'The record is being configured. Try again later.', 'description' => 'The record is being configured. Try again later.'], ['errorCode' => 'Record.Conflict', 'errorMessage' => 'The specified record content conflicts with existing records. Adjust your configurations based on the related product documentation.', 'description' => 'The specified record content conflicts with existing records. Adjust your configurations based on the related product documentation.'], ['errorCode' => 'SourceCircleExist', 'errorMessage' => 'The host record of the resource to be operated on is already the source station of another resource, or the source station of the current resource has been added as a host record. To avoid loopback, modify the host record or source station and retry.', 'description' => 'The host record of the resource to be operated on is already the source station of another resource, or the source station of the current resource has been added as a host record. To avoid loopback, modify the host record or source station and retry.'], ['errorCode' => 'InvalidParameter.InvalidBiz', 'errorMessage' => 'The incoming parameter value of the business type is empty or incorrect.', 'description' => 'The incoming parameter value of the business type is empty or incorrect.'], ['errorCode' => 'Record.RecordValueContainSourceInBlacklist', 'errorMessage' => 'The record value contains the blacklist address, and the details can be submitted for work order consultation.', 'description' => 'The record value contains the blacklist address, and the details can be submitted for work order consultation.'], ['errorCode' => 'InvalidParameter.InvalidRecordNameSuffix', 'errorMessage' => 'If you add other records, the suffix of the host record must be the same as the site name.', 'description' => 'If you add another record, the suffix of the host record must be the same as the site name. Please adjust and try again.'], ['errorCode' => 'InvalidParameter.RecordNameExceedLimit', 'errorMessage' => 'The length of the record name exceeds the maximum limit.', 'description' => 'The record name cannot exceed 200 characters.'], ['errorCode' => 'InvalidParameter.InvalidHostPolicy', 'errorMessage' => 'The host parameter in the origin fetch request is invalid.', 'description' => 'The host parameter in the origin fetch request is invalid.'], ['errorCode' => 'InvalidParameter.CnameSiteRecordUnsupport', 'errorMessage' => 'The current record type is not supported for a website connected by CNAME setup.', 'description' => 'You can only add A/AAAA and CNAME records to a website connected by CNAME setup.'], ['errorCode' => 'InvalidParameter.RecordCommentExceedLimit', 'errorMessage' => 'The number of incoming record comment exceeds the maximum limit.', 'description' => 'The record comment information is greater than 50 characters.'], ['errorCode' => 'QuotaExceed.WildCardRecord', 'errorMessage' => 'The number of wildcard records exceeds the plan quota. Contact the sales team to increase your quota.', 'description' => 'The number of wildcard records exceeds the plan quota. Contact the sales team to increase your quota.'], ['errorCode' => 'Record.AorAAAARecordValueContainInvalidIP', 'errorMessage' => 'The A/AAAA record value contains the invalid IP.', 'description' => 'When creating or editing an A/AAAA record, the record value contains an invalid IP.'], ['errorCode' => 'Record.AorAAAARecordValueIPExceedLimit', 'errorMessage' => 'The number of IP addresses exceeds the limit for the A/AAAA record.', 'description' => 'When creating or editing A/AAAA records, the number of IP addresses exceeds the limit. A host record only supports 8 IPv4 and 4 IPv6 IP addresses. Please adjust and try again.'], ['errorCode' => 'Record.CAARecordFlagExceedLimit', 'errorMessage' => 'The value of the flag parameter for a CAA record is out of range.', 'description' => 'The value of the flag parameter for a CAA record is out of range while creating or editing DNS record information.'], ['errorCode' => 'Record.CAARecordTagExceedLimit', 'errorMessage' => 'The CAA record tag has illegal characters other than issue, issuewild, and iodef.', 'description' => 'When creating or editing CAA records, illegal characters other than issue, issuewild, and iodef are passed in the tag value.'], ['errorCode' => 'Record.CERTRecordAlgorithmExceedLimit', 'errorMessage' => 'The value of the algorithm parameter for the CERT record is out of range.', 'description' => 'The value of the algorithm parameter for the CERT record is out of range while creating or editing DNS record information.'], ['errorCode' => 'Record.CERTRecordKeyTagExceedLimit', 'errorMessage' => 'The value of the keyTag parameter for a CERT record is out of range.', 'description' => 'The value of the keyTag parameter for a CERT record is out of range when creating or editing DNS record information.'], ['errorCode' => 'Record.CERTRecordTypeExceedLimit', 'errorMessage' => 'The CERT record type is out of range.', 'description' => 'The CERT record type parameter was out of range when creating or editing DNS record information.'], ['errorCode' => 'Record.CNameRecordValueCannotEqualExistedIPASource', 'errorMessage' => 'The CNAME record cannot be the origin of the added Layer 4 application. Check the values of other Layer 4 proxy records and try again.', 'description' => 'The CNAME record cannot be the origin of the added Layer 4 application. Check the values of other Layer 4 proxy records and try again.'], ['errorCode' => 'Record.CNameRecordValueCannotEqualExistedPoolSource', 'errorMessage' => 'The CNAME record cannot be the origin of the added source address pool. Check and try again.', 'description' => 'The CNAME record cannot be the origin of the added source address pool. Check and try again.'], ['errorCode' => 'Record.CNameRecordValueCannotEqualExistedRecordSource', 'errorMessage' => 'The CNAME record cannot be the origin of an added record. Check the record values of other records and try again.', 'description' => 'The CNAME record cannot be the origin of an added record. Check the record values of other records and try again.'], ['errorCode' => 'Record.CNameRecordValueCannotEqualOtherExistedIPARecord', 'errorMessage' => 'The record value of a CNAME record cannot be exactly the same as the name of another existing Layer 4 proxy record.', 'description' => 'The record value of a CNAME record cannot be exactly the same as the name of another existing Layer 4 proxy record.'], ['errorCode' => 'Record.CNameRecordValueCannotEqualOtherExistedRecord', 'errorMessage' => 'The record value of a CNAME record cannot be the same as the name of another existing CNAME record.', 'description' => 'The record value of a CNAME record cannot be the same as the name of another existing CNAME record.'], ['errorCode' => 'Record.CNameRecordValueCannotEqualHostRecord', 'errorMessage' => 'The record value of the CNAME record cannot be exactly the same as the host record.', 'description' => 'The record value of the CNAME record cannot be exactly the same as the host record. Please adjust and try again.'], ['errorCode' => 'Record.CNameRecordValueExceedLimit', 'errorMessage' => 'The CNAME record value cannot exceed 253 characters, please delete and try again.', 'description' => 'The record value cannot exceed 253 characters, please delete and try again.'], ['errorCode' => 'Record.CNameRecordValueInvalidDomainUnderline', 'errorMessage' => 'Record values (DNS-only records) generally start with an underscore, a lowercase letter a-z, and the numbers 0-9. The middle part of the record can be lowercase letters, numbers, or hyphens, and the length is between 0 and 61 characters.', 'description' => 'Record values (DNS-only records) generally start with an underscore, a lowercase letter a-z, and the numbers 0-9. The middle part of the record can be lowercase letters, numbers, or hyphens, and the length is between 0 and 61 characters.'], ['errorCode' => 'Record.CNameRecordValueInvalidRecordDomain', 'errorMessage' => 'Record values (records with agent acceleration enabled) must start with a lowercase letter a-z and numbers 0-9. The middle part of the record can be lowercase letters, numbers, or hyphens, and the length is between 0 and 61 characters.', 'description' => 'Record values (records with agent acceleration enabled) must start with a lowercase letter a-z and numbers 0-9. The middle part of the record can be lowercase letters, numbers, or hyphens, and the length is between 0 and 61 characters.'], ['errorCode' => 'Record.EmptyRecordValue', 'errorMessage' => 'The record value is empty, please fill it in correctly and try again.', 'description' => 'The record value is empty, please fill it in correctly and try again.'], ['errorCode' => 'Record.InvalidCertEncodeWithCERTRecord', 'errorMessage' => 'The certificate value of the CERT record is not base64-encoded.', 'description' => 'When you create or edit CERT record information, the certificate value of the CERT record is not base64-encoded.'], ['errorCode' => 'Record.InvalidFingerprintWithSSHFPRecord', 'errorMessage' => 'The SSHFP record fingerprint value is not hexadecimal encoded.', 'description' => 'When creating or editing SSHFP record information, the fingerprint value is not hexadecimal encoded.'], ['errorCode' => 'Record.InvalidIssueDataWithCAARecordTag', 'errorMessage' => 'The tag of a CAA record can only be a semicolon or a valid domain name separated by semicolons.', 'description' => 'When creating or editing CAA record information, the tag tag of a CAA record can only be a semicolon or a valid domain name separated by semicolons.'], ['errorCode' => 'Record.InvalidMailAddressWithCAARecordTag', 'errorMessage' => 'The CAA record tag is prefixed with mailto:, it must be followed by a legal email address.', 'description' => 'When creating or editing CAA record information, when Tag is iodef and Value is prefixed with mailto:, it must be followed by a legal email address.'], ['errorCode' => 'Record.InvalidSmimeaEncodeWithSMIMEARecord', 'errorMessage' => 'The certificate value of the SMIMEA record is not base64-encoded.', 'description' => 'When creating or editing SMIMEA record information, the certificate value of the SMIMEA record is not base64-encoded.'], ['errorCode' => 'Record.InvalidTslaEncodeWithTSLARecord', 'errorMessage' => 'The certificate value passed in is not hexadecimal encoded with TSLA record.', 'description' => 'When creating or editing TLSA record information, the certificate value passed in is not hexadecimal encoded.'], ['errorCode' => 'Record.InvalidURLWithURIRecord', 'errorMessage' => 'The URI record value must be a valid URL address.', 'description' => 'When creating or editing URI record information, the record value must be a valid URL address.'], ['errorCode' => 'Record.NoRecordNameConflictWithNSRecord', 'errorMessage' => 'No record name can conflict with an NS record name.', 'description' => 'No record name can conflict with an NS record name.'], ['errorCode' => 'Record.NSRecordCannotEqualSiteName', 'errorMessage' => 'An NS record with the exact same name as the site name is not allowed.', 'description' => 'Adding an NS record with the exact same name as the site name is not allowed.'], ['errorCode' => 'Record.OSSSourceInvalidAuthType', 'errorMessage' => 'The recorded OSS origin station authentication type is not supported.', 'description' => 'The recorded OSS origin station authentication type is not supported.'], ['errorCode' => 'Record.ParseJSONRecordValueFailed', 'errorMessage' => 'The JSON data format of the record data is incorrect. Please adjust and try again.', 'description' => 'The JSON data format of the record data is incorrect. Please adjust and try again.'], ['errorCode' => 'Record.PoolSourceNotExistPool', 'errorMessage' => 'If the source station type of the record is source address pool, the input source address pool does not exist.', 'description' => 'If the source station type of the record is source address pool, the input source address pool does not exist.'], ['errorCode' => 'Record.RecordNameConflictForSpecifiedRecordType', 'errorMessage' => 'The A/AAAA and CNAME records cannot have the same name.', 'description' => 'The A/AAAA and CNAME records cannot have the same name.'], ['errorCode' => 'Record.RecordNameConflictWithIPAName', 'errorMessage' => 'The record name cannot have the same name as the Layer 4 proxy record.', 'description' => 'When you create or edit DNS record information, the record name cannot have the same name as the Layer 4 proxy record.'], ['errorCode' => 'Record.RecordNameConflictWithLBName', 'errorMessage' => 'The record name cannot be the same as the Server Load Balancer record name.', 'description' => 'When creating or editing DNS record information, the record name cannot be the same as the Server Load Balancer record name.'], ['errorCode' => 'Record.RecordNameConflictWithNSRecord', 'errorMessage' => 'The NS record name cannot be the same as any other type of record name.', 'description' => 'When creating or editing DNS record information, the NS record name cannot be the same as any other type of record name.'], ['errorCode' => 'Record.RecordNameConflictWithPoolName', 'errorMessage' => 'The record name cannot be the same as the source address pool record name.', 'description' => 'When creating or editing DNS record information, the record name cannot be the same as the source address pool record name.'], ['errorCode' => 'Record.RecordNameInBlacklist', 'errorMessage' => 'The record name is in blacklist.', 'description' => 'The record name is in the blacklist and cannot be added.'], ['errorCode' => 'Record.S3SourceInvalidAuthRegion', 'errorMessage' => 'The recorded S3 origin belongs to a region that is not in the supported range.', 'description' => 'The recorded S3 origin belongs to a region that is not in the supported range.'], ['errorCode' => 'Record.S3SourceInvalidAuthType', 'errorMessage' => 'The recorded S3 origin authentication type is not supported.', 'description' => 'The recorded S3 origin authentication type is not supported.'], ['errorCode' => 'Record.S3SourceInvalidAuthVersion', 'errorMessage' => 'The version of the authentication signature algorithm of the S3 origin is not supported.', 'description' => 'The version of the authentication signature algorithm of the S3 origin is not supported.'], ['errorCode' => 'Record.SourceAccessKeyExceedLimit', 'errorMessage' => 'The character length of the AccessKey parameter value for the record source station is out of range.', 'description' => 'The character length of the AccessKey parameter value for the record source station is out of range.'], ['errorCode' => 'Record.SourceEmptyAK', 'errorMessage' => 'The AccessKey of the account to which the origin site belongs is empty.', 'description' => 'The AccessKey of the account to which the origin site belongs is empty.'], ['errorCode' => 'Record.SourceEmptyAuthConf', 'errorMessage' => 'The authentication information of the origin station is empty.', 'description' => 'The recorded authentication information of the origin station is empty.'], ['errorCode' => 'Record.SourceEmptySecretKey', 'errorMessage' => 'The SecretKey of the account to which the recorded origin site belongs is empty.', 'description' => 'The SecretKey of the account to which the recorded origin site belongs is empty.'], ['errorCode' => 'Record.SourceSecretKeyExceedLimit', 'errorMessage' => 'The character length of the SecretKey parameter value for the record source station is out of range.', 'description' => 'The character length of the SecretKey parameter value for the record source station is out of range.'], ['errorCode' => 'Record.SRVRecordInvalidRecordName', 'errorMessage' => 'SRV host record name is not valid. The SRV host record name must begin with an underscore (-) followed by a lowercase letter (a-z), a number (0-9), and a hyphen (-), followed by 1 arbitrary character, followed by an underscore (-) and a lowercase letter, number, or hyphen.', 'description' => 'SRV host record name is not valid. The SRV host record name must begin with an underscore (-), followed by a lowercase letter (a-z), number (0-9), hyphen (-), followed by any character, followed by an underscore (-) and a lowercase letter, number, or hyphen.'], ['errorCode' => 'Record.SRVRecordPortExceedLimit', 'errorMessage' => 'The SRV record port is out of range.', 'description' => 'When creating or editing DNS record information, the SRV record port filled in is out of range.'], ['errorCode' => 'Record.SSHFPRecordAlgorithmExceedLimit', 'errorMessage' => 'The algorithm parameter value for the SSHFP record is out of range.', 'description' => 'The algorithm parameter value for the SSHFP record is out of range while creating or editing DNS record information.'], ['errorCode' => 'Record.TTLExceedLimit', 'errorMessage' => 'The TTL parameter value for a record is out of range.', 'description' => 'The TTL parameter value for a record is out of range while creating or editing DNS record information.'], ['errorCode' => 'Record.TXTRecordValueExceedLimit', 'errorMessage' => 'The TXT record value cannot exceed 450 characters.', 'description' => 'When you create or edit DNS record information, the TXT record value cannot exceed 450 characters.'], ['errorCode' => 'Record.TypeExceedLimitWithSSHFPRecord', 'errorMessage' => 'The SSHFP record Type parameter value is out of range.', 'description' => 'The SSHFP record Type parameter value is out of range while creating or editing DNS record information.'], ['errorCode' => 'Record.UnmatchedRecordNameContainDoubleConsecutiveDot', 'errorMessage' => 'Illegal host record name. The host record cannot contain consecutive dot.', 'description' => 'Illegal host record name. The host record cannot contain consecutive dot.'], ['errorCode' => 'Record.UnmatchedRecordNameForbidStarSev', 'errorMessage' => 'Illegal host record name, SRV record name disallowed asterisk.', 'description' => 'Illegal host record name, SRV record name disallowed asterisk.'], ['errorCode' => 'Record.UnmatchedRecordNameInvalidATChar', 'errorMessage' => 'Illegal host record name. The at symbol can only appear at the top of the host record and can only be followed. Symbol, other strings are not allowed.', 'description' => 'Illegal host record name. The \'@\' symbol can only appear at the top of the host record and can only be followed. Symbol, other strings are not allowed.'], ['errorCode' => 'Record.UnmatchedRecordNameInvalidNamePrefixSuffix', 'errorMessage' => 'Illegal host record name. Host record values cannot start or end with a dot, a hyphens.', 'description' => 'Illegal host record name. Host record values cannot start or end with a dot, a hyphens.'], ['errorCode' => 'Record.UnmatchedRecordNameInvalidStartSymbol', 'errorMessage' => 'Illegal host record name. The asterisk is only allowed in the first place of the host record, and only the following dot is allowed after the asterisk.', 'description' => 'Illegal host record name. The asterisk is only allowed in the first place of the host record, and only the following dot is allowed after the asterisk.'], ['errorCode' => 'Record.UnmatchedRecordNameSeperateStringTooLarge', 'errorMessage' => 'Illegal host record name. The number of characters in each segment separated by dot cannot exceed 63.', 'description' => 'Illegal host record name. The number of characters in each segment separated by \'.\' cannot exceed 63.'], ['errorCode' => 'Record.UnsupportedSourceType', 'errorMessage' => 'The recorded source station type is not in the supported range.', 'description' => 'The recorded source station type is not in the supported range.'], ['errorCode' => 'Record.UnsupportedType', 'errorMessage' => 'The record type parameter is unsupported.', 'description' => 'The record type parameter is incorrect. Please check the record type parameter.'], ['errorCode' => 'Record.ValidProxiedForSpecifedRecordType', 'errorMessage' => 'Only A/AAAA and CNAME types support proxy acceleration.', 'description' => 'When creating or editing a record, proxy acceleration is enabled in the proxy state. Only A/AAAA and CNAME types support proxy acceleration.'], ['errorCode' => 'Record.RecordUsageExceedLimit', 'errorMessage' => 'The usage parameter value filled in is out of range.', 'description' => 'When creating or editing DNS record information, the usage parameter value filled in is out of range.'], ['errorCode' => 'Record.RecordSelectorExceedLimit', 'errorMessage' => 'The selector parameter value filled in is out of range.', 'description' => 'While creating or editing DNS record information, the selector parameter value filled in is out of range.'], ['errorCode' => 'Record.RecordMatchingTypeExceedLimit', 'errorMessage' => 'The matchingType parameter value filled in is out of range.', 'description' => 'While creating or editing DNS record information, the matchingType parameter value filled in is out of range.'], ['errorCode' => 'Record.RecordPriorityExceedLimit', 'errorMessage' => 'The record priority parameter value filled in is out of range.', 'description' => 'When creating or editing DNS record information, the record priority parameter value filled in is out of range.'], ['errorCode' => 'Record.RecordWeightExceedLimit', 'errorMessage' => 'The record weight parameter value filled in is out of range.', 'description' => 'When creating or editing DNS record information, the record weight parameter value filled in is out of range.'], ['errorCode' => 'Record.RecordNameConflictWithSameRecordType', 'errorMessage' => 'Record conflicts with an existing host record that has the same name and value.', 'description' => 'Record conflicts with an existing host record that has the same name and value.'], ['errorCode' => 'Record.UnmatchedRecordNameInvalidUnderLine', 'errorMessage' => 'The host record name contains an illegal underscore. The underscore is only supported at the beginning of the TXT, CNAME, MX, SRV, and NS records. Proxy acceleration cannot be enabled, and records can only be added in the DNS mode.', 'description' => 'The host record name contains an illegal underscore. The underscore is only supported at the beginning of the TXT, CNAME, MX, SRV, and NS records. Proxy acceleration cannot be enabled, and records can only be added in the DNS mode.'], ['errorCode' => 'InvalidParameter.CnameSiteRecordNoProxied', 'errorMessage' => 'A non-proxied record was added for a website using a CNAME setup.', 'description' => 'A non-proxied record was added for a website using a CNAME setup.'], ['errorCode' => 'Record.UnmatchedRecordNameOnlyContainSymbol', 'errorMessage' => 'The host record value cannot exist separately in various symbols, and can be added with any lowercase letters or numbers.', 'description' => 'The host record value cannot exist separately in various symbols, and can be added with any lowercase letters or numbers.'."\n"], ['errorCode' => 'Record.InvalidIodefDataWithCAARecordTag', 'errorMessage' => 'The CAA record Tag value cannot start with mailto: or http:// or https.', 'description' => 'When creating or editing CAA record information, the Tag value cannot start with mailto: http:// or mailto: https.'], ['errorCode' => 'Record.WildcardConflictForSpecifiedRecordType', 'errorMessage' => 'The A/AAAA,CNAME records cannot add all and asterisk prefixed records at the same time.', 'description' => 'A/AAAA,CNAME records cannot add all and asterisk prefixed records at the same time.'], ['errorCode' => 'InvalidParameter.PrivateIpAsSourceUnsupported', 'errorMessage' => 'The provided source is an invalid private IP address. Please verify and resubmit.', 'description' => 'The provided source is an invalid private IP address. Please verify and resubmit.'], ['errorCode' => 'InvalidParameter.SourceIpInBlacklist', 'errorMessage' => 'The provided source is an invalid private IP address. Please verify and resubmit.', 'description' => 'The provided source is an invalid private IP address. Please verify and resubmit.'], ['errorCode' => 'SameNameRecordExceedLimit', 'errorMessage' => 'The number of records with the same name exceeds the upper limit.', 'description' => 'The number of records with the same name exceeds the upper limit.'], ['errorCode' => 'Record.UnmatchedRecordNameOnlyRangeChars', 'errorMessage' => 'Illegal host record character. Only lowercase a-z, uppercase A- Z, digits 0-9, some special characters are supported as valid characters in host records.', 'description' => 'Illegal host record character. Only lowercase a-z, uppercase A- Z, digits 0-9, \'-\', \'_\', \'.\', \'*\', and \'@\' are supported as valid characters in host records \',\' @ \'.'."\n"], ['errorCode' => 'Record.InvalidHTTPURLValueWithCAARecordTag', 'errorMessage' => 'The CAA record is prefixed with http:// or https://, it must be followed by a valid URL.', 'description' => 'When you create or edit a CAA record, if the Tag is `iodef` and the Value starts with `http://` or `https://`, it must be followed by a valid URL.'], ['errorCode' => 'Record.ProxiedAsCustomHostnameSource', 'errorMessage' => 'Failed to disable proxy the record because it is the origin server of existing custom hostnames.Remove all references to the record and try again.', 'description' => 'Failed to disable proxy the record because it is the origin server of existing custom hostnames.Remove all references to the record and try again.'], ], 404 => [ ['errorCode' => 'Record.NotFound', 'errorMessage' => 'The record does not exist. Check your configurations and try again.', 'description' => 'The record does not exist. Check your configurations and try again.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\"\\n}","type":"json"}]', 'title' => 'Update a DNS record', 'description' => 'This API operation allows you to update a DNS record, including but not limited to A/AAAA, CNAME, NS, MX, TXT, CAA, SRV, and URI record types. You can modify the record content by specifying the corresponding record value, priority, flag, and other fields. For CNAME origin servers that require authentication, such as OSS and S3, this API operation also supports configuring origin authentication information to ensure secure access.'."\n" ."\n" .'### Before you begin'."\n" ."\n" .'- The record value (Value) must match the record type. For example, a CNAME record must correspond to a target domain name.'."\n" .'- Certain record types, such as MX and SRV, require a priority (Priority) value.'."\n" .'- CAA records require specific fields such as Flag and Tag.'."\n" .'- When updating security records such as CERT and SSHFP, accurately set the Type, Algorithm, and other fields.'."\n" .'- When using OSS or S3 as the origin server, configure the authentication details in AuthConf based on the permission settings.', 'requestParamsDescription' => 'The Data field of the record contains the DNS information of the record. The content varies depending on the record type. For more information, see [documentation](https://help.aliyun.com/document_detail/2708761.html)[documentation](https://www.alibabacloud.com/help/doc-detail/2708761.html).', 'changeSet' => [ ['createdAt' => '2025-06-10T06:18:46.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-10-10T12:01:10.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2024-09-24T08:28:18.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-23T08:53:22.000Z', 'description' => 'Error codes changed, Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateRecord'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateRecord', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'UpdateRedirectRule' => [ 'summary' => 'Modifies the redirect configuration of a site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257658', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID. You can call the [ListRedirectRules](~~2867474~~) operation to obtain the configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '3528160969****', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The rule name. This parameter is not required when you add a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable the rule. This parameter is not required when you add a global configuration. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The rule content. A conditional expression is used to match user requests. This parameter is not required when you add a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: Set the value to true.'."\n" .'- Match specified requests: Set the value to a custom expression, such as (http.host eq \\"video.example.com\\").', 'type' => 'string', 'required' => false, 'example' => '(http.host eq "video.example.com")', 'title' => ''], ], [ 'name' => 'Type', 'in' => 'query', 'schema' => [ 'description' => 'The redirect type. Valid values:'."\n" ."\n" .'- static: static pattern.'."\n" .'- dynamic: dynamic pattern.', 'enumValueTitles' => ['static' => 'Static mode.', 'dynamic' => 'Dynamic pattern.'], 'type' => 'string', 'enum' => ['static', 'dynamic'], 'required' => false, 'example' => 'static', 'title' => '', ], ], [ 'name' => 'TargetUrl', 'in' => 'query', 'schema' => ['description' => 'The target URL after the redirect.', 'type' => 'string', 'required' => false, 'example' => 'http://www.exapmle.com/index.html'."\n", 'title' => ''], ], [ 'name' => 'StatusCode', 'in' => 'query', 'schema' => [ 'description' => 'The HTTP status code used when the node responds to the client with the redirect address. Valid values:'."\n" ."\n" .'- 301'."\n" .'- 302'."\n" .'- 303'."\n" .'- 307'."\n" .'- 308', 'enumValueTitles' => [], 'type' => 'string', 'enum' => ['301', '302', '303', '307', '308'], 'required' => false, 'example' => '301', 'title' => '', ], ], [ 'name' => 'ReserveQueryString', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to preserve the query string. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The execution order of the rule. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CB1A380B-09F0-41BB-A198-72F8FD6DA2FE'."\n"], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ['errorCode' => 'VerifyExpressionError', 'errorMessage' => 'Dynamic expression is invalid.', 'description' => 'Dynamic expression is invalid.'], ['errorCode' => 'QuotaCheckFailed.FunctionArg', 'errorMessage' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.', 'description' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-A198-72F8FD6DA2FE\\\\n\\"\\n}","type":"json"}]', 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Update redirect configuration', 'changeSet' => [ ['createdAt' => '2025-04-10T07:02:38.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2025-03-27T02:58:48.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateRedirectRule'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateRedirectRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UpdateRewriteUrlRule' => [ 'summary' => 'Modifies the URL rewrite configuration of a site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257642', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID. You can call the [ListRewriteUrlRules](~~2867480~~) operation to obtain the configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '3528160969****', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The rule name. This parameter is not required when you add a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'example=123'."\n", 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => [ 'description' => 'The rule switch. This parameter is not required when you add a global configuration. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The rule content. A conditional expression is used to match user requests. This parameter is not required when you add a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: Set the value to true.'."\n" .'- Match specified requests: Set the value to a custom expression, for example, (http.host eq \\"video.example.com\\").', 'type' => 'string', 'required' => false, 'example' => '(http.host eq "video.example.com")', 'title' => ''], ], [ 'name' => 'RewriteUriType', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => [ 'description' => 'The path rewrite type. Valid values:'."\n" .'- static: static pattern.'."\n" .'- dynamic: dynamic pattern.', 'enumValueTitles' => ['static' => 'Static mode.', 'dynamic' => 'Dynamic pattern.'], 'type' => 'string', 'enum' => [], 'required' => false, 'example' => 'static', 'title' => '', ], ], [ 'name' => 'Uri', 'in' => 'query', 'schema' => ['description' => 'The target URI after rewriting.', 'type' => 'string', 'required' => false, 'example' => '/image/example.jpg'."\n", 'title' => ''], ], [ 'name' => 'RewriteQueryStringType', 'in' => 'query', 'schema' => [ 'description' => 'The query character string rewrite type. Valid values:'."\n" .'- static: static pattern.'."\n" .'- dynamic: dynamic pattern.', 'enumValueTitles' => ['static' => 'Static mode.', 'dynamic' => 'Dynamic pattern.'], 'type' => 'string', 'enum' => [], 'required' => false, 'example' => 'static', 'title' => '', ], ], [ 'name' => 'QueryString', 'in' => 'query', 'schema' => ['description' => 'The query string after rewriting.', 'type' => 'string', 'required' => false, 'example' => 'example=123'."\n", 'title' => ''], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '156A6B-677B1A-4297B7-9187B7-2B44792'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ['errorCode' => 'VerifyExpressionError', 'errorMessage' => 'Dynamic expression is invalid.', 'description' => 'Dynamic expression is invalid.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'QuotaCheckFailed.FunctionArg', 'errorMessage' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.', 'description' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"156A6B-677B1A-4297B7-9187B7-2B44792\\"\\n}","type":"json"}]', 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Modify URL rewrite configuration', 'changeSet' => [ ['createdAt' => '2025-04-10T07:02:38.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-03-27T02:58:48.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateRewriteUrlRule'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateRewriteUrlRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UpdateRoutineConfigDescription' => [ 'summary' => 'Modifies the description of a routine.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239144', 'abilityTreeNodes' => ['FEATUREdcdn75UYDO'], ], 'parameters' => [ [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The routine name.'."\n", 'type' => 'string', 'required' => true, 'example' => 'test-routine1', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'formData', 'schema' => ['description' => 'The routine description.'."\n", 'type' => 'string', 'required' => false, 'example' => 'description of this routine', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395'], 'Status' => ['description' => 'Indicates whether the operation is successful.'."\n", 'type' => 'string', 'example' => 'OK', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'RoutineNotExist', 'errorMessage' => 'The routine name does not exist. Check the routine name and try again.', 'description' => 'The routine name does not exist. Check the routine name and try again.'], ['errorCode' => 'InternalOperationError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'RoutineUserServiceStatusHalt', 'errorMessage' => 'Failed to update the configurations because you have overdue payments.', 'description' => 'Failed to update the configurations because you have overdue payments.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395\\",\\n \\"Status\\": \\"OK\\"\\n}","type":"json"}]', 'title' => 'UpdateRoutineConfigDescription', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:UpdateRoutineConfigDescription', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'operationType' => 'write', ], 'UpdateRoutineRoute' => [ 'summary' => 'Modifies the route configuration of an Edge Routine.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '266196', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456******', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '35281609698****', 'title' => ''], ], [ 'name' => 'RouteName', 'in' => 'query', 'schema' => ['description' => 'The route name.', 'type' => 'string', 'required' => false, 'example' => 'test_route', 'title' => ''], ], [ 'name' => 'RouteEnable', 'in' => 'query', 'schema' => ['description' => 'The route switch. Valid values:'."\n" .'- on: enabled'."\n" .'- off: disabled', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The rule content.', 'type' => 'string', 'required' => false, 'example' => '(http.host eq \\"video.example.com\\")'."\n", 'title' => ''], ], [ 'name' => 'RoutineName', 'in' => 'query', 'schema' => ['description' => 'The Edge Routine name.', 'type' => 'string', 'required' => false, 'example' => 'test-routine1', 'title' => ''], ], [ 'name' => 'Bypass', 'in' => 'query', 'schema' => [ 'description' => 'The bypass mode. Valid values:'."\n" .'- on: enabled'."\n" .'- off: disabled', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The rule execution order.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'Fallback', 'in' => 'query', 'schema' => [ 'description' => 'The back-to-origin on exception switch. When enabled, if the function encounters an exception such as CPU usage exceeding the limit, the request is forwarded to the origin server. Valid values:'."\n" .'- on: Enabled.'."\n" .'- off: Disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Timeout', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The Edge Routine timeout period. Valid values: 5 to 60. Unit: seconds.', 'type' => 'string', 'example' => '5', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '34DCBC8A-****-****-****-6DAA11D7DDBD'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'InvalidRoutine', 'errorMessage' => 'The name of routine is invalid.', 'description' => 'Edge function name is illegal.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"34DCBC8A-****-****-****-6DAA11D7DDBD\\"\\n}","type":"json"}]', 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Modify edge routine route configuration', 'changeSet' => [ ['createdAt' => '2025-06-25T05:35:34.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateRoutineRoute'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateRoutineRoute', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UpdateScheduledPreloadExecution' => [ 'summary' => 'Updates a scheduled prefetch plan by prefetch plan ID.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239314', 'abilityTreeNodes' => ['FEATUREdcdn4TTNAL'], ], 'parameters' => [ [ 'name' => 'Id', 'in' => 'query', 'schema' => ['description' => 'The prefetch plan ID.', 'type' => 'string', 'required' => true, 'example' => '66599bd7397885b43804901c', 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'formData', 'schema' => ['description' => 'The start time of the scheduled prefetch plan, in ISO 8601 format (such as 2024-01-01T00:00:00+Z).', 'type' => 'string', 'required' => false, 'example' => '2024-05-31T17:10:48.849+08:00', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'formData', 'schema' => ['description' => 'The end time of the scheduled prefetch plan, in ISO 8601 format (such as 2024-01-01T00:00:00+Z).', 'type' => 'string', 'required' => false, 'example' => '2024-05-31T18:10:48.849+08:00', 'title' => ''], ], [ 'name' => 'Interval', 'in' => 'formData', 'schema' => ['description' => 'The execution interval between each batch of the scheduled prefetch plan, in seconds.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '60', 'title' => ''], ], [ 'name' => 'SliceLen', 'in' => 'formData', 'schema' => ['description' => 'The number of URLs to prefetch per batch.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A123425345'], 'Id' => ['description' => 'The prefetch plan ID.', 'type' => 'string', 'example' => '66599bd7397885b43804901c', 'title' => ''], 'StartTime' => ['description' => 'The start time of the scheduled prefetch plan, in ISO 8601 format (such as 2024-01-01T00:00:00+Z).', 'type' => 'string', 'example' => '2024-05-31T17:10:48.849+08:00', 'title' => ''], 'EndTime' => ['description' => 'The end time of the scheduled prefetch plan, in ISO 8601 format (such as 2024-01-01T00:00:00+Z).', 'type' => 'string', 'example' => '2024-05-31T18:10:48.849+08:00', 'title' => ''], 'Interval' => ['description' => 'The execution interval between each batch of the scheduled prefetch plan, in seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '60', 'title' => ''], 'SliceLen' => ['description' => 'The number of URLs to prefetch per batch.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'Status' => ['description' => 'The status of the scheduled prefetch plan. Valid values:'."\n" .'- **waiting**: Waiting to be executed.'."\n" .'- **running**: Being executed.'."\n" .'- **finished**: Execution completed.'."\n" .'- **failed**: Execution failed.'."\n" .'- **stopped**: Execution paused.', 'type' => 'string', 'example' => 'running', 'title' => ''], 'JobId' => ['description' => 'The prefetch task ID.', 'type' => 'string', 'example' => '665d3af3621bccf3fe29e1a4', 'title' => ''], 'AliUid' => ['description' => 'The Alibaba Cloud account ID.', 'type' => 'string', 'example' => '15685865xxx14622', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidEndTime.Mismatch', 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['errorCode' => 'InvalidJob.JobCountOfSiteFull', 'errorMessage' => 'The maximum number of prefetch tasks for the website has been reached. Delete some unwanted ones and try again.', 'description' => 'The maximum number of prefetch tasks for the website has been reached. Delete some unwanted ones and try again.'], ['errorCode' => 'InvalidParameter.ObjectId', 'errorMessage' => 'Invalid task ID or execution plan ID.', 'description' => 'Invalid task ID or execution plan ID.'], ['errorCode' => 'MissingOssUrl', 'errorMessage' => 'OssUrl missing. Specify a valid URL of the OSS object that stores URLs to prefetch.', 'description' => 'OssUrl missing. Specify a valid URL of the OSS object that stores URLs to prefetch.'], ['errorCode' => 'MissingUrlList', 'errorMessage' => 'Enter the URLs you want to prefetch.', 'description' => 'Enter the URLs you want to prefetch.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ], 403 => [ ['errorCode' => 'InvalidUid.PermissionDenied', 'errorMessage' => 'You do not have the permissions to perform this operation on this resource. Check whether the specified UID is correct and has the required permissions.', 'description' => 'You do not have the permissions to perform this operation on this resource. Check whether the specified UID is correct and has the required permissions.'], ], [ ['errorCode' => 'InvalidJob.NotFound', 'errorMessage' => 'The task does not exist. Check whether the task ID is correct or whether the task has been deleted.', 'description' => 'The task does not exist. Check whether the task ID is correct or whether the task has been deleted.'], ['errorCode' => 'LogNotFound', 'errorMessage' => 'Failed to query the log. Check whether the task ID and execution ID are valid.', 'description' => 'Failed to query the log. Check whether the task ID and execution ID are valid.'], ['errorCode' => 'InvalidExecution.NotFound', 'errorMessage' => 'The execution plan does not exist. Check whether the parameters such as the execution ID, start time, and end time are correct.', 'description' => 'The execution plan does not exist. Check whether the parameters such as the execution ID, start time, and end time are correct.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A123425345\\",\\n \\"Id\\": \\"66599bd7397885b43804901c\\",\\n \\"StartTime\\": \\"2024-05-31T17:10:48.849+08:00\\",\\n \\"EndTime\\": \\"2024-05-31T18:10:48.849+08:00\\",\\n \\"Interval\\": 60,\\n \\"SliceLen\\": 10,\\n \\"Status\\": \\"running\\",\\n \\"JobId\\": \\"665d3af3621bccf3fe29e1a4\\",\\n \\"AliUid\\": \\"15685865xxx14622\\"\\n}","type":"json"}]', 'title' => 'Update a scheduled prefetch plan', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateScheduledPreloadExecution'], ], ], 'ramActions' => [], ], 'UpdateSeoBypass' => [ 'summary' => 'Modifies the search engine crawler allowlisting configuration for a site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257452', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'Enable', 'in' => 'query', 'schema' => [ 'description' => 'The switch. Valid values:'."\n" ."\n" .'- **on**: enabled.'."\n" .'- **off**: disabled.', 'enumValueTitles' => [], 'type' => 'string', 'required' => true, 'enum' => ['on', 'off'], 'example' => 'on', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","type":"json"}]', 'title' => 'Modify search engine crawler allowlisting configuration for a site', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateSeoBypass'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateSeoBypass', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UpdateSiteAccessType' => [ 'summary' => 'Converts the DNS setup option of a website.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239615', 'abilityTreeNodes' => ['FEATUREdcdnMF1S4U'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890', 'title' => ''], ], [ 'name' => 'AccessType', 'in' => 'query', 'schema' => ['description' => 'The new DNS setup of the website. Valid values:'."\n" ."\n" .'* **NS**'."\n" .'* **CNAME**'."\n", 'type' => 'string', 'required' => true, 'example' => 'NS', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Site.ServiceBusy', 'errorMessage' => 'This website is being configured. Try again later.', 'description' => 'This website is being configured. Try again later.'], ['errorCode' => 'Site.UpdateAccessTypeUnable', 'errorMessage' => 'Failed to change the DNS setup for the website. Check whether the website has configurations or DNS records that are incompatible with the target DNS setup option.', 'description' => 'Failed to change the DNS setup for the website. Check whether the website has configurations or DNS records that are incompatible with the target DNS setup option.'], ['errorCode' => 'VerifyNameServerFailed', 'errorMessage' => 'The NS verification failed. Please configure the NS provided by ESA on the domain name management platform and try again.', 'description' => 'The NS verification failed. Please configure the NS provided by ESA on the domain name management platform and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\"\\n}","type":"json"}]', 'title' => 'UpdateSiteAccessType', 'description' => 'When you change the DNS setup of a website from NS to CNAME, note the following prerequisites:'."\n" ."\n" .'* The website only has proxied A/AAAA and CNAME records.'."\n" .'* The DNS passthrough mode and custom nameserver features are not enabled for the website.'."\n", 'changeSet' => [ ['createdAt' => '2024-11-05T03:27:37.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T06:13:39.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateSiteAccessType'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:UpdateSiteAccessType', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'write', 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'UpdateSiteCoverage' => [ 'summary' => 'Modifies the acceleration region of a site. Updates the acceleration configuration of a site to adapt to traffic distribution changes or improve the access experience for users in specific regions.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239596', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to query the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'Coverage', 'in' => 'query', 'schema' => [ 'description' => 'The target acceleration region to change to. Valid values:'."\n" .'- **domestic**: the Chinese mainland only.'."\n" .'- **global**: global.'."\n" .'- **overseas**: global (excluding the Chinese mainland).'."\n" ."\n" .'If the value is set to domestic or global, the site corresponding to SiteId must have a valid ICP filing..', 'enumValueTitles' => [], 'type' => 'string', 'required' => true, 'enum' => ['domestic', 'global', 'overseas'], 'example' => 'overseas', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '65C66B7B-671A-8297-9187-2R5477247B76', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Site.ServiceBusy', 'errorMessage' => 'This website is being configured. Try again later.', 'description' => 'This website is being configured. Try again later.'], ['errorCode' => 'InvalidParameter.Coverage', 'errorMessage' => 'The selected location is unavailable in your plan. Change the location to one that is covered by the plan and try again.', 'description' => 'The selected location is unavailable in your plan. Change the location to one that is covered by the plan and try again.'], ['errorCode' => 'SiteHasTransportLayerApplications', 'errorMessage' => 'The current site has an existing four-layer accelerated application, and the current operation is not allowed. If necessary, please contact customer service.', 'description' => 'The current site has an existing four-layer accelerated application, and the current operation is not allowed. If necessary, please contact customer service.'], ['errorCode' => 'IpaNotActive', 'errorMessage' => 'The ipa application is not active.', 'description' => 'The ipa application is not active.'], ['errorCode' => 'InvalidSiteICP', 'errorMessage' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.', 'description' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.'], ['errorCode' => 'NotEnoughResource.CustomPort', 'errorMessage' => 'Resource verification failed because there are not enough IP resources.', 'description' => 'Resource verification failed because there are not enough IP resources.'], ['errorCode' => 'Site.HasStaticIP', 'errorMessage' => 'This operation is not allowed because the site has static IP enabled.', 'description' => 'This operation is not allowed because the site has static IP enabled.'], ['errorCode' => 'Site.HasCN2', 'errorMessage' => 'The website has enabled CN2, and this operation is not allowed.', 'description' => 'Network access optimization in mainland China is enabled for this site. This operation is not allowed.'], ['errorCode' => 'Site.HasIpaEnableKeepAliveProtection', 'errorMessage' => 'The site has one or more TCP/UDP proxied applications with keep-alive-protection enabled. Its acceleration region or plan can\'t be edited.', 'description' => 'The site has one or more TCP/UDP proxied applications with keep-alive-protection enabled. Its acceleration region or plan can\'t be edited.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"65C66B7B-671A-8297-9187-2R5477247B76\\"\\n}","type":"json"}]', 'title' => 'Modify site acceleration region', 'changeSet' => [ ['createdAt' => '2025-04-23T01:46:45.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-10-15T05:52:17.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-24T09:13:34.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T06:13:39.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateSiteCoverage'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateSiteCoverage', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UpdateSiteCustomLog' => [ 'summary' => 'Modifies the configuration of custom request header, response header, and cookie fields that are used to capture logs of a website.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238355', 'abilityTreeNodes' => ['FEATUREdcdn9K10I1'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'formData', 'schema' => ['description' => 'site id'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '11223****', 'title' => ''], ], [ 'name' => 'RequestHeaders', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'The request header fields.'."\n", 'type' => 'array', 'items' => ['description' => 'The request header field.'."\n", 'type' => 'string', 'required' => false, 'example' => 'x-acs-request-id', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResponseHeaders', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'The response header fields.'."\n", 'type' => 'array', 'items' => ['description' => 'The response header field.'."\n", 'type' => 'string', 'required' => false, 'example' => 'X_Swift_Error', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'Cookies', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'The cookie fields.'."\n", 'type' => 'array', 'items' => ['description' => 'The cookie field.'."\n", 'type' => 'string', 'required' => false, 'example' => 'sessionId', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'ET5BF670-09D5-4D0B-BEBY-D96A2A528000'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ], 403 => [ ['errorCode' => 'RealTimeLog.NameCheckFail', 'errorMessage' => 'Real-time log name field validity check failed.', 'description' => 'The real-time log configuration field you entered contains illegal characters. Please delete the illegal characters and try again. The allowed characters include numbers, letters, underscore "_" and spaces "".'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"ET5BF670-09D5-4D0B-BEBY-D96A2A528000\\"\\n}","type":"json"}]', 'title' => 'UpdateSiteCustomLog', 'changeSet' => [ ['createdAt' => '2024-09-27T05:57:02.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateSiteCustomLog'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:UpdateSiteCustomLog', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'write', 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'UpdateSiteDeliveryTask' => [ 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238989', 'abilityTreeNodes' => ['FEATUREdcdn9K10I1'], ], 'parameters' => [ [ 'name' => 'TaskName', 'in' => 'formData', 'allowEmptyValue' => false, 'schema' => ['description' => 'The task name.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => 'cdn-test-task'], ], [ 'name' => 'SiteId', 'in' => 'formData', 'schema' => ['description' => 'The site ID. You can obtain this ID by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'FieldName', 'in' => 'formData', 'schema' => ['description' => 'A comma-separated list of delivery fields.', 'type' => 'string', 'required' => true, 'example' => 'ClientIP,UserAgent', 'title' => ''], ], [ 'name' => 'BusinessType', 'in' => 'formData', 'schema' => ['description' => 'The real-time log type. Valid values:'."\n" ."\n" .'- **dcdn\\_log\\_access\\_l1** (default): access log.'."\n" ."\n" .'- **dcdn\\_log\\_er**: Edge Routine log.'."\n" ."\n" .'- **dcdn\\_log\\_waf**: WAF log.'."\n" ."\n" .'- **dcdn\\_log\\_ipa**: Layer 4 acceleration log.', 'type' => 'string', 'required' => false, 'example' => 'dcdn_log_er', 'title' => ''], ], [ 'name' => 'DiscardRate', 'in' => 'formData', 'schema' => ['description' => 'The discard rate.', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '0.0', 'title' => ''], ], [ 'name' => 'FilterVer', 'in' => 'formData', 'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '34DCBC8A-****-****-****-6DAA11D7DDBD'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ], 403 => [ ['errorCode' => 'EsaService.NotOpen', 'errorMessage' => 'ESA service has not opend.', 'description' => 'Edge Security Accelerator (ESA) is not turned on'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'UpdateSiteDeliveryTask', 'summary' => 'Updates a site delivery task.', 'changeSet' => [ ['createdAt' => '2025-06-24T01:43:11.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-10-18T01:07:11.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-27T05:57:02.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateSiteDeliveryTask'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:UpdateSiteDeliveryTask', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"34DCBC8A-****-****-****-6DAA11D7DDBD\\"\\n}","type":"json"}]', ], 'UpdateSiteDeliveryTaskStatus' => [ 'summary' => 'Changes the status of a real-time log delivery task.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239089', 'abilityTreeNodes' => ['FEATUREdcdn9K10I1'], ], 'parameters' => [ [ 'name' => 'TaskName', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'The name of the delivery task.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cdn-test-task'], ], [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'Method', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable the delivery task.'."\n", 'type' => 'string', 'required' => true, 'example' => 'online', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '34DCBC8A-****-****-****-6DAA11D7DDBD'], 'TaskName' => ['description' => 'The name of the delivery task.'."\n", 'type' => 'string', 'example' => 'cdn-test-task', 'title' => ''], 'Status' => ['description' => 'The status of the delivery task. Valid values:'."\n" ."\n" .'* **online**'."\n" .'* **offline**'."\n", 'type' => 'string', 'example' => 'online', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"34DCBC8A-****-****-****-6DAA11D7DDBD\\",\\n \\"TaskName\\": \\"cdn-test-task\\",\\n \\"Status\\": \\"online\\"\\n}","type":"json"}]', 'title' => 'UpdateSiteDeliveryTaskStatus', 'changeSet' => [ ['createdAt' => '2024-09-27T05:57:02.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateSiteDeliveryTaskStatus'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:UpdateSiteDeliveryTaskStatus', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'operationType' => 'write', 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], 'UpdateSiteNameExclusive' => [ 'summary' => 'Modifies the exclusive site name configuration. After this feature is enabled, other accounts can no longer create sites or subsites with the same name as the current site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257454', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'Enable', 'in' => 'query', 'schema' => [ 'description' => 'The feature switch. Valid values:'."\n" ."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'enumValueTitles' => [], 'type' => 'string', 'required' => true, 'enum' => ['on', 'off'], 'example' => 'on', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\"\\n}","type":"json"}]', 'title' => 'Modify exclusive site name configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateSiteNameExclusive'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateSiteNameExclusive', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UpdateSitePause' => [ 'summary' => 'Modifies the site pause configuration.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257464', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID. Check the Status field to confirm the site status and the AccessType field to confirm the access mode of the site.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****'."\n", 'title' => ''], ], [ 'name' => 'Paused', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to temporarily pause the proxy acceleration feature for the entire site. After the feature is paused, all DNS records directly return record values to the client. Valid values:'."\n" .'- true: Pauses site acceleration.'."\n" .'- false: Resumes normal site acceleration.'."\n" ."\n" .'When site acceleration is paused, only activated sites with NS access mode are supported.', 'enumValueTitles' => ['true' => 'true', 'false' => 'false'], 'type' => 'boolean', 'required' => true, 'example' => 'true', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '6abd807e-ed2a-44de-ac54-ac38a62472e6'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6abd807e-ed2a-44de-ac54-ac38a62472e6\\"\\n}","type":"json"}]', 'title' => 'Modify site pause configuration', 'description' => 'This API operation can be called only for sites that use the NS access mode.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateSitePause'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateSitePause', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UpdateSiteVanityNS' => [ 'summary' => 'Modifies the custom nameserver (NS) names for a single site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239620', 'abilityTreeNodes' => ['FEATUREdcdnMF1S4U'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to query the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'VanityNSList', 'in' => 'query', 'schema' => ['description' => 'The list of custom NS names. You can specify 2 to 5 custom NS names, separated by commas (,).', 'type' => 'string', 'required' => false, 'example' => 'ns1.example.com,ns2.example.com', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'ApplyVanityNSError', 'errorMessage' => 'Failed to apply for vanity NS resources. Please contact customer service.', 'description' => 'Failed to apply for vanity NS resources. Please contact customer service.'], ['errorCode' => 'OperationDenied.VanityNSUnavailable', 'errorMessage' => 'Only sites in NS access type can use vanity nameservers. Convert your site to NS access type and try again.', 'description' => 'Sites that are accessed only by NS mode can use custom NS. Please adjust your site access mode and try again.'], ['errorCode' => 'InvalidParameter.InvalidVanityNSNum', 'errorMessage' => 'Enter 2 to 5 vanity nameservers. Correct them and try again.', 'description' => 'Custom NS requires 2~5 names, please adjust and resubmit.'], ['errorCode' => 'InvalidParameter.InvalidVanityNSName', 'errorMessage' => 'A vanity nameserver must be an absolute domain name. Correct it and try again.', 'description' => 'You need to enter the full domain name to customize the NS name. Please adjust and submit it again.'], ['errorCode' => 'InvalidParameter.VanityNSNameDuplicate', 'errorMessage' => 'The vanity nameservers are duplicated. Please delete it and try again.', 'description' => 'Duplicate custom NS name exists, please delete and resubmit.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'QuotaCheckFailed.CustomNS', 'errorMessage' => 'Custom nameservers are not allowed in your plan. Check the plan description and upgrade the plan.', 'description' => 'Custom nameservers are not allowed in your plan. Check the plan description and upgrade the plan.'], ['errorCode' => 'Site.ServiceBusy', 'errorMessage' => 'This website is being configured. Try again later.', 'description' => 'This website is being configured. Try again later.'], ['errorCode' => 'Record.Conflict', 'errorMessage' => 'The specified record content conflicts with existing records. Adjust your configurations based on the related product documentation.', 'description' => 'The specified record content conflicts with existing records. Adjust your configurations based on the related product documentation.'], ['errorCode' => 'InvalidParameter.RecordsExceedLimit', 'errorMessage' => 'The number of incoming records exceeds the maximum limit.', 'description' => 'The number of incoming records exceeds the maximum limit.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\"\\n}","type":"json"}]', 'title' => 'Modify custom NS servers for a site', 'description' => 'The site plan must be Enterprise Edition or higher to use the custom NS feature.', 'changeSet' => [ ['createdAt' => '2024-11-05T03:27:36.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T06:13:39.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateSiteVanityNS'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:UpdateSiteVanityNS', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UpdateTieredCache' => [ 'summary' => 'Modifies the multi-level cache configuration of a site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257320', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call [ListSites](~~2850189~~) to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'CacheArchitectureMode', 'in' => 'query', 'schema' => [ 'description' => 'The multi-level cache architecture mode. Valid values:'."\n" .'- edge: edge cache layer.'."\n" .'- edge_smart: edge cache layer + smart cache layer.'."\n" .'- edge_regional: edge cache layer + regional cache layer.'."\n" .'- edge_regional_smart: edge cache layer + regional cache layer + smart cache layer.', 'enumValueTitles' => [], 'type' => 'string', 'required' => true, 'enum' => ['edge', 'edge_smart', 'edge_regional', 'edge_regional_smart'], 'example' => 'edge_smart', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '15C66C7B-671A-4297-9187-2C4477247A74'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'FunctionArgError', 'errorMessage' => 'Failed to check the configured function parameters.', 'description' => 'Failed to check the configured function parameters'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\"\\n}","type":"json"}]', 'title' => 'Modify site multi-level cache configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateTieredCache'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateTieredCache', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UpdateTransportLayerApplication' => [ 'summary' => 'Modifies the forwarding rule configurations of a Layer 4 application under a specified site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '245118', 'abilityTreeNodes' => ['FEATUREdcdnVFT29S'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~ListSites~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ApplicationId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The Layer 4 application ID. You can call the [ListTransportLayerApplications](~~ListTransportLayerApplications~~) operation to obtain the application ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '165503967****', 'title' => ''], ], [ 'name' => 'Rules', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The list of forwarding rules. For each rule, all parameters except the comment are required.', 'type' => 'array', 'items' => [ 'description' => 'The rule details. For each rule, all parameters except the comment are required.', 'type' => 'object', 'properties' => [ 'Protocol' => [ 'description' => 'The forwarding rule protocol. Valid values:'."\n" ."\n" .'- TCP: TCP protocol.'."\n" .'- UDP: UDP protocol.', 'enumValueTitles' => ['TCP' => 'TCP 协议', 'UDP' => 'UDP 协议'], 'type' => 'string', 'enum' => ['TCP', 'UDP'], 'required' => false, 'example' => 'TCP', 'title' => '', ], 'EdgePort' => ['description' => 'The edge port. Valid values:'."\n" ."\n" .'- A single port, such as 80.'."\n" .'- A port range, such as 81-85, which represents ports 81, 82, 83, 84, and 85.'."\n" .'- A combination of ports and port ranges separated by commas, such as 80,81-85,90, which represents ports 80, 81, 82, 83, 84, 85, and 90.'."\n" .'- Edge ports within a single rule and across multiple rules cannot overlap.', 'type' => 'string', 'required' => false, 'example' => '80', 'title' => ''], 'SourceType' => [ 'description' => 'The origin type. Valid values:'."\n" .'- **ip**: IP address.'."\n" .'- **domain**: domain name.'."\n" .'- **OP**: origin IPAM pool.'."\n" .'- **LB**: load balancing.', 'enumValueTitles' => ['OP' => '源地址池', 'LB' => '负载均衡器', 'ip' => 'IP', 'domain' => '域名'], 'type' => 'string', 'enum' => ['ip', 'domain', 'LB', 'OP'], 'required' => false, 'example' => 'ip', 'title' => '', ], 'SourcePort' => ['description' => 'Origin Server Port. Valid values:'."\n" ."\n" .'- A single port. When Origin Server Port is a single port, any valid edge port combination is supported.'."\n" .'- A port range. Origin Server Port can be set to a port range only when the edge port is a port range, and the range size must match the edge port range. For example, if the edge port is 90-93, you cannot set Origin Server Port to 81-85 because Origin Server Port range is 5 while the edge port range is 4, which are inconsistent.', 'type' => 'string', 'required' => false, 'example' => '80', 'title' => ''], 'ClientIPPassThroughMode' => [ 'description' => 'The client IP pass-through protocol. Valid values:'."\n" .'- **off**: disabled.'."\n" .'- **PPv1**: PROXY Protocol v1, which supports client IP pass-through for TCP.'."\n" .'- **PPv2**: PROXY Protocol v2, which supports client IP pass-through for TCP and UDP.'."\n" .'- **SPP**: Simple Proxy Protocol, which supports client IP pass-through for UDP.', 'enumValueTitles' => ['SPP' => 'Simple Proxy Protocol 协议', 'PPv2' => 'PROXY Protocol v2 协议', 'off' => '不传递', 'PPv1' => 'PROXY Protocol v1 协议'], 'type' => 'string', 'enum' => ['off', 'PPv1', 'PPv2', 'SPP'], 'required' => false, 'example' => 'SPP', 'title' => '', ], 'Source' => ['description' => 'The specific value of the origin.', 'type' => 'string', 'required' => false, 'example' => '1.1.1.1', 'title' => ''], 'Comment' => ['description' => 'The comment for the rule.', 'type' => 'string', 'required' => false, 'example' => '123', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'IpAccessRule', 'in' => 'query', 'schema' => [ 'description' => 'The IP access rule switch. When enabled, WAF IP access rules take effect for the Layer 4 application. Valid values:'."\n" ."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Ipv6', 'in' => 'query', 'schema' => [ 'description' => 'The IPv6 switch. Valid values:'."\n" ."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'CrossBorderOptimization', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable network access optimization for the Chinese mainland. This feature is disabled by default. Valid values:'."\n" ."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'StaticIp', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable static IP. This feature is disabled by default. Valid values:'."\n" ."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'required' => false, 'example' => 'off', 'title' => ''], ], [ 'name' => 'KeepAliveProtection', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'Specifies whether to enable keep-alive protection. This feature is disabled by default. Valid values:'."\n" ."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'off', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response for a successful request.', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '9e5448c7-edaf-49aa-9887-0fcd0832306c', 'title' => ''], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.RecordData', 'errorMessage' => 'Invalid record content. Adjust your configurations based on the API documentation.', 'description' => 'Invalid record content. Adjust your configurations based on the API documentation.'], ['errorCode' => 'InvalidParameter.RecordType', 'errorMessage' => 'Invalid record type. Adjust your configurations based on the API documentation.', 'description' => 'Invalid record type. Adjust your configurations based on the API documentation.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'QuotaExceed.RecordCount', 'errorMessage' => 'The maximum number of records has been reached. Delete some and try again or upgrade your plan.', 'description' => 'The maximum number of records has been reached. Delete some and try again or upgrade your plan.'], ['errorCode' => 'Record.Conflict', 'errorMessage' => 'The specified record content conflicts with existing records. Adjust your configurations based on the related product documentation.', 'description' => 'The specified record content conflicts with existing records. Adjust your configurations based on the related product documentation.'], ['errorCode' => 'Site.ServiceBusy', 'errorMessage' => 'This website is being configured. Try again later.', 'description' => 'This website is being configured. Try again later.'], ['errorCode' => 'TransportLayerApplicationNotExist', 'errorMessage' => 'The layer -4 accelerated application of the current operation does not exist. Modify it and try again.', 'description' => 'The layer -4 accelerated application of the current operation does not exist. Modify it and try again.'], ['errorCode' => 'TransportLayerRulesExceedLimit', 'errorMessage' => 'The configured forwarding rules have exceeded the maximum limit. Delete useless forwarding rules and try again.', 'description' => 'The configured forwarding rules have exceeded the maximum limit. Delete useless forwarding rules and try again.'], ['errorCode' => 'SourceCircleExist', 'errorMessage' => 'The host record of the resource to be operated on is already the source station of another resource, or the source station of the current resource has been added as a host record. To avoid loopback, modify the host record or source station and retry.', 'description' => 'The host record of the resource to be operated on is already the source station of another resource, or the source station of the current resource has been added as a host record. To avoid loopback, modify the host record or source station and retry.'], ['errorCode' => 'InvalidParameter.InvalidRecordName', 'errorMessage' => 'The record name you entered does not meet the specifications. Change the record name according to the product documentation.', 'description' => 'The record name you entered does not meet the specifications. Please adjust the record name according to the product documentation.'], ['errorCode' => 'EdgePortsOverlap', 'errorMessage' => 'There is overlap between multiple edge ports, please check and try again after modification.', 'description' => 'There is overlap between multiple edge ports, please check and try again after modification.'], ['errorCode' => 'InvalidParameter.ClientIpPassThroughMode', 'errorMessage' => 'Invalid client IP transfer protocol, please refer to the interface document and pass in valid parameters.', 'description' => 'Invalid client IP transfer protocol, please refer to the interface document and pass in valid parameters.'], ['errorCode' => 'InvalidParameter.RuleSource', 'errorMessage' => 'The origin of the forwarding rule does not exist or is invalid. Enter the correct origin and try again.', 'description' => 'The origin of the forwarding rule does not exist or is invalid. Enter the correct origin and try again.'], ['errorCode' => 'InvalidParameter.Port', 'errorMessage' => 'Invalid edge port or origin port. Enter a valid port as required in the interface document.', 'description' => 'Invalid edge port or origin port. Enter a valid port as required in the interface document.'], ['errorCode' => 'InvalidParameter.Protocol', 'errorMessage' => 'Invalid port protocol. Enter a valid port protocol as required by the interface documentation.', 'description' => 'Invalid port protocol. Enter a valid port protocol as required by the interface documentation.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ['errorCode' => 'IpaNotActive', 'errorMessage' => 'The ipa application is not active.', 'description' => 'The ipa application is not active.'], ['errorCode' => 'Record.NoResource', 'errorMessage' => 'Failed to allocate resources for the record. Please submit a ticket for processing.', 'description' => 'Failed to allocate resources for the record. Please submit a work order for processing.'], ['errorCode' => 'InvalidParameter.PrivateIpAsSourceUnsupported', 'errorMessage' => 'The provided source is an invalid private IP address. Please verify and resubmit.', 'description' => 'The provided source is an invalid private IP address. Please verify and resubmit.'], ['errorCode' => 'InvalidParameter.SourceIpInBlacklist', 'errorMessage' => 'The provided source is an invalid private IP address. Please verify and resubmit.', 'description' => 'The provided source is an invalid private IP address. Please verify and resubmit.'], ['errorCode' => 'IPA.KeepAliveProtectionConflict', 'errorMessage' => 'KeepAliveProtection is conflicted with StaticIp and CrossBorderOptimization, can not open at same time.', 'description' => 'KeepAliveProtection is conflicted with StaticIp and CrossBorderOptimization, can not open at same time'], ['errorCode' => 'IPA.CanNotEnableKeepAliveProtection', 'errorMessage' => 'The site has one or more TCP/UDP proxied applications with keep-alive-protection enabled. Its acceleration region or plan can\'t be edited.', 'description' => 'DDoS protection for Chinese mainland or outside the Chinese mainland can\'t be "Basic protection"'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9e5448c7-edaf-49aa-9887-0fcd0832306c\\"\\n}","type":"json"}]', 'title' => 'Update a layer 4 acceleration application', 'description' => 'If ListTransportLayerApplications returns an empty Layer 4 acceleration application list, use CreateTransportLayerApplication to create a Layer 4 acceleration application, and then use this API to modify the configurations of the Layer 4 acceleration application.'."\n" ."\n" .'When creating a Layer 4 acceleration application, the selected site must be an activated site. After creating a site, call the VerifySite API to verify it. A site that passes verification is automatically activated, indicated by the response parameter Passed=true.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateTransportLayerApplication'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateTransportLayerApplication', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'UpdateUrlObservation' => [ 'summary' => 'Updates the URL observation configuration.', 'path' => '', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '264795', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~ListSites~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID. You can call the [ListUrlObservations](~~ListUrlObservations~~) operation to obtain the configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '35281609698****', 'title' => ''], ], [ 'name' => 'SdkType', 'in' => 'query', 'schema' => [ 'description' => 'The SDK integration method. Valid values:'."\n" ."\n" .'- **automatic**: automatic integration.'."\n" .'- **manual**: manual integration.', 'enumValueTitles' => ['automatic' => 'Automatic integration.', 'manual' => 'Manual integration.'], 'type' => 'string', 'required' => true, 'enum' => ['automatic', 'manual'], 'example' => 'manual', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368'."\n"], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ArgQuotaCheckFailed', 'errorMessage' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'ConfExceedLimit', 'errorMessage' => 'The number of function configurations exceeds the limit. Please check the interface document to see the number of configurations that can be supported by a single function.', 'description' => 'The number of configuration items for the current function has exceeded the upper limit set by the system.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\\\n\\"\\n}","type":"json"}]', 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Update URL observation configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateUrlObservation'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateUrlObservation', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UpdateUserDeliveryTask' => [ 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239266', 'abilityTreeNodes' => ['FEATUREdcdn9K10I1'], ], 'parameters' => [ [ 'name' => 'TaskName', 'in' => 'formData', 'allowEmptyValue' => false, 'schema' => ['description' => 'The task name.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => 'test_project'], ], [ 'name' => 'FieldName', 'in' => 'formData', 'schema' => ['description' => 'The selected fields. Separate multiple fields with a comma.', 'type' => 'string', 'required' => true, 'example' => 'ClientRequestID,ClientRequestHost', 'title' => ''], ], [ 'name' => 'BusinessType', 'in' => 'formData', 'schema' => ['description' => 'The real-time log type. Valid values:'."\n" ."\n" .'- **dcdn\\_log\\_access\\_l1 (default)**: access log.'."\n" ."\n" .'- **dcdn\\_log\\_er**: edge function log.'."\n" ."\n" .'- **dcdn\\_log\\_waf**: WAF log.'."\n" ."\n" .'- **dcdn\\_log\\_ipa**: layer 4 acceleration log.', 'type' => 'string', 'required' => false, 'example' => 'dcdn_log_er', 'title' => ''], ], [ 'name' => 'DiscardRate', 'in' => 'formData', 'schema' => ['description' => 'The default value is 0.', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'Details', 'in' => 'formData', 'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'FilterVer', 'in' => 'formData', 'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '34DCBC8A-****-****-****-6DAA11D7DDBD'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ], 403 => [ ['errorCode' => 'EsaService.NotOpen', 'errorMessage' => 'ESA service has not opend.', 'description' => 'Edge Security Accelerator (ESA) is not turned on'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'UpdateUserDeliveryTask', 'summary' => 'Updates a delivery task configuration. You can modify the task name, selected fields, real-time log type, and discard rate.', 'changeSet' => [ ['createdAt' => '2025-06-24T01:43:11.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-12-26T08:21:56.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-10-18T01:07:11.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-27T05:57:02.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateUserDeliveryTask'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateUserDeliveryTask', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"34DCBC8A-****-****-****-6DAA11D7DDBD\\"\\n}","type":"json"}]', ], 'UpdateUserDeliveryTaskStatus' => [ 'summary' => 'Changes the status of a delivery task in your Alibaba Cloud account.', 'methods' => ['get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '238917', 'abilityTreeNodes' => ['FEATUREdcdn9K10I1'], ], 'parameters' => [ [ 'name' => 'TaskName', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The name of the delivery task.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => 'test_project'], ], [ 'name' => 'Method', 'in' => 'query', 'schema' => ['description' => 'Enables or disables the delivery task. Valid values: online and offline.', 'type' => 'string', 'required' => true, 'example' => 'online', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '34DCBC8A-****-****-****-6DAA11D7DDBD'], 'TaskName' => ['description' => 'The name of the delivery task.', 'type' => 'string', 'example' => 'test_project', 'title' => ''], 'Status' => ['description' => 'The status of the delivery task.', 'type' => 'string', 'example' => 'online', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalError', 'errorMessage' => 'An internal exception occurred, please try again later.', 'description' => 'An inner exception was triggered. Please try again later.'], ], 403 => [ ['errorCode' => 'EsaService.NotOpen', 'errorMessage' => 'ESA service has not opend.', 'description' => 'Edge Security Accelerator (ESA) is not turned on'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'UpdateUserDeliveryTaskStatus', 'description' => '## [](#)'."\n" ."\n" .'Use this operation to enable or disable a delivery task by using TaskName and Method. The response includes the most recent status and operation result details of the task.', 'changeSet' => [ ['createdAt' => '2024-10-18T01:07:11.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-27T05:57:02.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateUserDeliveryTaskStatus'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateUserDeliveryTaskStatus', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"34DCBC8A-****-****-****-6DAA11D7DDBD\\",\\n \\"TaskName\\": \\"test_project\\",\\n \\"Status\\": \\"online\\"\\n}","type":"json"}]', ], 'UpdateUserWafRuleset' => [ 'summary' => 'Modifies the WAF ruleset configuration for a specified instance, including its position, name, and other properties.', 'description' => '## Request description'."\n" ."\n" .'- This operation updates an existing WAF ruleset. You can modify the position, name, description, status, and expression of the ruleset.'."\n" ."\n" .'- Include only the parameters that you want to modify. Omit parameters that you do not want to change.'."\n" ."\n" .'- Note: Before you call this operation, ensure that the `InstanceId` and `Id` values are correct. Otherwise, the request may fail.', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREdcdnV3YEJ8', 'FEATUREdcdnUTRW1O', 'FEATUREdcdnSU2QP6', 'FEATUREdcdnV3G3FZ', 'FEATUREdcdnBQ0J3E'], ], 'parameters' => [ [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'esa-xxxxxxx', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'formData', 'schema' => ['description' => 'The WAF ruleset ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '10000001', 'title' => ''], ], [ 'name' => 'Position', 'in' => 'formData', 'schema' => ['description' => 'The position of the WAF ruleset.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The name of the WAF ruleset.', 'type' => 'string', 'required' => false, 'example' => 'example', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'formData', 'schema' => ['description' => 'The description of the WAF ruleset.', 'type' => 'string', 'required' => false, 'example' => 'example', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'formData', 'schema' => ['description' => 'The status of the WAF ruleset.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'Expression', 'in' => 'formData', 'schema' => ['description' => 'The expression of the WAF ruleset.', 'type' => 'string', 'required' => false, 'example' => 'ip.src == 1.1.1.1', 'title' => ''], ], [ 'name' => 'Shared', 'in' => 'formData', 'style' => 'json', 'schema' => ['description' => 'The shared configuration of the WAF ruleset.', '$ref' => '#/components/schemas/WafBatchRuleShared', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'Rules', 'in' => 'formData', 'style' => 'json', 'schema' => [ 'description' => 'A list of rule configurations in the WAF ruleset.', 'type' => 'array', 'items' => ['description' => 'A rule configuration in the WAF ruleset.', '$ref' => '#/components/schemas/WafRuleConfig', 'required' => false, 'title' => '', 'example' => ''], 'required' => false, 'example' => '['."\n" .' {'."\n" .' "Id": 20000001,'."\n" .' "Name": "rule1",'."\n" .' "Expression": "ip.src eq 1.1.1.1",'."\n" .' "Action": "deny"'."\n" .' }'."\n", 'title' => '', ], ], ], 'responses' => [ 200 => [ 'description' => '创建成功', 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response schema.', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'xxxx-xxxx-xxxx-xxxx', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ], 403 => [ ['errorCode' => 'Rule.Config.Noncompliance', 'errorMessage' => 'The specified rule configuration does not meet the compliance requirements.Check and adjust your configurations.', 'description' => 'The specified rule configuration does not meet the compliance requirements.Check and adjust your configurations.'], ['errorCode' => 'Rule.Config.Malformed', 'errorMessage' => 'The format of the rule configuration is invalid.Check the configuration for syntax errors or structural inconsistencies and correct them to meet the requirements.', 'description' => 'The format of the rule configuration is invalid.Check the configuration for syntax errors or structural inconsistencies and correct them to meet the requirements.'], ['errorCode' => '%s.NotSupport', 'errorMessage' => 'The specified resource type %s is not supported.', 'description' => 'The specified resource type is not supported. To use this type of resource, please contact us.'], ['errorCode' => '%s.OverQuota', 'errorMessage' => 'The quantity of %s exceeds the quota.', 'description' => 'The amount of this resource exceeds the quota. If you need to apply for more quota, please contact us.'], ['errorCode' => '%s.WrongValueMatched', 'errorMessage' => 'The value of specified parameter %s can not pass the matching check.', 'description' => 'The value of the specified parameter can not pass the matching check. If you determine that you need to use this parameter value, please contact us.'], ['errorCode' => 'Ruleset.NotExist', 'errorMessage' => 'The specified rule set does not exist or has not been registered in the system.Check whether the specified rule set identifier is valid and matches a rule set that has been correctly defined and maintained by the system\'s rule set registry.If you want to add a new rule set, make sure that the creation and registration process is complete to bring the rule set into effect.', 'description' => 'The specified rule set does not exist or has not been registered in the system.Check whether the specified rule set identifier is valid and matches a rule set that has been correctly defined and maintained by the system\'s rule set registry.If you want to add a new rule set, make sure that the creation and registration process is complete to bring the rule set into effect.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxxx-xxxx-xxxx-xxxx\\"\\n}","type":"json"}]', 'title' => 'UpdateUserWafRuleset', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:UpdateUserWafRuleset', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'UpdateVideoProcessing' => [ 'summary' => 'Modifies the video processing configuration of a website.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '257664', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'ConfigId', 'in' => 'query', 'schema' => ['description' => 'The configuration ID. You can call the [ListVideoProcessings](~~ListVideoProcessings~~) operation to obtain the configuration ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '35281609698****', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The rule name. You do not need to set this parameter when adding a global configuration.', 'type' => 'string', 'required' => false, 'example' => 'rule_example', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => [ 'description' => 'The rule switch. You do not need to set this parameter when adding a global configuration. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The rule content, which uses a conditional expression to match user requests. You do not need to set this parameter when adding a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: set the value to true.'."\n" .'- Match specified requests: set the value to a custom expression, such as (http.host eq \\"video.example.com\\").', 'type' => 'string', 'required' => false, 'example' => '(http.host eq "video.example.com")', 'title' => ''], ], [ 'name' => 'Sequence', 'in' => 'query', 'schema' => ['description' => 'The rule execution order. A smaller value indicates a higher priority.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'VideoSeekEnable', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable the video seeking feature. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'type' => 'string', 'required' => false, 'example' => 'on', 'title' => ''], ], [ 'name' => 'FlvVideoSeekMode', 'in' => 'query', 'schema' => ['description' => 'The FLV seeking mode. Valid values:'."\n" .'- by_byte: seek by byte.'."\n" .'- by_time: seek by time.', 'type' => 'string', 'required' => false, 'example' => 'by_byte', 'title' => ''], ], [ 'name' => 'Mp4SeekStart', 'in' => 'query', 'schema' => ['description' => 'The custom MP4 start parameter.', 'type' => 'string', 'required' => false, 'example' => 'start', 'title' => ''], ], [ 'name' => 'Mp4SeekEnd', 'in' => 'query', 'schema' => ['description' => 'The custom MP4 end parameter.', 'type' => 'string', 'required' => false, 'example' => 'end', 'title' => ''], ], [ 'name' => 'FlvSeekStart', 'in' => 'query', 'schema' => ['description' => 'The custom FLV start parameter.', 'type' => 'string', 'required' => false, 'example' => 'start', 'title' => ''], ], [ 'name' => 'FlvSeekEnd', 'in' => 'query', 'schema' => ['description' => 'The custom FLV end parameter.', 'type' => 'string', 'required' => false, 'example' => 'end', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '3558df77-8a7a-4060-a900-2d7949403836'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'ApplyVipError', 'errorMessage' => 'Failed to apply for ip resources, please contact customer service.', 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['errorCode' => 'CanNotSetSequence', 'errorMessage' => 'Non-regular configuration, you cannot set Sequence parameters.', 'description' => 'Sequence parameters is not allowed in global configuration.'], ['errorCode' => 'CacheReserveSiteExceedLimit', 'errorMessage' => 'The number of binding sites of the cache reserve instance exceeds the limit. The number of binding sites of a single cache reserve instance is limited. Please see the document for the limit.', 'description' => 'The number of sites for which the cache reserve instance bindings exceeds the limit.'], ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ['errorCode' => 'VersionNotValid', 'errorMessage' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InvalidParameter.Configs', 'errorMessage' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['errorCode' => 'InvalidParameter.FunctionName', 'errorMessage' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'IllegalOperation.VersionManagement', 'errorMessage' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['errorCode' => 'QuotaCheckFailed.VersionManagement', 'errorMessage' => 'Insufficient quota for version management. Contact technical support.', 'description' => 'Insufficient quota for version management. Contact technical support.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'CachceReserveInstanceCheckFalied', 'errorMessage' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.', 'description' => 'If the site uses the back-to-source whitelist node and the cache holding instance is not in the back-to-source whitelist, the cache holding instance cannot be associated with the site. If you want to use both functions at the same time, please contact customer service for details.'], ['errorCode' => 'QuotaCheckFailed.FunctionArg', 'errorMessage' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.', 'description' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3558df77-8a7a-4060-a900-2d7949403836\\"\\n}","type":"json"}]', 'title' => 'Modify site video processing configuration', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateVideoProcessing'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateVideoProcessing', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UpdateWafRule' => [ 'summary' => 'Updates a web application firewall (WAF) rule. Use this operation to modify the rule\'s configuration and status.', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239582', 'abilityTreeNodes' => ['FEATUREdcdnV3YEJ8', 'FEATUREdcdnUTRW1O', 'FEATUREdcdnSU2QP6', 'FEATUREdcdnV3G3FZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['title' => '站点ID', 'description' => 'The ID of the site. To obtain the site ID, call the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1'], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. For sites with configuration version management enabled, use this parameter to specify the effective configuration version. The default is version 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'formData', 'schema' => ['title' => '规则ID', 'description' => 'The ID of the WAF rule. To obtain the rule ID, call the [ListWafRules](~~2878257~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '20000001'], ], [ 'name' => 'Position', 'in' => 'formData', 'schema' => ['title' => '规则在规则集中的位置顺序', 'description' => 'The position of the rule within the rule set.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'required' => false], ], [ 'name' => 'Status', 'in' => 'formData', 'schema' => ['title' => '规则状态', 'description' => 'The status of the rule.', 'type' => 'string', 'required' => false, 'example' => 'on'], ], [ 'name' => 'Config', 'in' => 'formData', 'style' => 'json', 'schema' => ['title' => '规则配置', 'description' => 'The configuration of the rule.', '$ref' => '#/components/schemas/WafRuleConfig', 'required' => false, 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Response schema', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '请求ID', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], 'Id' => ['description' => 'The ID of the WAF rule.', 'type' => 'integer', 'format' => 'int64', 'example' => '20000001', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'Rule.NotExist', 'errorMessage' => 'The specified rule does not exist.', 'description' => 'The specified rule does not exist in the current context or system configuration. Please verify the existence of the rule identifier and ensure it has been correctly defined or implemented.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ], 403 => [ ['errorCode' => '%s.NotSupport', 'errorMessage' => 'The specified resource type %s is not supported.', 'description' => 'The specified resource type is not supported. To use this type of resource, please contact us.'], ['errorCode' => '%s.OverQuota', 'errorMessage' => 'The quantity of %s exceeds the quota.', 'description' => 'The amount of this resource exceeds the quota. If you need to apply for more quota, please contact us.'], ['errorCode' => '%s.WrongValueMatched', 'errorMessage' => 'The value of specified parameter %s can not pass the matching check.', 'description' => 'The value of the specified parameter can not pass the matching check. If you determine that you need to use this parameter value, please contact us.'], ['errorCode' => 'Rule.Config.Malformed', 'errorMessage' => 'The format of the rule configuration is invalid.Check the configuration for syntax errors or structural inconsistencies and correct them to meet the requirements.', 'description' => 'The format of the rule configuration is invalid.Check the configuration for syntax errors or structural inconsistencies and correct them to meet the requirements.'], ['errorCode' => 'Rule.Config.Noncompliance', 'errorMessage' => 'The specified rule configuration does not meet the compliance requirements.Check and adjust your configurations.', 'description' => 'The specified rule configuration does not meet the compliance requirements.Check and adjust your configurations.'], ['errorCode' => 'Rule.Position.Invalid', 'errorMessage' => 'The specified position for the rule is invalid.Check and adjust the configuration to make sure it meets the requirements.', 'description' => 'The specified position for the rule is invalid.Check and adjust the configuration to make sure it meets the requirements.'], ['errorCode' => 'Rule.Name.AlreadyExists', 'errorMessage' => 'The specified rule name already exists.Try again with a unique name or modify the existing rule name.', 'description' => 'The specified rule name already exists.Try again with a unique name or modify the existing rule name.'], ['errorCode' => 'Expression.Invalid', 'errorMessage' => 'The specified expression is invalid: %s.', 'description' => 'The specified expression is invalid.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"Id\\": 20000001\\n}","type":"json"}]', 'title' => 'Update WAF Rule', 'changeSet' => [ ['createdAt' => '2024-09-25T07:02:49.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T06:13:33.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateWafRule'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateWafRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UpdateWafRuleset' => [ 'summary' => 'Updates a WAF ruleset based on its ID.', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239645', 'abilityTreeNodes' => ['FEATUREdcdnBQ0J3E', 'FEATUREdcdn1OLUH8'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['title' => '站点ID', 'description' => 'The ID of the site. You can obtain this ID by calling the [ListSites](~~2850189~~) API.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1'], ], [ 'name' => 'SiteVersion', 'in' => 'query', 'schema' => ['description' => 'The version number of the site configuration. For a site with configuration version management enabled, this parameter specifies the version to update. The default value is 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'Id', 'in' => 'formData', 'schema' => ['title' => '规则集ID', 'description' => 'The WAF ruleset ID. You can obtain this ID by calling the [ListWafRulesets](~~2878359~~) API.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '10000001'], ], [ 'name' => 'Status', 'in' => 'formData', 'schema' => ['title' => '规则集状态', 'description' => 'The target status of the ruleset.', 'type' => 'string', 'required' => false, 'example' => 'on'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response schema.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '请求ID', 'description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'SpecifiedVersionReadOnly', 'errorMessage' => 'The specified version number is read-only and cannot be modified.', 'description' => 'The specified version number is read-only and cannot be modified.'], ], 403 => [ ['errorCode' => '%s.NotSupport', 'errorMessage' => 'The specified resource type %s is not supported.', 'description' => 'The specified resource type is not supported. To use this type of resource, please contact us.'], ['errorCode' => '%s.OverQuota', 'errorMessage' => 'The quantity of %s exceeds the quota.', 'description' => 'The amount of this resource exceeds the quota. If you need to apply for more quota, please contact us.'], ['errorCode' => '%s.WrongValueMatched', 'errorMessage' => 'The value of specified parameter %s can not pass the matching check.', 'description' => 'The value of the specified parameter can not pass the matching check. If you determine that you need to use this parameter value, please contact us.'], ['errorCode' => 'Ruleset.NotExist', 'errorMessage' => 'The specified rule set does not exist or has not been registered in the system.Check whether the specified rule set identifier is valid and matches a rule set that has been correctly defined and maintained by the system\'s rule set registry.If you want to add a new rule set, make sure that the creation and registration process is complete to bring the rule set into effect.', 'description' => 'The specified rule set does not exist or has not been registered in the system.Check whether the specified rule set identifier is valid and matches a rule set that has been correctly defined and maintained by the system\'s rule set registry.If you want to add a new rule set, make sure that the creation and registration process is complete to bring the rule set into effect.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\"\\n}","type":"json"}]', 'title' => 'Update WAF Ruleset', 'changeSet' => [ ['createdAt' => '2024-09-25T07:02:49.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T06:13:38.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateWafRuleset'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateWafRuleset', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UpdateWaitingRoom' => [ 'summary' => 'Updates the configuration of a specified waiting room.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239629', 'abilityTreeNodes' => ['FEATUREdcdnO4KC7Z'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '7096621098****', 'title' => ''], ], [ 'name' => 'WaitingRoomId', 'in' => 'query', 'schema' => ['description' => 'The waiting room ID, which can be obtained by calling the [ListWaitingRooms](~~2850279~~) operation.', 'type' => 'string', 'required' => true, 'example' => '6a51d5bc6460887abd129****', 'title' => ''], ], [ 'name' => 'Enable', 'in' => 'query', 'schema' => [ 'description' => 'The status of the waiting room. Valid values:'."\n" ."\n" .' - **on**: Enabled.'."\n" .' - **off**: Disabled.', 'enumValueTitles' => [], 'type' => 'string', 'required' => false, 'enum' => ['on', 'off'], 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The name of the waiting room.', 'type' => 'string', 'required' => false, 'example' => '节假日促销等候室', 'title' => ''], ], [ 'name' => 'QueueAllEnable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to queue all visitors. Valid values:'."\n" ."\n" .'- **on**: Enabled.'."\n" .'- **off**: Disabled.', 'enumValueTitles' => [], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'HostNameAndPath', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The hostname and path configurations.', 'type' => 'array', 'items' => [ 'description' => 'The hostname and path details.', 'type' => 'object', 'properties' => [ 'Subdomain' => ['description' => 'The subdomain.', 'type' => 'string', 'required' => false, 'example' => 'test.', 'title' => ''], 'Domain' => ['description' => 'The domain name.', 'type' => 'string', 'required' => false, 'example' => 'example.com'."\n", 'title' => ''], 'Path' => ['description' => 'The path.', 'type' => 'string', 'required' => false, 'example' => '/test'."\n", 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'CookieName', 'in' => 'query', 'schema' => ['description' => 'The custom cookie name.', 'type' => 'string', 'required' => false, 'example' => '__aliwaitingroom_example'."\n", 'title' => ''], ], [ 'name' => 'TotalActiveUsers', 'in' => 'query', 'schema' => ['description' => 'The total number of active users.', 'type' => 'string', 'required' => false, 'example' => '300', 'title' => ''], ], [ 'name' => 'NewUsersPerMinute', 'in' => 'query', 'schema' => ['description' => 'The number of new users per minute.', 'type' => 'string', 'required' => false, 'example' => '200', 'title' => ''], ], [ 'name' => 'SessionDuration', 'in' => 'query', 'schema' => ['description' => 'The session duration in minutes.', 'type' => 'string', 'required' => false, 'example' => '5', 'title' => ''], ], [ 'name' => 'DisableSessionRenewalEnable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to disable session renewal. Valid values:'."\n" ."\n" .'- **on**: Enabled.'."\n" .'- **off**: Disabled.', 'enumValueTitles' => [], 'type' => 'string', 'required' => false, 'enum' => ['on', 'off'], 'example' => 'on', 'title' => '', ], ], [ 'name' => 'QueuingMethod', 'in' => 'query', 'schema' => [ 'description' => 'The queuing method. Valid values:'."\n" ."\n" .'- **random**: random.'."\n" .'- **fifo**: first-in, first-out.'."\n" .'- **passthrough**: passthrough.'."\n" .'- **reject-all**: reject all.', 'enumValueTitles' => [], 'type' => 'string', 'required' => false, 'enum' => ['fifo', 'random', 'passthrough', 'reject-all'], 'example' => 'random', 'title' => '', ], ], [ 'name' => 'QueuingStatusCode', 'in' => 'query', 'schema' => [ 'description' => 'The HTTP status code returned by the waiting room. Valid values:'."\n" ."\n" .'- **200**'."\n" .'- **202**'."\n" .'- **429**', 'enumValueTitles' => [], 'type' => 'string', 'required' => false, 'enum' => ['200', '202', '429'], 'example' => '200', 'title' => '', ], ], [ 'name' => 'JsonResponseEnable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable JSON response. If enabled, requests with an Accept header containing "application/json" return JSON data. Valid values:'."\n" ."\n" .'- **on**: Enabled.'."\n" .'- **off**: Disabled.', 'enumValueTitles' => [], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Description', 'in' => 'query', 'allowEmptyValue' => true, 'schema' => ['description' => 'The description of the waiting room.', 'type' => 'string', 'required' => false, 'example' => '特别活动排队页面', 'title' => ''], ], [ 'name' => 'WaitingRoomType', 'in' => 'query', 'schema' => [ 'description' => 'The type of the waiting room. Valid values:'."\n" ."\n" .'- **default**: default type.'."\n" .'- **custom**: custom type.', 'enumValueTitles' => [], 'type' => 'string', 'required' => false, 'enum' => ['default', 'custom'], 'example' => 'default', 'title' => '', ], ], [ 'name' => 'CustomPageHtml', 'in' => 'query', 'allowEmptyValue' => true, 'schema' => ['description' => 'The custom waiting room page content. This parameter is required when the waiting room type is set to custom. The content must be in Base64 encoding.', 'type' => 'string', 'required' => false, 'example' => 'SGVsbG8gd29ybGQ=', 'title' => ''], ], [ 'name' => 'Language', 'in' => 'query', 'allowEmptyValue' => true, 'schema' => [ 'description' => 'The language of the waiting room page. This parameter is required when the waiting room type is set to default. Valid values:'."\n" ."\n" .'- **enus**: English.'."\n" .'- **zhcn**: Simplified Chinese.'."\n" .'- **zhhk**: Traditional Chinese.', 'enumValueTitles' => [], 'type' => 'string', 'enum' => ['enus', 'zhcn', 'zhhk'], 'required' => false, 'example' => 'zhcn', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0195619f-eab3-4a66-ac00-ed53d913e72e', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'WaitingRoomNotExist', 'errorMessage' => 'The waiting room that you want to modify does not exist or does not belong to you. Confirm and try again.', 'description' => 'The waiting room that you want to modify does not exist or does not belong to you. Confirm and try again.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'QuotaCheckFailed.FunctionArg', 'errorMessage' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.', 'description' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0195619f-eab3-4a66-ac00-ed53d913e72e\\"\\n}","type":"json"}]', 'title' => 'Update a waiting room', 'changeSet' => [ ['createdAt' => '2024-09-18T06:13:38.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateWaitingRoom'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateWaitingRoom', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UpdateWaitingRoomEvent' => [ 'summary' => 'Updates the configuration of a waiting room event.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239617', 'abilityTreeNodes' => ['FEATUREdcdnVCBH9N'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****'."\n", 'title' => ''], ], [ 'name' => 'WaitingRoomEventId', 'in' => 'query', 'schema' => ['description' => 'The waiting room event ID, which can be obtained by calling the [ListWaitingRoomEvents](~~2850279~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '89677721098****', 'title' => ''], ], [ 'name' => 'Enable', 'in' => 'query', 'schema' => [ 'description' => 'The enabling status. Valid values:'."\n" ."\n" .' - **on**: Enables the waiting room event.'."\n" ."\n" .' - **off**: Disables the waiting room event.', 'enumValueTitles' => [], 'type' => 'string', 'required' => false, 'enum' => ['on', 'off'], 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The name of the waiting room event.', 'type' => 'string', 'required' => false, 'example' => '测试事件2', 'title' => ''], ], [ 'name' => 'TotalActiveUsers', 'in' => 'query', 'schema' => ['description' => 'The total number of active users.', 'type' => 'string', 'required' => false, 'example' => '200', 'title' => ''], ], [ 'name' => 'NewUsersPerMinute', 'in' => 'query', 'schema' => ['description' => 'The number of new users per minute.', 'type' => 'string', 'required' => false, 'example' => '300', 'title' => ''], ], [ 'name' => 'SessionDuration', 'in' => 'query', 'schema' => ['description' => 'The user session duration, in minutes.', 'type' => 'string', 'required' => false, 'example' => '5', 'title' => ''], ], [ 'name' => 'DisableSessionRenewalEnable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to disable session renewal. Valid values:'."\n" ."\n" .'- **on**: Enabled.'."\n" .'- **off**: Disabled.', 'enumValueTitles' => [], 'type' => 'string', 'required' => false, 'enum' => ['on', 'off'], 'example' => 'off', 'title' => '', ], ], [ 'name' => 'QueuingMethod', 'in' => 'query', 'schema' => [ 'description' => 'The queuing method. Valid values:'."\n" ."\n" .'- **random**: random.'."\n" .'- **fifo**: first-in, first-out.'."\n" .'- **passthrough**: passthrough.'."\n" .'- **reject-all**: reject all.', 'enumValueTitles' => [], 'type' => 'string', 'required' => false, 'enum' => ['fifo', 'random', 'passthrough', 'reject-all'], 'example' => 'fifo', 'title' => '', ], ], [ 'name' => 'QueuingStatusCode', 'in' => 'query', 'schema' => [ 'description' => 'The waiting room status code. Valid values:'."\n" ."\n" .'- **200**'."\n" .'- **202**'."\n" .'- **429**', 'enumValueTitles' => [], 'type' => 'string', 'required' => false, 'enum' => ['200', '202', '429'], 'example' => '200', 'title' => '', ], ], [ 'name' => 'JsonResponseEnable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable JSON response. Valid values:'."\n" ."\n" .'- **on**: Enabled.'."\n" .'- **off**: Disabled.', 'enumValueTitles' => [], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'off', 'title' => '', ], ], [ 'name' => 'Description', 'in' => 'query', 'allowEmptyValue' => true, 'schema' => ['description' => 'The description of the waiting room.', 'type' => 'string', 'required' => false, 'example' => 'http://yywyyw.com', 'title' => ''], ], [ 'name' => 'WaitingRoomType', 'in' => 'query', 'schema' => [ 'description' => 'The type of the waiting room. Valid values:'."\n" ."\n" .'- **default**: default type.'."\n" .'- **custom**: custom type.', 'enumValueTitles' => [], 'type' => 'string', 'required' => false, 'enum' => ['default', 'custom'], 'example' => 'custom', 'title' => '', ], ], [ 'name' => 'CustomPageHtml', 'in' => 'query', 'allowEmptyValue' => true, 'schema' => ['description' => 'The custom waiting room page content. This parameter is required when the waiting room type is set to custom. The content must use Base64 encoding.', 'type' => 'string', 'required' => false, 'example' => 'SGVsbG8gd29ybGQ=', 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The timestamp of the event start time.', 'type' => 'string', 'required' => false, 'example' => '1719763200', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The timestamp of the event end time.', 'type' => 'string', 'required' => false, 'example' => '1719849600', 'title' => ''], ], [ 'name' => 'PreQueueEnable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable pre-queuing. Valid values:'."\n" ."\n" .'- **on**: Enabled.'."\n" .'- **off**: Disabled.', 'enumValueTitles' => [], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'PreQueueStartTime', 'in' => 'query', 'allowEmptyValue' => true, 'schema' => ['description' => 'The timestamp of the pre-queuing start time.', 'type' => 'string', 'required' => false, 'example' => '1719763200', 'title' => ''], ], [ 'name' => 'RandomPreQueueEnable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable random pre-queuing. Valid values:'."\n" ."\n" .'- **on**: Enabled.'."\n" .'- **off**: Disabled.', 'enumValueTitles' => [], 'type' => 'string', 'enum' => ['on', 'off'], 'required' => false, 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Language', 'in' => 'query', 'allowEmptyValue' => true, 'schema' => [ 'description' => 'The default language setting. Valid values:'."\n" ."\n" .' - **enus**: English.'."\n" .'- **zhcn**: Simplified Chinese.'."\n" .'- **zhhk**: Traditional Chinese.', 'enumValueTitles' => [], 'type' => 'string', 'enum' => ['enus', 'zhcn', 'zhhk'], 'required' => false, 'example' => 'enus', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0195619f-eab3-4a66-ac00-ed53d913e72e', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'InvalidConfigId', 'errorMessage' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'description' => 'The ConfigId does not exist.'], ['errorCode' => 'WaitingRoomEventNotExist', 'errorMessage' => 'The waiting room event that you want to modify does not exist. Specify a valid one.', 'description' => 'The waiting room event that you want to modify does not exist. Specify a valid one.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'QuotaCheckFailed.FunctionArg', 'errorMessage' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.', 'description' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0195619f-eab3-4a66-ac00-ed53d913e72e\\"\\n}","type":"json"}]', 'title' => 'Update a waiting room event', 'changeSet' => [ ['createdAt' => '2025-02-21T03:40:42.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-09-18T06:13:39.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateWaitingRoomEvent'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateWaitingRoomEvent', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UpdateWaitingRoomRule' => [ 'summary' => 'Updates the waiting room bypass rule configuration for a specified site.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239642', 'abilityTreeNodes' => ['FEATUREdcdnA885EB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~2850189~~) operation to obtain the site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456****', 'title' => ''], ], [ 'name' => 'WaitingRoomRuleId', 'in' => 'query', 'schema' => ['description' => 'The ID of the waiting room bypass rule to update. You can obtain this ID after creating a rule by calling CreateWaitingRoomRule, or by calling the [ListWaitingRoomRules](~~2850279~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '8987739839****', 'title' => ''], ], [ 'name' => 'RuleName', 'in' => 'query', 'schema' => ['description' => 'The rule name. This parameter is not required when you add a global configuration.', 'type' => 'string', 'required' => true, 'example' => 'test1', 'title' => ''], ], [ 'name' => 'RuleEnable', 'in' => 'query', 'schema' => [ 'description' => 'Specifies whether to enable the rule. This parameter is not required when you add a global configuration. Valid values:'."\n" .'- on: enabled.'."\n" .'- off: disabled.', 'enumValueTitles' => [], 'type' => 'string', 'required' => true, 'enum' => ['on', 'off'], 'example' => 'on', 'title' => '', ], ], [ 'name' => 'Rule', 'in' => 'query', 'schema' => ['description' => 'The rule content. A conditional expression is used to match user requests. This parameter is not required when you add a global configuration. Two scenarios are supported:'."\n" .'- Match all incoming requests: set the value to true.'."\n" .'- Match specified requests: set the value to a custom expression, for example, (http.host eq \\"video.example.com\\").'."\n" ."\n" .'For the complete syntax of rule expressions, refer to'."\n" .'https://www.alibabacloud.com/help/en/edge-security-acceleration/esa/user-guide/work-with-rules-engine/'."\n" .'https://www.alibabacloud.com/help/edge-security-acceleration/esa/user-guide/work-with-rules-engine/', 'type' => 'string', 'required' => true, 'example' => '(http.request.uri.path.file_name eq \\"jpg\\")', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '9bfe9d95-7bf6-469d-a628-ed7bc9f25073', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'CompileRuleError', 'errorMessage' => 'Rule compilation failed, please check the rule information passed in to ensure that the rule is written according to the syntax described in the document.', 'description' => 'Rule compilation failed. Check the incoming rule configuration. For details, see the rule configuration format described in the interface document.'], ['errorCode' => 'SiteConfigLengthExceedLimit', 'errorMessage' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['errorCode' => 'ConfigConflicts', 'errorMessage' => 'Configuration conflicts, usually when multiple configurations are configured under the same function of the same site, such as duplicate rule names between multiple configurations.', 'description' => 'The parameter uniqueness check failed. Check for duplicate parameter values.'], ['errorCode' => 'RuleRegexQuotaCheckFailed', 'errorMessage' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['errorCode' => 'NestedRuleQuotaCheckFailed', 'errorMessage' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['errorCode' => 'ServiceInvokeFailed', 'errorMessage' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['errorCode' => 'FunctionConflict', 'errorMessage' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter.ArgName', 'errorMessage' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['errorCode' => 'InvalidParameter.ArgValue', 'errorMessage' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['errorCode' => 'LockFailed', 'errorMessage' => 'The system is handling requests you previously submitted. Try again later.', 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['errorCode' => 'WaitingRoomRuleNotExist', 'errorMessage' => 'The waiting room bypass rule that you want to modify does not exist. Specify a valid one.', 'description' => 'The waiting room bypass rule that you want to modify does not exist. Specify a valid one.'], ['errorCode' => 'FunctionQuotaCheckFailed', 'errorMessage' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['errorCode' => 'QuotaCheckFailed.FunctionArg', 'errorMessage' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.', 'description' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified ArgName is required for this function.', 'description' => 'When configuring a specific function, the required parameter is missing.'], ], 404 => [ ['errorCode' => 'SiteNotFound', 'errorMessage' => 'The website does not exist or does not belong to you.', 'description' => 'The website does not exist or does not belong to you.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9bfe9d95-7bf6-469d-a628-ed7bc9f25073\\"\\n}","type":"json"}]', 'title' => 'Update a waiting room bypass rule', 'description' => 'Modifies the rule settings of a specific waiting room for a site, including the rule name, enabled status, and rule content.', 'changeSet' => [ ['createdAt' => '2025-02-21T03:40:42.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-09-18T06:13:39.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateWaitingRoomRule'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:UpdateWaitingRoomRule', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UploadClientCaCertificate' => [ 'summary' => 'Uploads a client CA certificate.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239190', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], [ 'name' => 'Certificate', 'in' => 'formData', 'schema' => ['description' => 'The certificate content.', 'type' => 'string', 'required' => true, 'example' => '-----BEGIN CERTIFICATE-----', 'title' => ''], ], [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The certificate name.', 'type' => 'string', 'required' => false, 'example' => 'yourCertName', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', 'title' => ''], 'Id' => ['description' => 'The certificate ID.', 'type' => 'string', 'example' => 'baba39055622c008b90285a8838ed09a', 'title' => ''], 'Status' => ['description' => 'The certificate status.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'CommonName' => ['description' => 'The common name of the certificate.', 'type' => 'string', 'example' => 'www.example.com', 'title' => ''], 'NotBefore' => ['description' => 'The start time of the certificate validity period.', 'type' => 'string', 'example' => '2023-12-01T02:13:07Z', 'title' => ''], 'NotAfter' => ['description' => 'The end time of the certificate validity period.', 'type' => 'string', 'example' => '2024-12-01T02:13:07Z', 'title' => ''], 'Issuer' => ['description' => 'The certification authority.', 'type' => 'string', 'example' => 'GlobalSign nv-sa', 'title' => ''], 'SerialNumber' => ['description' => 'The certificate serial number.', 'type' => 'string', 'example' => 'babab9db65ee5efcca9f3d41d4b50d66', 'title' => ''], 'FingerprintSha256' => ['description' => 'The SHA-256 fingerprint of the certificate.', 'type' => 'string', 'example' => '1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456aca66', 'title' => ''], 'SignatureAlgorithm' => ['description' => 'The signature algorithm of the certificate.', 'type' => 'string', 'example' => 'SHA256-RSA', 'title' => ''], 'ValidityDays' => ['description' => 'The number of days the certificate is valid.', 'type' => 'string', 'example' => '300', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Certificate.StatusError', 'errorMessage' => 'The status of the certificate is invalid.', 'description' => 'The specified certificate status is invalid.'], ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.', 'description' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'QuotaCheckFailed.Function', 'errorMessage' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.', 'description' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"Id\\": \\"baba39055622c008b90285a8838ed09a\\",\\n \\"Status\\": \\"OK\\",\\n \\"CommonName\\": \\"www.example.com\\",\\n \\"NotBefore\\": \\"2023-12-01T02:13:07Z\\",\\n \\"NotAfter\\": \\"2024-12-01T02:13:07Z\\",\\n \\"Issuer\\": \\"GlobalSign nv-sa\\",\\n \\"SerialNumber\\": \\"babab9db65ee5efcca9f3d41d4b50d66\\",\\n \\"FingerprintSha256\\": \\"1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456aca66\\",\\n \\"SignatureAlgorithm\\": \\"SHA256-RSA\\",\\n \\"ValidityDays\\": \\"300\\"\\n}","type":"json"}]', 'title' => 'Upload a client CA certificate', 'requestParamsDescription' => 'The certificate content specified by the Certificate parameter must be in PEM format and must be a valid CA certificate within its validity period (X.509 extension basicConstraints: CA:TRUE).', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UploadClientCaCertificate'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:UploadClientCaCertificate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'UploadFile' => [ 'summary' => 'Uploads a refresh or prefetch file to improve access speed.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239245', 'abilityTreeNodes' => ['FEATUREdcdnBCJPGN', 'FEATUREdcdnRELTJV', 'FEATUREdcdnEWYS3A', 'FEATUREdcdn4TTNAL'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'Url', 'in' => 'query', 'schema' => ['description' => 'The URL of the refresh or prefetch file stored in OSS. The Url parameter accepts URLs in two formats:'."\n" ."\n" .'- Transit URL (recommended): automatically generated through the file transfer feature of the ESA console or SDK.'."\n" ."\n" .'- OSS pre-signed HTTPS URL: generated after you upload the file to an authorized OSS bucket. The isFileTransferUrl field specifies whether to use the transit URL mode.', 'type' => 'string', 'required' => true, 'isFileTransferUrl' => true, 'example' => 'https://XXXXXX.oss-cn-hangzhou.aliyuncs.com/{prefix}_{account_uid}_{hash}', 'title' => ''], ], [ 'name' => 'Type', 'in' => 'query', 'schema' => [ 'description' => 'The type of the refresh or prefetch task. Valid values:'."\n" .'- **file** (default): file refresh.'."\n" .'- **preload**: file prefetch.'."\n" .'- **directory**: directory refresh.'."\n" .'- **ignoreParams**: parameter-ignored refresh.', 'enumValueTitles' => ['file' => 'File refresh.', 'ignoreparams' => 'Parameter-ignored refresh.', 'preload' => 'File prefetch.', 'directory' => 'Directory refresh.'], 'type' => 'string', 'required' => true, 'enum' => ['file', 'preload', 'directory', 'ignoreparams'], 'example' => 'file', 'title' => '', ], ], [ 'name' => 'UploadTaskName', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The name of the upload task.', 'type' => 'string', 'required' => true, 'maxLength' => 128, 'example' => 'purge_task_2024_11_11', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '3C6CCEC4-6B88-4D4A-93E4-D47B3D92CF8F'], 'UploadId' => ['description' => 'The ID of the file upload task. You can use this ID to submit or query the task.', 'type' => 'integer', 'format' => 'int64', 'example' => '159253299357****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidTime', 'errorMessage' => 'The query time cannot exceed the last 3 days.', 'description' => 'The query time cannot exceed the last 3 days.'], ['errorCode' => 'MissingParameter.ObjectType', 'errorMessage' => 'The ObjectType parameter is required if DomainName or ObjectType is specified.', 'description' => 'Specify the ObjectType parameter.'], ['errorCode' => 'InvalidParameters', 'errorMessage' => 'The specified parameters are invalid.', 'description' => 'Parameter is illegal.'], ['errorCode' => 'ExceedFileUpload', 'errorMessage' => 'The size of the uploaded file exceeds the upper limit. Select a file less than 10 MB.', 'description' => 'The size of the uploaded file exceeds the upper limit. Select a file less than 10 MB.'], ['errorCode' => 'TooManyRequests', 'errorMessage' => 'Too many requests.Please try again later.', 'description' => 'Requests are too frequent, please try again later.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3C6CCEC4-6B88-4D4A-93E4-D47B3D92CF8F\\",\\n \\"UploadId\\": 0\\n}","type":"json"}]', 'title' => 'Upload a refresh or prefetch file', 'description' => '> '."\n" .'> - The maximum file size is 10 MB.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UploadFile'], ], ], 'ramActions' => [], ], 'UploadOriginCaCertificate' => [ 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '261740', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'formData', 'schema' => ['description' => 'The site ID. You can call the [ListSites](~~ListSites~~) operation to get this ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890***', 'title' => ''], ], [ 'name' => 'Certificate', 'in' => 'formData', 'schema' => ['description' => 'The content of the CA certificate.', 'type' => 'string', 'required' => true, 'example' => '-----BEGIN CERTIFICATE-----', 'title' => ''], ], [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The name of the certificate.', 'type' => 'string', 'required' => false, 'example' => 'example', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response object.', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F'."\n", 'title' => ''], 'Id' => ['description' => 'The certificate ID.', 'type' => 'string', 'example' => 'babaabcd****', 'title' => ''], 'Status' => ['description' => 'The certificate status.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'CommonName' => ['description' => 'The common name of the certificate.', 'type' => 'string', 'example' => 'www.example.com ', 'title' => ''], 'NotBefore' => ['description' => 'The validity start time of the certificate.', 'type' => 'string', 'example' => '2023-12-01T02:13:07Z', 'title' => ''], 'NotAfter' => ['description' => 'The validity end time of the certificate.', 'type' => 'string', 'example' => '2024-12-01T02:13:07Z', 'title' => ''], 'Issuer' => ['description' => 'The issuer of the certificate.', 'type' => 'string', 'example' => 'GlobalSign nv-sa', 'title' => ''], 'SerialNumber' => ['description' => 'The serial number of the certificate.', 'type' => 'string', 'example' => 'babaded901474b9693acf530e0fb1daa', 'title' => ''], 'FingerprintSha256' => ['description' => 'The SHA-256 fingerprint of the certificate.', 'type' => 'string', 'example' => '1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456aca66', 'title' => ''], 'SignatureAlgorithm' => ['description' => 'The signature algorithm of the certificate.', 'type' => 'string', 'example' => 'SHA256-RSA', 'title' => ''], 'ValidityDays' => ['description' => 'The validity period of the certificate in days.', 'type' => 'string', 'example' => '365', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Certificate.StatusError', 'errorMessage' => 'The status of the certificate is invalid.', 'description' => 'The specified certificate status is invalid.'], ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.', 'description' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'QuotaCheckFailed.Function', 'errorMessage' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.', 'description' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Upload Origin Server CA Certificate', 'summary' => 'Uploads an origin server CA certificate.', 'description' => 'You can add multiple origins to a site. Edge Security Acceleration (ESA) supports various origin types, including domain names, IP addresses, OSS, and S3. Origin authentication is supported for OSS or S3 origins.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UploadOriginCaCertificate'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:UploadOriginCaCertificate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\\\n\\",\\n \\"Id\\": \\"babaabcd****\\",\\n \\"Status\\": \\"OK\\",\\n \\"CommonName\\": \\"www.example.com \\",\\n \\"NotBefore\\": \\"2023-12-01T02:13:07Z\\",\\n \\"NotAfter\\": \\"2024-12-01T02:13:07Z\\",\\n \\"Issuer\\": \\"GlobalSign nv-sa\\",\\n \\"SerialNumber\\": \\"babaded901474b9693acf530e0fb1daa\\",\\n \\"FingerprintSha256\\": \\"1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456aca66\\",\\n \\"SignatureAlgorithm\\": \\"SHA256-RSA\\",\\n \\"ValidityDays\\": \\"365\\"\\n}","type":"json"}]', ], 'UploadOriginClientCertificate' => [ 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '261751', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The site ID. To get this ID, call the [ListSites](~~2850189~~) API.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'Certificate', 'in' => 'formData', 'schema' => ['description' => 'The content of the certificate in PEM format.', 'type' => 'string', 'required' => true, 'example' => '-----BEGIN CERTIFICATE-----', 'title' => ''], ], [ 'name' => 'PrivateKey', 'in' => 'formData', 'schema' => ['description' => 'The private key for the certificate in PEM format.', 'type' => 'string', 'required' => true, 'example' => '-----BEGIN PRIVATE KEY-----', 'title' => ''], ], [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The certificate name.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response object.', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '36af3fcc-43d0-441c-86b1-428951dc8225', 'title' => ''], 'Id' => ['description' => 'The ID of the certificate.', 'type' => 'string', 'example' => 'babaabcd****', 'title' => ''], 'Status' => ['description' => 'The status of the certificate.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'CommonName' => ['description' => 'The common name of the certificate.', 'type' => 'string', 'example' => 'www.example.com', 'title' => ''], 'NotBefore' => ['description' => 'The start of the certificate\'s validity period (`not before`). The timestamp is in UTC and formatted in ISO 8601.', 'type' => 'string', 'example' => '2023-12-01T02:13:07Z', 'title' => ''], 'NotAfter' => ['description' => 'The end of the certificate\'s validity period (`not after`). The timestamp is in UTC and formatted in ISO 8601.', 'type' => 'string', 'example' => '2024-12-01T02:13:07Z', 'title' => ''], 'Issuer' => ['description' => 'The issuer of the certificate.', 'type' => 'string', 'example' => 'GlobalSign nv-sa', 'title' => ''], 'SerialNumber' => ['description' => 'The serial number of the certificate.', 'type' => 'string', 'example' => 'babaded901474b9693acf530e0fb1daa', 'title' => ''], 'FingerprintSha256' => ['description' => 'The SHA-256 fingerprint of the certificate.', 'type' => 'string', 'example' => '1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456aca66', 'title' => ''], 'SignatureAlgorithm' => ['description' => 'The signature algorithm of the certificate.', 'type' => 'string', 'example' => 'SHA256-RSA', 'title' => ''], 'ValidityDays' => ['description' => 'The validity period of the certificate in days.', 'type' => 'string', 'example' => '365', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Certificate.StatusError', 'errorMessage' => 'The status of the certificate is invalid.', 'description' => 'The specified certificate status is invalid.'], ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.', 'description' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'QuotaCheckFailed.Function', 'errorMessage' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.', 'description' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'CertificateNotMatchPrivateKey', 'errorMessage' => 'The specified certificate does not match the private key.', 'description' => 'The specified certificate and private key do not match.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], ], 'title' => 'Upload a domain-granularity origin fetch client certificate.', 'summary' => 'Uploads an origin client certificate for a site.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UploadOriginClientCertificate'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:UploadOriginClientCertificate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36af3fcc-43d0-441c-86b1-428951dc8225\\",\\n \\"Id\\": \\"babaabcd****\\",\\n \\"Status\\": \\"OK\\",\\n \\"CommonName\\": \\"www.example.com\\",\\n \\"NotBefore\\": \\"2023-12-01T02:13:07Z\\",\\n \\"NotAfter\\": \\"2024-12-01T02:13:07Z\\",\\n \\"Issuer\\": \\"GlobalSign nv-sa\\",\\n \\"SerialNumber\\": \\"babaded901474b9693acf530e0fb1daa\\",\\n \\"FingerprintSha256\\": \\"1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456aca66\\",\\n \\"SignatureAlgorithm\\": \\"SHA256-RSA\\",\\n \\"ValidityDays\\": \\"365\\"\\n}","type":"json"}]', ], 'UploadSiteOriginClientCertificate' => [ 'summary' => 'Upload site origin client certificate', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '261744', 'abilityTreeNodes' => ['FEATUREdcdnX7NWEB'], 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '123456789****', 'title' => ''], ], [ 'name' => 'Certificate', 'in' => 'formData', 'schema' => ['description' => 'The certificate content.', 'type' => 'string', 'required' => true, 'example' => '-----BEGIN CERTIFICATE-----', 'title' => ''], ], [ 'name' => 'PrivateKey', 'in' => 'formData', 'schema' => ['description' => 'The private key of the certificate.', 'type' => 'string', 'required' => true, 'example' => '-----BEGIN PRIVATE KEY-----', 'title' => ''], ], [ 'name' => 'Name', 'in' => 'formData', 'schema' => ['description' => 'The certificate name.', 'type' => 'string', 'required' => false, 'example' => 'example', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'Request ID.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', 'title' => ''], 'Id' => ['description' => 'The certificate ID on ESA.', 'type' => 'string', 'example' => 'babaabcd****', 'title' => ''], 'Status' => ['description' => 'The status of the certificate.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'CommonName' => ['description' => 'The Common Name of the certificate.', 'type' => 'string', 'example' => 'www.example.com', 'title' => ''], 'NotBefore' => ['description' => 'The time when the certificate takes effect.', 'type' => 'string', 'example' => '2023-12-01T02:13:07Z', 'title' => ''], 'NotAfter' => ['description' => 'The time when the certificate expires.', 'type' => 'string', 'example' => '2024-12-01T02:12:49Z', 'title' => ''], 'Issuer' => ['description' => 'The CA that issued the certificate.', 'type' => 'string', 'example' => 'GlobalSign nv-sa', 'title' => ''], 'SerialNumber' => ['description' => 'The serial number of the certificate.', 'type' => 'string', 'example' => 'babaded901474b9693acf530e0fb1d**', 'title' => ''], 'FingerprintSha256' => ['description' => 'The SHA-256 fingerprint of the certificate.', 'type' => 'string', 'example' => '1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456aca**', 'title' => ''], 'SignatureAlgorithm' => ['description' => 'The signature algorithm of the certificate.', 'type' => 'string', 'example' => 'SHA256-RSA', 'title' => ''], 'ValidityDays' => ['description' => 'The validity period of the certificate. Unit: day.', 'type' => 'string', 'example' => '365', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Certificate.StatusError', 'errorMessage' => 'The status of the certificate is invalid.', 'description' => 'The specified certificate status is invalid.'], ['errorCode' => 'InvalidParameter.SiteId', 'errorMessage' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.', 'description' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.'], ['errorCode' => 'MissingSiteId', 'errorMessage' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['errorCode' => 'QuotaCheckFailed.Function', 'errorMessage' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.', 'description' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.'], ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'CertificateNotMatchPrivateKey', 'errorMessage' => 'The specified certificate does not match the private key.', 'description' => 'The specified certificate and private key do not match.'], ], 403 => [ ['errorCode' => 'Unauthorized.InvalidTime', 'errorMessage' => 'The specified authentication time is invalid.', 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['errorCode' => 'Unauthorized.InvalidToken', 'errorMessage' => 'Token authentication failed.', 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"Id\\": \\"babaabcd****\\",\\n \\"Status\\": \\"OK\\",\\n \\"CommonName\\": \\"www.example.com\\",\\n \\"NotBefore\\": \\"2023-12-01T02:13:07Z\\",\\n \\"NotAfter\\": \\"2024-12-01T02:12:49Z\\",\\n \\"Issuer\\": \\"GlobalSign nv-sa\\",\\n \\"SerialNumber\\": \\"babaded901474b9693acf530e0fb1d**\\",\\n \\"FingerprintSha256\\": \\"1dc5fc9af4eead2570c70d94b416130baeb6d4429b51fd3557379588456aca**\\",\\n \\"SignatureAlgorithm\\": \\"SHA256-RSA\\",\\n \\"ValidityDays\\": \\"365\\"\\n}","type":"json"}]', 'title' => 'Upload Site-level Origin Client Certificate', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UploadSiteOriginClientCertificate'], ], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'esa:UploadSiteOriginClientCertificate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], ], 'VerifyCustomHostname' => [ 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239650', 'abilityTreeNodes' => ['FEATUREdcdn4DMKZ4'], ], 'parameters' => [ [ 'name' => 'HostnameId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'The ID of the SaaS domain name. You can call the [ListCustomHostnames](~~3018667~~) operation to obtain the ID.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID. A unique identifier that Alibaba Cloud generates for the request.', 'type' => 'string', 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', 'title' => ''], 'Passed' => ['title' => '', 'description' => 'Indicates whether the verification is passed.', 'type' => 'boolean', 'example' => 'true'], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 200 => [ ['errorCode' => 'CustomHostname.VerifyUnpassed', 'errorMessage' => 'The custom hostname ownership verification failed. Complete the verification and try again.', 'description' => 'The custom hostname ownership verification failed. Complete the verification and try again.'], ], 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is invalid.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'NoPermission', 'errorMessage' => 'You do not have permissions to access or operate on the resource.Contact your account administrator to attach the AliyunESAFullAccess policy to the current user.', 'description' => 'You do not have permissions to access or operate on the resource.Contact your account administrator to attach the AliyunESAFullAccess policy to the current user.'], ['errorCode' => 'Instance.NotOnline', 'errorMessage' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['errorCode' => 'Record.ServiceBusy', 'errorMessage' => 'The record is being configured. Try again later.', 'description' => 'The record is being configured. Try again later.'], ['errorCode' => 'CustomHostname.InvalidICP', 'errorMessage' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.', 'description' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.'], ['errorCode' => 'CustomHostname.ConflictWithExistingResource', 'errorMessage' => 'The custom hostname conflicts with existing resources, such as sites, records, load balancers, source address pools, custom hostnames and Layer 4 proxy records.', 'description' => 'The custom hostname conflicts with existing resources, such as sites, records, load balancers, source address pools, custom hostnames and Layer 4 proxy records.'], ['errorCode' => 'CustomHostname.OfflineForMultiReason', 'errorMessage' => 'Unable to activate the custom hostname because it is offline due to multiple reasons.', 'description' => ''], ['errorCode' => 'CustomHostname.InvalidStatus', 'errorMessage' => 'The status of the custom hostname you configured is invalid, and this operation cannot be performed. Please check the status of the custom hostname and try again.', 'description' => 'The status of the custom hostname you configured is invalid, and this operation cannot be performed. Please check the status of the custom hostname and try again.'], ], 404 => [ ['errorCode' => 'CustomHostname.NotFound', 'errorMessage' => 'The custom hostname does not exist. Modify it and try again.', 'description' => 'The custom hostname does not exist. Modify it and try again.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'Verify saaS domain name ownership', 'summary' => 'Verifies the ownership of a SaaS domain name. Sites that pass the verification are automatically activated.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'VerifyCustomHostname'], ], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'esa:VerifyCustomHostname', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"Passed\\": true\\n}","type":"json"}]', ], 'VerifySite' => [ 'summary' => 'Verifies the ownership of a website domain. Websites that pass the verification are automatically activated.', 'methods' => ['post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '239614', 'abilityTreeNodes' => ['FEATUREdcdn4W8FYZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The website ID, which can be obtained by calling the [ListSites](~~2850189~~) operation.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890123', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '65C66B7B-671A-8297-9187-2R5477247B76', 'title' => ''], 'Passed' => ['description' => 'Indicates whether the verification passed. Valid values:'."\n" ."\n" .'* **true**'."\n" .'* **false**'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InternalException', 'errorMessage' => 'Failed to call the service. Try again later or contact technical support.', 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['errorCode' => 'Site.ServiceBusy', 'errorMessage' => 'This website is being configured. Try again later.', 'description' => 'This website is being configured. Try again later.'], ['errorCode' => 'Site.Conflict', 'errorMessage' => 'Duplicate website names exist across multiple accounts. Rename or delete one and try again.', 'description' => 'Duplicate website names exist across multiple accounts. Rename or delete one and try again.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Invalid parameter. Check the parameter configuration.', 'description' => 'Invalid parameter. Check the parameter configuration.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"65C66B7B-671A-8297-9187-2R5477247B76\\",\\n \\"Passed\\": true\\n}","type":"json"}]', 'title' => 'VerifySite', 'description' => '1. For a website connected by using NS setup, this operation verifies whether the nameservers of the website are the nameservers assigned by Alibaba Cloud.'."\n" .'2. For a website connected by using CNAME setup, this operation verifies whether the website has a TXT record whose hostname is _esaauth.[websiteDomainName] and record value is the value of VerifyCode to the DNS records of your domain. You can see the VerifyCode field in the site information.', 'changeSet' => [ ['createdAt' => '2024-09-18T06:13:38.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'VerifySite'], ], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'esa:VerifySite', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ESA', 'resourceType' => 'Site', 'arn' => 'acs:esa:{#regionId}:{#accountId}:site/{#SiteId}'], ], ], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], ], ], 'endpoints' => [ ['regionId' => 'ap-southeast-1', 'regionName' => 'Singapore', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'esa.ap-southeast-1.aliyuncs.com', 'endpoint' => 'esa.ap-southeast-1.aliyuncs.com', 'vpc' => 'esa-vpc.ap-southeast-1.aliyuncs.com'], ['regionId' => 'cn-hangzhou', 'regionName' => 'China (Hangzhou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'esa.cn-hangzhou.aliyuncs.com', 'endpoint' => 'esa.cn-hangzhou.aliyuncs.com', 'vpc' => 'esa-vpc.cn-hangzhou.aliyuncs.com'], ], 'errorCodes' => [ ['code' => '%s.NotSupport', 'message' => 'The specified resource type %s is not supported.', 'http_code' => 403, 'description' => 'The specified resource type is not supported. To use this type of resource, please contact us.'], ['code' => '%s.OverQuota', 'message' => 'The quantity of %s exceeds the quota.', 'http_code' => 403, 'description' => 'The amount of this resource exceeds the quota. If you need to apply for more quota, please contact us.'], ['code' => '%s.WrongValueMatched', 'message' => 'The value of specified parameter %s can not pass the matching check.', 'http_code' => 403, 'description' => 'The value of the specified parameter can not pass the matching check. If you determine that you need to use this parameter value, please contact us.'], ['code' => 'AccountBlacklist', 'message' => 'Account blacklist restrictions, please submit a work order to contact customer service for processing.', 'http_code' => 400, 'description' => 'Account blacklist restrictions, please submit a work order to contact customer service for processing.'], ['code' => 'AccountStatusIllegal', 'message' => 'The account status is illegal.', 'http_code' => 400, 'description' => 'The account status is illegal.'], ['code' => 'ActiveSiteNotExist', 'message' => 'Failed to match an active website based on the hostname you specified. Check whether the hostname is correct or activate the website first.', 'http_code' => 400, 'description' => 'Failed to match an active website based on the hostname you specified. Check whether the hostname is correct or activate the website first.'], ['code' => 'AppAlreadyExist', 'message' => 'The containerized application name already exists. Specify another name.', 'http_code' => 400, 'description' => 'The containerized application name already exists. Specify another name.'], ['code' => 'ApplyCertificateNotAllowed', 'message' => 'The certificate application is not allowed for current site.', 'http_code' => 400, 'description' => 'The current site is not allowed to request a free certificate, please make sure the site is activated. To apply for a wildcard domain name certificate, make sure that the current site is accessed in NS mode.'], ['code' => 'ApplyVanityNSError', 'message' => 'Failed to apply for vanity NS resources. Please contact customer service.', 'http_code' => 400, 'description' => 'Failed to apply for vanity NS resources. Please contact customer service.'], ['code' => 'ApplyVipError', 'message' => 'Failed to apply for ip resources, please contact customer service.', 'http_code' => 400, 'description' => 'Failed to apply for IP resources, please contact customer service.'], ['code' => 'ArgQuotaCheckFailed', 'message' => 'The passed-in parameter value failed to verify the validity of the plan. Please check the plan document to obtain the range of parameters that can be configured for the site plan.', 'http_code' => 400, 'description' => 'The current plan does not support the configuration of restricted parameters, please check the input parameters.'], ['code' => 'BASIC_INFO_UNCOMPLETED', 'message' => 'You have not completed your personal basic information. Please complete the information and try again.', 'http_code' => 400, 'description' => 'You have not completed your basic personal information. Please complete the information and re-operate. (If the current account is a managed sub-account, please contact the main account and click this link to complete the information.) <"/>esarealtimelogpushsls.dcdnservices.aliyuncs.com<"/><"/>.', 'http_code' => 400, 'description' => 'You do not have permissions to create a service-linked role.Contact your account administrator to attach the AliyunESAFullAccess policy or a custom policy that grants permissions to create a service-linked role to the current user.Service: <"/><"/>esarealtimelogpushsls.dcdnservices.aliyuncs.com<"/><"/>.'], ['code' => 'CreateTimeError', 'message' => 'The effective time of the same policy template cannot overlap.', 'http_code' => 400, 'description' => 'The effective time of the same policy template cannot overlap.'], ['code' => 'DependedByOthers', 'message' => 'Failed to call the service. Try again later or contact technical support.', 'http_code' => 400, 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['code' => 'DnsSecDenied', 'message' => 'Only sites accessed by NS can enable DNSSEC.', 'http_code' => 400, 'description' => 'Only sites accessed by NS can enable the DNSSEC function.'], ['code' => 'Domain.NotSupport.Waf', 'message' => 'Failed to enable WAF for the domain due to incompatible scheduling domain configurations or properties. Check and adjust your configurations and try again. If the problem persists, contact technical support.', 'http_code' => 403, 'description' => 'Failed to enable WAF for the domain due to incompatible scheduling domain configurations or properties. Check and adjust your configurations and try again. If the problem persists, contact technical support.'], ['code' => 'DomainInRiskList', 'message' => 'The domain you added may be at risk. If you have any questions, please submit a ticket.', 'http_code' => 400, 'description' => 'The domain name you added may be at risk. If you have any questions, please submit a work order.'], ['code' => 'DomainNameOverLimit', 'message' => 'A maximum of 500 domains are supported for each request.', 'http_code' => 400, 'description' => 'Only 500 domain names are supported at a time. Please reduce the number of domain names to request again.'], ['code' => 'DuplicateRequirementTicket', 'message' => 'Repeated demand order.', 'http_code' => 400, 'description' => 'Repeated demand order.'], ['code' => 'EdgeContainer.HasOpened', 'message' => 'You have already activated Edge Container.', 'http_code' => 400, 'description' => 'You have already activated Edge Container.'], ['code' => 'EdgePortsOverlap', 'message' => 'There is overlap between multiple edge ports, please check and try again after modification.', 'http_code' => 400, 'description' => 'There is overlap between multiple edge ports, please check and try again after modification.'], ['code' => 'EnterpriseAmountErr', 'message' => 'Enterprise plans do not support bulk purchase.', 'http_code' => 400, 'description' => 'Enterprise plans do not support bulk purchase.'], ['code' => 'ErrSiteIdNoteEnterprise', 'message' => 'This feature is unavailable because your website is not associated with an Enterprise plan. Upgrade your plan to Enterprise.', 'http_code' => 400, 'description' => 'This feature is unavailable because your website is not associated with an Enterprise plan. Upgrade your plan to Enterprise.'], ['code' => 'ErService.HasOpened', 'message' => 'You have already activated Edge Routine.', 'http_code' => 400, 'description' => 'You have already activated Edge Routine.'], ['code' => 'ErService.NotOpen', 'message' => 'Er service has not opend.', 'http_code' => 403, 'description' => 'Er service has not opend.'], ['code' => 'EsaService.NotOpen', 'message' => 'ESA service has not opend.', 'http_code' => 403, 'description' => 'Edge Security Accelerator (ESA) is not turned on'], ['code' => 'ExceedFileUpload', 'message' => 'The size of the uploaded file exceeds the upper limit. Select a file less than 10 MB.', 'http_code' => 400, 'description' => 'The size of the uploaded file exceeds the upper limit. Select a file less than 10 MB.'], ['code' => 'Expression.Invalid', 'message' => 'Expression syntax error or data type mismatched.', 'http_code' => 403, 'description' => 'Expression syntax error or data type mismatched.'], ['code' => 'Expression.Invalid', 'message' => 'The specified expression is invalid: %s.', 'http_code' => 403, 'description' => 'The specified expression is invalid.'], ['code' => 'Forbidden', 'message' => 'You are not authorized to operate this resource, or this API does not support RAM.', 'http_code' => 403, 'description' => 'You are not authorized to operate this resource, or this API does not support RAM.'], ['code' => 'FunctionConflict', 'message' => 'The feature configuration conflicts. Sites with version management enabled cannot configure this feature.', 'http_code' => 400, 'description' => 'The currently configured function conflicts with other functions. If you need to configure, delete the conflicting function configurations first.'], ['code' => 'FunctionQuotaCheckFailed', 'message' => 'The quota verification for this function fails. It may be that the configuration of this function exceeds the limit of the site plan. Please check the plan introduction document corresponding to this site.', 'http_code' => 400, 'description' => 'The current plan does not support the configuration of restricted functions, please check the plan related function description.'], ['code' => 'HostnameNumberExceedLimit', 'message' => 'The maximum number of hostnames associated with the CA certificate you specified has been reached.', 'http_code' => 400, 'description' => 'The number of domain names bound to CA certificates exceeds the limit. A maximum of 50 domain names can be bound to each CA certificate.'], ['code' => 'Id.MissingParameter', 'message' => 'The parameter Id is required.', 'http_code' => 400, 'description' => 'The required parameter Id is missing.'], ['code' => 'IllegalOperation.VersionManagement', 'message' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.', 'http_code' => 400, 'description' => 'The version management operation failed because incompatible features or environment settings are configured. Adjust your configurations and try again.'], ['code' => 'Instance.NotOnline', 'message' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.', 'http_code' => 400, 'description' => 'Your plan is unavailable due to an overdue payment. Complete the payment first.'], ['code' => 'Instance.ReleaseFailed', 'message' => 'Instance release failed.', 'http_code' => 400, 'description' => 'Instance release failed.'], ['code' => 'Instance.UpdateSpecError', 'message' => 'The security instance can only be changed after 31 days of purchase, and can only be changed once a natural month.', 'http_code' => 400, 'description' => 'The security instance can only be changed after 31 days of purchase, and can only be changed once a natural month.'], ['code' => 'InstanceNotExist', 'message' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.', 'http_code' => 400, 'description' => 'The instance does not exist. Check whether the specified instance ID is correct or whether the instance belongs to your account.'], ['code' => 'InsufficientAvailableQuota', 'message' => 'Your account balance is insufficient.', 'http_code' => 400, 'description' => 'Your account is in arrears, please pay the arrears before purchasing.'], ['code' => 'InsufficientBalance', 'message' => 'Your account balance is insufficient.', 'http_code' => 400, 'description' => 'Your account balance is insufficient, please recharge before purchasing.'], ['code' => 'InternalError', 'message' => 'An internal exception occurred, please try again later.', 'http_code' => 400, 'description' => 'An inner exception was triggered. Please try again later.'], ['code' => 'InternalError', 'message' => 'Failed to call the service. Try again later or contact technical support.', 'http_code' => 500, 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['code' => 'InternalException', 'message' => 'Failed to call the service. Try again later or contact technical support.', 'http_code' => 400, 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['code' => 'InternalOperationError', 'message' => 'Failed to call the service. Try again later or contact technical support.', 'http_code' => 400, 'description' => 'Failed to call the service. Try again later or contact technical support.'], ['code' => 'Invalid.Parameter', 'message' => 'Invalid request parameters for querying standard logs. Check and try again.', 'http_code' => 400, 'description' => 'Invalid request parameters for querying standard logs. Check and try again.'], ['code' => 'Invalid.Value', 'message' => 'Invalid value in the key-value pair. Make sure the value is Base64-encoded.', 'http_code' => 400, 'description' => 'Invalid value in the key-value pair. Make sure the value is Base64-encoded.'], ['code' => 'InvalidAccount.Malformed', 'message' => 'The specified account is invalid.', 'http_code' => 400, 'description' => 'The account number is not entered correctly, for example, the input is empty.'], ['code' => 'InvalidAccount.NotFound', 'message' => 'The specified account does not exist.', 'http_code' => 404, 'description' => 'The specified account does not exist.'], ['code' => 'InvalidApp.NotFound', 'message' => 'The application does not exist. Check whether the application ID you specified is correct and try again.', 'http_code' => 404, 'description' => 'The application does not exist. Check whether the application ID you specified is correct and try again.'], ['code' => 'InvalidArgName', 'message' => 'The parameter name does not exist, please check the function interface document.', 'http_code' => 400, 'description' => 'The parameter name does not exist, please check the function interface document.'], ['code' => 'InvalidCertificate.NotFound', 'message' => 'The specified certificate does not match the website. Check the validity of the certificate and try again.', 'http_code' => 400, 'description' => 'The specified certificate does not match the website. Check the validity of the certificate and try again.'], ['code' => 'InvalidComponent', 'message' => 'The order parameters is invalid.', 'http_code' => 400, 'description' => 'The order parameters is invalid.'], ['code' => 'InvalidConfigId', 'message' => 'The input configuration ID: ConfigId it does not exist, query the existing configuration and its valid ConfigId through the ListSiteFunction.', 'http_code' => 400, 'description' => 'The ConfigId does not exist.'], ['code' => 'InvalidEndTime.Malformed', 'message' => 'The specified EndTime is invalid.', 'http_code' => 400, 'description' => 'Please provide the correct end time format. The date format follows ISO8601 notation and uses UTC time. The format is: yyyy-MM-ddTHH:mm:ssZ.'], ['code' => 'InvalidEndTime.Mismatch', 'message' => 'The specified EndTime is earlier than the StartTime.', 'http_code' => 400, 'description' => 'The end time you entered is earlier than the start time. Please check and try again.'], ['code' => 'InvalidExecution.CountFull', 'message' => 'The maximum number of prefetch plans has been reached. Delete some completed tasks and try again.', 'http_code' => 400, 'description' => 'The maximum number of prefetch plans has been reached. Delete some completed tasks and try again.'], ['code' => 'InvalidExecution.NotFound', 'message' => 'The execution plan does not exist. Check whether the parameters such as the execution ID, start time, and end time are correct.', 'http_code' => 404, 'description' => 'The execution plan does not exist. Check whether the parameters such as the execution ID, start time, and end time are correct.'], ['code' => 'InvalidFunctions.Malformed', 'message' => 'The specified Functions is invalid.', 'http_code' => 400, 'description' => 'The specified configuration is invalid.'], ['code' => 'InvalidInstance', 'message' => 'The instance ID is missing or invalid. Make sure that the instance ID is valid and try again.', 'http_code' => 400, 'description' => 'The instance ID is missing or invalid. Make sure that the instance ID is valid and try again.'], ['code' => 'InvalidJob.JobCountOfSiteFull', 'message' => 'The maximum number of prefetch tasks for the website has been reached. Delete some unwanted ones and try again.', 'http_code' => 400, 'description' => 'The maximum number of prefetch tasks for the website has been reached. Delete some unwanted ones and try again.'], ['code' => 'InvalidJob.NotFound', 'message' => 'The task does not exist. Check whether the task ID is correct or whether the task has been deleted.', 'http_code' => 404, 'description' => 'The task does not exist. Check whether the task ID is correct or whether the task has been deleted.'], ['code' => 'InvalidKey.ExceedsCapacity', 'message' => 'The maximum storage capacity of the Edge KV namespace has been reached. Delete unwanted key-value pairs to save the storage.', 'http_code' => 403, 'description' => 'The maximum storage capacity of the Edge KV namespace has been reached. Delete unwanted key-value pairs to save the storage.'], ['code' => 'InvalidKey.ExceedsCapacity', 'message' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', 'http_code' => 403, 'description' => 'The capacity of the storage space exceeds the limit.'], ['code' => 'InvalidKey.ExceedsMaximum', 'message' => 'The size of the key cannot exceed 512 bytes.', 'http_code' => 400, 'description' => 'The length of the requested key is too large.'], ['code' => 'InvalidKey.Malformed', 'message' => 'The specified key is invalid.', 'http_code' => 400, 'description' => 'Key name input error, such as entering an empty string.'], ['code' => 'InvalidKey.NotFound', 'message' => 'The specified key does not exist.', 'http_code' => 404, 'description' => 'The specified key-value pair does not exist.'], ['code' => 'InvalidKey.QuotaFull', 'message' => 'The total number of IP exceeds the quota.', 'http_code' => 406, 'description' => 'The total number of ip addresses exceeds the quota.'], ['code' => 'InvalidKey.TooManyDimensions', 'message' => 'Request contains too many dimensions.', 'http_code' => 400, 'description' => 'Request contains too many dimensions. For more information, see OpenAPI Documentation .'."\n"], ['code' => 'InvalidNameSpace.Duplicate', 'message' => 'The specified namespace already exists.', 'http_code' => 406, 'description' => 'Specified storage space'], ['code' => 'InvalidNameSpace.Malformed', 'message' => 'The specified namespace is invalid.', 'http_code' => 400, 'description' => 'The bucket name is entered incorrectly, such as an empty string.'], ['code' => 'InvalidNameSpace.NotFound', 'message' => 'The specified namespace does not exist.', 'http_code' => 404, 'description' => 'The specified storage space does not exist.'], ['code' => 'InvalidNameSpace.QuotaFull', 'message' => 'The maximum number of namespaces is exceeded.', 'http_code' => 406, 'description' => 'The number of storage spaces exceeds the capacity limit.'], ['code' => 'InvalidNextToken', 'message' => 'The specified parameter NextToken is invalid.', 'http_code' => 400, 'description' => 'The parameter NextToken is illegal.'], ['code' => 'InvalidPageSize.ValueNotSupported', 'message' => 'The PageSize value is invalid. The default value is set to 20. The acceptable range is between 1 and 500.', 'http_code' => 400, 'description' => 'The request PageSize value is invalid. The default value is 20 and the value range is 1-500.'], ['code' => 'InvalidParameter', 'message' => 'Invalid parameter. Check the parameter configuration.', 'http_code' => 400, 'description' => 'Invalid parameter. Check the parameter configuration.'], ['code' => 'InvalidParameter', 'message' => 'Parameter verification failed. Check your configurations and try again.', 'http_code' => 400, 'description' => 'Parameter verification failed. Check your configurations and try again.'], ['code' => 'InvalidParameter', 'message' => 'The specified parameter is invalid.', 'http_code' => 400, 'description' => 'The specified parameter is invalid.'], ['code' => 'InvalidParameter.AddressConflict', 'message' => 'Duplicate origin addresses. Make sure that each origin address for the same pool is unique.', 'http_code' => 400, 'description' => 'Duplicate origin addresses. Make sure that each origin address for the same pool is unique.'], ['code' => 'InvalidParameter.ApiItems.Api', 'message' => 'The parameter apiItems api is invalid.', 'http_code' => 400, 'description' => 'The parameter apiItems api is invalid.'], ['code' => 'InvalidParameter.ApiItems.Host', 'message' => 'The parameter apiItems host is invalid.', 'http_code' => 400, 'description' => 'The parameter apiItems host is invalid.'], ['code' => 'InvalidParameter.ApiShield.Quota', 'message' => 'This website does not have the permission to view API security features.', 'http_code' => 400, 'description' => 'This website does not have the permission to view API security features.'], ['code' => 'InvalidParameter.appid', 'message' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'http_code' => 400, 'description' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.'], ['code' => 'InvalidParameter.Appid', 'message' => 'The format of the application ID is invalid. You can call ListEdgeContainerApps to obtain the application ID.', 'http_code' => 400, 'description' => 'The format of the input application ID is incorrect. You can use the ListEdgeContainerApps API to obtain the application ID.'], ['code' => 'InvalidParameter.ArgName', 'message' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.', 'http_code' => 400, 'description' => 'Invalid ArgName. Check your website configuration parameters and make sure that they match the supported features and parameter names listed in the official documentation.'], ['code' => 'InvalidParameter.ArgValue', 'message' => 'Invalid parameter value. Check whether the value format and length meet the requirements.', 'http_code' => 400, 'description' => 'Invalid parameter value. Check whether the value format and length meet the requirements.'], ['code' => 'InvalidParameter.ClientIpPassThroughMode', 'message' => 'Invalid client IP transfer protocol, please refer to the interface document and pass in valid parameters.', 'http_code' => 400, 'description' => 'Invalid client IP transfer protocol, please refer to the interface document and pass in valid parameters.'], ['code' => 'InvalidParameter.CnameSiteRecordNoProxied', 'message' => 'A non-proxied record was added for a website using a CNAME setup.', 'http_code' => 400, 'description' => 'A non-proxied record was added for a website using a CNAME setup.'], ['code' => 'InvalidParameter.CnameSiteRecordUnsupport', 'message' => 'The current record type is not supported for a website connected by CNAME setup.', 'http_code' => 400, 'description' => 'You can only add A/AAAA and CNAME records to a website connected by CNAME setup.'], ['code' => 'InvalidParameter.ConfigIds', 'message' => 'Invalid ConfigId. Specify an existing Configld and make sure it is in the valid format.', 'http_code' => 400, 'description' => 'Invalid ConfigId. Specify an existing Configld and make sure it is in the valid format.'], ['code' => 'InvalidParameter.Configs', 'message' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.', 'http_code' => 400, 'description' => 'Invalid parameter configurations. Check whether your feature configurations are in the valid format and comply with relevant requirements.'], ['code' => 'InvalidParameter.Coverage', 'message' => 'The selected location is unavailable in your plan. Change the location to one that is covered by the plan and try again.', 'http_code' => 400, 'description' => 'The selected location is unavailable in your plan. Change the location to one that is covered by the plan and try again.'], ['code' => 'InvalidParameter.Dimension', 'message' => 'The specified Dimension is invalid.', 'http_code' => 400, 'description' => 'The specified Dimension is invalid. For more information, see OpenAPI Documentation .'."\n"], ['code' => 'InvalidParameter.DomainNotBelongingUser', 'message' => 'The domain name passed in does not belong to the current user.', 'http_code' => 400, 'description' => 'The domain name passed in does not belong to the current user.'], ['code' => 'InvalidParameter.Domains', 'message' => 'Duplicate domain names are specified for parameter Domains. Remove one of them and try again.', 'http_code' => 400, 'description' => 'Duplicate domain names are specified for parameter Domains. Remove one of them and try again.'], ['code' => 'InvalidParameter.Domains', 'message' => 'The maximum number of domain names specified by parameter Domains has been reached. Adjust your configurations and try again.', 'http_code' => 400, 'description' => 'The maximum number of domain names specified by parameter Domains has been reached. Adjust your configurations and try again.'], ['code' => 'InvalidParameter.Domains', 'message' => 'You have already submitted a certificate application for the domain name.', 'http_code' => 400, 'description' => 'You have already submitted a certificate application for the domain name.'], ['code' => 'InvalidParameter.Domains', 'message' => 'One or more domain names specified by parameter Domains do not belong to the current website. Check and try again.', 'http_code' => 400, 'description' => 'One or more domain names specified by parameter Domains do not belong to the current website. Check and try again.'], ['code' => 'InvalidParameter.Domains', 'message' => 'The domain specified in Domains parameter is not a valid domain name, please check and try again.', 'http_code' => 400, 'description' => 'Domains there is an invalid domain name in the parameter, please check and try again.'], ['code' => 'InvalidParameter.Domains', 'message' => 'The site you configured is currently accessed in the CNAME mode. Please switch to the NS mode and try again.', 'http_code' => 400, 'description' => 'The site you configured is currently accessed in the CNAME mode. Please switch to the NS mode and try again.'], ['code' => 'InvalidParameter.Domains', 'message' => 'The maximum number of domain names specified by parameter Domains has been reached. Adjust your configurations and try again. The upper limit of lets.encrypt type domain name is 50, the upper limit of digicert.single type domain name is 10, and the upper limit of digicert.wildcard type domain name is 1.', 'http_code' => 400, 'description' => 'The maximum number of domain names specified by parameter Domains has been reached. Adjust your configurations and try again. The upper limit of lets_encrypt type domain name is 50, the upper limit of digicert_single type domain name is 10, and the upper limit of digicert_wildcard type domain name is 1.'], ['code' => 'InvalidParameter.Domains', 'message' => 'The site which is configured in CNAME mode does not support wildcard domain certificate application.', 'http_code' => 400, 'description' => 'The CNAME site does not support applying for a free certificate for wildcard domain names.'], ['code' => 'InvalidParameter.DomainsExceedLimit', 'message' => 'The number of incoming domain names exceeds the maximum limit.', 'http_code' => 400, 'description' => 'The number of incoming domain names exceeds the maximum limit.'."\n"], ['code' => 'InvalidParameter.DomainSourceTypeNotSupport', 'message' => 'The underlying source type of the domain is not supported.', 'http_code' => 400, 'description' => 'The underlying origin type of the domain name is not supported.'], ['code' => 'InvalidParameter.EmptyAKSK', 'message' => 'AK,SK information cannot be empty.', 'http_code' => 400, 'description' => 'AK,SK information cannot be empty.'], ['code' => 'InvalidParameter.EndpointId', 'message' => 'The parameter EndpointId is invalid.', 'http_code' => 400, 'description' => 'The parameter EndpointId is invalid.'], ['code' => 'InvalidParameter.ExistedHandlingTask', 'message' => 'There is a task in process, waiting for execution to complete.', 'http_code' => 400, 'description' => 'There is a task in process, waiting for execution to complete.'], ['code' => 'InvalidParameter.Field', 'message' => 'The specified Field is invalid.', 'http_code' => 400, 'description' => 'The specified Field is invalid. For more information, see OpenAPI Documentation .'], ['code' => 'InvalidParameter.FunctionName', 'message' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.', 'http_code' => 400, 'description' => 'The specified feature does not exist. Specify a valid feature name based on the related documentation.'], ['code' => 'InvalidParameter.FuzzySearch', 'message' => 'The parameter fuzzySearch is invalid.', 'http_code' => 400, 'description' => 'The parameter fuzzySearch is invalid.'], ['code' => 'InvalidParameter.HealthCheckFailTimes', 'message' => 'Specified parameter HealthCheckFailTimes is not valid.', 'http_code' => 400, 'description' => 'Parameter HealthCheckFailTimes format is incorrect.'], ['code' => 'InvalidParameter.HealthCheckHost', 'message' => 'Specified parameter HealthCheckHost is not valid.', 'http_code' => 400, 'description' => 'Parameter HealthCheckHost format is incorrect.'], ['code' => 'InvalidParameter.HealthCheckHttpCode', 'message' => 'Specified parameter HealthCheckHttpCode is not valid.', 'http_code' => 400, 'description' => 'Parameter HealthCheckHttpCode format is incorrect.'], ['code' => 'InvalidParameter.HealthCheckInterval', 'message' => 'Specified parameter HealthCheckInterval is not valid.', 'http_code' => 400, 'description' => 'Parameter HealthCheckInterval format is incorrect.'], ['code' => 'InvalidParameter.HealthCheckMethod', 'message' => 'Specified parameter HealthCheckMethod is not valid.', 'http_code' => 400, 'description' => 'Parameter HealthCheckMethod format is incorrect.'], ['code' => 'InvalidParameter.HealthCheckPort', 'message' => 'Specified parameter HealthCheckPort is not valid.', 'http_code' => 400, 'description' => 'Parameter HealthCheckPort format is incorrect.'], ['code' => 'InvalidParameter.HealthCheckSuccTimes', 'message' => 'Specified parameter HealthCheckSuccTimes is not valid.', 'http_code' => 400, 'description' => 'Parameter HealthCheckHost format is incorrect.'], ['code' => 'InvalidParameter.HealthCheckTimeout', 'message' => 'Specified parameter HealthCheckTimeout is not valid.', 'http_code' => 400, 'description' => 'Parameter HealthCheckTimeout format is incorrect.'], ['code' => 'InvalidParameter.HealthCheckType', 'message' => 'Specified parameter HealthCheckType is not valid.', 'http_code' => 400, 'description' => 'Parameter HealthCheckType format is incorrect.'], ['code' => 'InvalidParameter.HealthCheckURI', 'message' => 'Specified parameter HealthCheckURI is not valid.', 'http_code' => 400, 'description' => 'Parameter HealthCheckURI format is incorrect.'], ['code' => 'InvalidParameter.HttpHeaders', 'message' => 'The specified HttpHeaders is invalid. Please check the HttpHeaders parameter. Please make the necessary changes and call the interface again.', 'http_code' => 400, 'description' => 'The HttpHeaders parameter is invalid. Please check whether the HttpHeaders parameter is filled in. The parameter cannot contain @.'], ['code' => 'InvalidParameter.Image', 'message' => 'The specified Image is invalid. Please check the Image parameter and make the necessary modifications and call the interface again.', 'http_code' => 400, 'description' => 'Illegal Image parameter. Please check the Image parameter, which cannot be assigned to illegal characters such @.'], ['code' => 'InvalidParameter.InvalidBiz', 'message' => 'the value of the business type is empty or the incoming parameter is invalid.', 'http_code' => 400, 'description' => 'The value of the business type is empty or the incoming parameter is invalid.'], ['code' => 'InvalidParameter.InvalidBiz', 'message' => 'The incoming parameter value of the business type is empty or incorrect.', 'http_code' => 400, 'description' => 'The incoming parameter value of the business type is empty or incorrect.'], ['code' => 'InvalidParameter.InvalidDSRecordName', 'message' => 'Please add/import an NS record with the same name before adding this DS record.', 'http_code' => 400, 'description' => 'Please add/import an NS record with the same name before adding this DS record'], ['code' => 'InvalidParameter.InvalidHostPolicy', 'message' => 'The host parameter in the origin fetch request is invalid.', 'http_code' => 400, 'description' => 'The host parameter in the origin fetch request is invalid.'], ['code' => 'InvalidParameter.InvalidRecordName', 'message' => 'The record name you entered does not meet the specifications. Change the record name according to the product documentation.', 'http_code' => 400, 'description' => 'The record name you entered does not meet the specifications. Please adjust the record name according to the product documentation.'], ['code' => 'InvalidParameter.InvalidRecordName', 'message' => 'The DNS record name you entered does not meet the required specifications. Please adjust the record name according to the product documentation.', 'http_code' => 400, 'description' => 'The record name you entered does not meet the specifications. Please adjust the record name according to the product documentation.'], ['code' => 'InvalidParameter.InvalidRecordNameSuffix', 'message' => 'If you add other records, the suffix of the host record must be the same as the site name.', 'http_code' => 400, 'description' => 'If you add another record, the suffix of the host record must be the same as the site name. Please adjust and try again.'], ['code' => 'InvalidParameter.InvalidSiteEnvironmentName', 'message' => 'The specified site environment name is invalid.', 'http_code' => 400, 'description' => 'The specified site environment name is invalid.'], ['code' => 'InvalidParameter.InvalidVanityNSName', 'message' => 'A vanity nameserver must be an absolute domain name. Correct it and try again.', 'http_code' => 400, 'description' => 'You need to enter the full domain name to customize the NS name. Please adjust and submit it again.'], ['code' => 'InvalidParameter.InvalidVanityNSNum', 'message' => 'Enter 2 to 5 vanity nameservers. Correct them and try again.', 'http_code' => 400, 'description' => 'Custom NS requires 2~5 names, please adjust and resubmit.'], ['code' => 'InvalidParameter.LoadBalancerNameInvalid', 'message' => 'Invalid load balancer name. Make sure that you specify a valid subdomain name under your website domain for the load balancer.', 'http_code' => 400, 'description' => 'Invalid load balancer name. Make sure that you specify a valid subdomain name under your website domain for the load balancer.'], ['code' => 'InvalidParameter.MethodFilter', 'message' => 'The parameter methodFilter is invalid.', 'http_code' => 400, 'description' => 'The parameter methodFilter is invalid.'], ['code' => 'InvalidParameter.Name', 'message' => 'The specified Name is invalid. Please check the Name parameter, which must be between 6 and 128 characters. Kindly make the necessary modifications and call the interface again.', 'http_code' => 400, 'description' => 'The Name parameter is not valid. Check the Name parameter, which is between 6 and 128 characters. After modification, call the interface again.'], ['code' => 'InvalidParameter.NotFoundDomain', 'message' => 'The incoming domain name or some domain names cannot be found based on the user and product type.', 'http_code' => 400, 'description' => 'The incoming domain name or some domain names cannot be found based on the user and product type.'], ['code' => 'InvalidParameter.NotMatchedCoverage', 'message' => 'The domain name and the coverage of the site are inconsistent.', 'http_code' => 400, 'description' => 'The domain name and the acceleration area of the site are inconsistent.'], ['code' => 'InvalidParameter.NotMatchedRootDomain', 'message' => 'The domain name does not match the root domain name information for the site.', 'http_code' => 400, 'description' => 'The domain name does not match the root domain name information for the site.'], ['code' => 'InvalidParameter.NotSupportedDomainBiz', 'message' => 'The business type of the domain name is not supported.', 'http_code' => 400, 'description' => 'The business type of the domain name is not supported.'], ['code' => 'InvalidParameter.NotSupportedDomainStatus', 'message' => 'The status of the domain name is not allowed.', 'http_code' => 400, 'description' => 'The status of the domain name is not allowed.'], ['code' => 'InvalidParameter.NotSupportedMultiChannelDomain', 'message' => 'The multi-channel domain are not supported.', 'http_code' => 400, 'description' => 'Multi-channel domain names are not supported.'], ['code' => 'InvalidParameter.NotSupportVendor', 'message' => 'Do not support the vendor, please select the vendor supported.', 'http_code' => 400, 'description' => 'Do not support the vendor, please select the vendor supported.'], ['code' => 'InvalidParameter.ObjectId', 'message' => 'Invalid task ID or execution plan ID.', 'http_code' => 400, 'description' => 'Invalid task ID or execution plan ID.'], ['code' => 'InvalidParameter.ObjectsAndSiteIds', 'message' => 'The specified Objects and SiteIds variables cannot both be empty strings.', 'http_code' => 400, 'description' => 'The specified Objects and SiteIds variables cannot both be empty strings.'], ['code' => 'InvalidParameter.OrderKey', 'message' => 'The specified OrderKey is invalid. Please check the OrderKey parameter.', 'http_code' => 400, 'description' => 'The OrderKey parameter is invalid. Please check the OrderKey parameter, as it cannot be assigned illegal characters such as @, #, % etc. Please make the necessary modifications and call the interface again.'], ['code' => 'InvalidParameter.OrderType', 'message' => 'The specified OrderType is invalid. Please check the OrderType parameter. You may not have set it to either Asc or Desc. Please make the necessary changes and call the interface again.', 'http_code' => 400, 'description' => 'The OrderType parameter is invalid. Please check the OrderType parameter. You may not have set it to Asc or Desc. Please modify it and call the interface again.'], ['code' => 'InvalidParameter.PageNumber', 'message' => 'Failed to verify parameter PageNumber.Check whether the parameter exists and is set to a positive integer.', 'http_code' => 400, 'description' => 'Failed to verify parameter PageNumber.Check whether the parameter exists and is set to a positive integer.'], ['code' => 'InvalidParameter.Percentage', 'message' => 'The Percentage parameter is invalid. Please check the Percentage parameter, which should be in the range of 1-100. Modify it accordingly and call the interface again.', 'http_code' => 400, 'description' => 'The Percentage parameter is invalid. Check the Percentage parameter. The parameter range is 1-100. Modify the parameter and call the interface again.'], ['code' => 'InvalidParameter.Port', 'message' => 'Invalid edge port or origin port. Enter a valid port as required in the interface document.', 'http_code' => 400, 'description' => 'Invalid edge port or origin port. Enter a valid port as required in the interface document.'], ['code' => 'InvalidParameter.Protocol', 'message' => 'Invalid port protocol. Enter a valid port protocol as required by the interface documentation.', 'http_code' => 400, 'description' => 'Invalid port protocol. Enter a valid port protocol as required by the interface documentation.'], ['code' => 'InvalidParameter.PublishEnv', 'message' => 'The specified PublishEnv is invalid. Please check the PublishEnv parameter. It may not be set to either "prod" or "staging." Please make the necessary changes and call the interface again.', 'http_code' => 400, 'description' => 'The PublishEnv parameter is invalid. Please check the PublishEnv parameter. You may not have set it to prod or staging one of them. Please modify it and call the interface again.'], ['code' => 'InvalidParameter.RecordCommentExceedLimit', 'message' => 'The number of incoming record comment exceeds the maximum limit.', 'http_code' => 400, 'description' => 'The record comment information is greater than 50 characters.'], ['code' => 'InvalidParameter.RecordData', 'message' => 'Invalid record content. Adjust your configurations based on the API documentation.', 'http_code' => 400, 'description' => 'Invalid record content. Adjust your configurations based on the API documentation.'], ['code' => 'InvalidParameter.RecordNameExceedLimit', 'message' => 'The length of the record name exceeds the maximum limit.', 'http_code' => 400, 'description' => 'The record name cannot exceed 200 characters.'], ['code' => 'InvalidParameter.RecordNotBelongToSite', 'message' => 'The record name passed in does not belong to the current site.', 'http_code' => 400, 'description' => 'The record name passed in does not belong to the current site.'], ['code' => 'InvalidParameter.RecordsExceedLimit', 'message' => 'The number of incoming records exceeds the maximum limit.', 'http_code' => 400, 'description' => 'The number of incoming records exceeds the maximum limit.'], ['code' => 'InvalidParameter.RecordType', 'message' => 'Invalid record type. Adjust your configurations based on the API documentation.', 'http_code' => 400, 'description' => 'Invalid record type. Adjust your configurations based on the API documentation.'], ['code' => 'InvalidParameter.RuleSource', 'message' => 'The origin of the forwarding rule does not exist or is invalid. Enter the correct origin and try again.', 'http_code' => 400, 'description' => 'The origin of the forwarding rule does not exist or is invalid. Enter the correct origin and try again.'], ['code' => 'InvalidParameter.SiteEnvironmentRuleDuplicate', 'message' => 'The specified site environment rule is the same as an existing environment.', 'http_code' => 400, 'description' => 'The specified site environment rule is the same as an existing environment.'], ['code' => 'InvalidParameter.SiteId', 'message' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.', 'http_code' => 400, 'description' => 'Failed to query the website based on the SiteID you specified. Check parameter SiteId and try again.'], ['code' => 'InvalidParameter.SiteId', 'message' => 'The specified SiteId is invalid.', 'http_code' => 400, 'description' => 'The specified SiteId is invalid.Check parameter SiteId and try again.'], ['code' => 'InvalidParameter.SiteName', 'message' => 'Invalid website name. Specify a valid name that contains letters and digits and does not contain special characters.', 'http_code' => 400, 'description' => 'Invalid website name. Specify a valid name that contains letters and digits and does not contain special characters.'], ['code' => 'InvalidParameter.SiteVersionDescExceedLimit', 'message' => 'The specified site version description exceeds the maximum length.', 'http_code' => 400, 'description' => 'The specified site version description exceeds the maximum length.'], ['code' => 'InvalidParameter.StateFilter', 'message' => 'The parameter stateFilter is invalid.', 'http_code' => 400, 'description' => 'The parameter stateFilter is invalid.'], ['code' => 'InvalidParameter.TagValue', 'message' => 'The specified TagValue is invalid.', 'http_code' => 400, 'description' => 'The TagValue parameter is invalid.'], ['code' => 'InvalidParameter.TimeRange', 'message' => 'The specified time range exceeds the limit. Adjust it and try again.', 'http_code' => 400, 'description' => 'The specified time range exceeds the limit. Adjust it and try again.'], ['code' => 'InvalidParameter.Type', 'message' => 'The specified Type parameter is invalid, please check and try again.', 'http_code' => 400, 'description' => 'The Type parameter you configured is incorrect. Please check and try again. Certificate application type support lets_encrypt, digicert_single, digicert_wildcard.'], ['code' => 'InvalidParameter.UnSatisfiedDomainSources', 'message' => 'The basic origin sources of the domain is not satisfied.', 'http_code' => 400, 'description' => 'The basic origin information of the domain name is not satisfied.'], ['code' => 'InvalidParameter.VanityNSNameDuplicate', 'message' => 'The vanity nameservers are duplicated. Please delete it and try again.', 'http_code' => 400, 'description' => 'Duplicate custom NS name exists, please delete and resubmit.'], ['code' => 'InvalidParameter.VersionId', 'message' => 'The specified VersionId is invalid.  Please check the VersionId parameter. You may not have entered the parameter or the parameter does not start with ver-string. Please modify it and call the interface again.', 'http_code' => 400, 'description' => 'The VersionId parameter is invalid. Please check the VersionId parameter. You may not have entered the parameter or the parameter does not start with ver-string. Please modify it and call the interface again.'], ['code' => 'InvalidParameters', 'message' => 'The specified parameters are invalid.', 'http_code' => 400, 'description' => 'Parameter is illegal.'], ['code' => 'InvalidParameters.InvalidUrls', 'message' => 'The specified urls are invalid.', 'http_code' => 400, 'description' => 'The requested URL parameter is invalid.'], ['code' => 'InvalidParameter_ApiItems_Api', 'message' => 'The parameter apiItems api is invalid.', 'http_code' => 400, 'description' => 'The parameter apiItems api is invalid.'], ['code' => 'InvalidParameter_ApiItems_Host', 'message' => 'The parameter apiItems host is invalid.', 'http_code' => 400, 'description' => 'The parameter apiItems host is invalid.'], ['code' => 'InvalidParameter_ApiShieldQuota', 'message' => 'This website does not have the permission to view API security features.', 'http_code' => 400, 'description' => 'This website does not have the permission to view API security features.'], ['code' => 'InvalidParameter_EndpointId', 'message' => 'The EndpointId is invalid.', 'http_code' => 400, 'description' => 'The EndpointId is invalid.'], ['code' => 'InvalidParameter_FuzzySearch', 'message' => 'The parameter fuzzySearch is invalid.', 'http_code' => 400, 'description' => 'The parameter fuzzySearch is invalid.'], ['code' => 'InvalidParameter_MethodFilter', 'message' => 'The parameter methodFilter is invalid.', 'http_code' => 400, 'description' => 'The parameter methodFilter is invalid.'], ['code' => 'InvalidParameter_StateFilter', 'message' => 'The parameter stateFilter is invalid.', 'http_code' => 400, 'description' => 'The parameter stateFilter is invalid.'], ['code' => 'InvalidRegionId.Malformed', 'message' => 'The specified RegionId is invalid.', 'http_code' => 400, 'description' => 'The RegionId parameter is set to an invalid value.'], ['code' => 'InvalidResourceId.NotFound', 'message' => 'The specified resource does not exist or is released.', 'http_code' => 404, 'description' => 'The resource does not exist or has been released.'], ['code' => 'InvalidRoutine', 'message' => 'The name of routine is invalid.', 'http_code' => 400, 'description' => 'Edge function name is illegal.'], ['code' => 'InvalidSiteICP', 'message' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.', 'http_code' => 400, 'description' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.'], ['code' => 'InvalidSiteName', 'message' => 'Invalid website name. Check and try again.', 'http_code' => 400, 'description' => 'Invalid website name. Check and try again.'], ['code' => 'InvalidSSLPri', 'message' => 'The specified PrivateKey is invalid.', 'http_code' => 400, 'description' => 'The value specified for the PrivateKey parameter is invalid.'], ['code' => 'InvalidSSLPub', 'message' => 'The specified Certificate is invalid.', 'http_code' => 400, 'description' => 'The value specified for the Certificate parameter is invalid.'], ['code' => 'InvalidStartTime.Malformed', 'message' => 'The specified StartTime parameter is invalid.', 'http_code' => 400, 'description' => 'Please provide the correct start time format. The date format follows ISO8601 notation and uses UTC time in the format yyyy-MM-ddTHH:mm:ssZ.'], ['code' => 'InvalidStartTime.ValueNotSupported', 'message' => 'The StartTime cannot exceed 31 days before the current time.', 'http_code' => 400, 'description' => 'The request parameter StartTime cannot be 31 days less than the current time.'], ['code' => 'InvalidStationParameter', 'message' => 'The specified Station is invalid.', 'http_code' => 400, 'description' => 'The specified node parameter is invalid.'], ['code' => 'InvalidTaskId.Malformed', 'message' => 'The specified taskId is invalid.', 'http_code' => 400, 'description' => 'The specified task ID is invalid.'], ['code' => 'InvalidTime', 'message' => 'The query time cannot exceed the last 3 days.', 'http_code' => 400, 'description' => 'The query time cannot exceed the last 3 days.'], ['code' => 'InvalidTime.Malformed', 'message' => 'Specified start time or end time is malformed.', 'http_code' => 400, 'description' => 'The specified time format is incorrect. The time must conform to the yyyy-MM-ddTHH:mm:ssZ format. Please enter it correctly and try again.'], ['code' => 'InvalidUid.PermissionDenied', 'message' => 'You do not have the permissions to perform this operation on this resource. Check whether the specified UID is correct and has the required permissions.', 'http_code' => 403, 'description' => 'You do not have the permissions to perform this operation on this resource. Check whether the specified UID is correct and has the required permissions.'], ['code' => 'InvalidValOfDelHeader', 'message' => 'The delete header operation does not support setting value.', 'http_code' => 400, 'description' => 'The delete header operation does not support setting value.'], ['code' => 'InvalidValue.ExceedsMaximum', 'message' => 'The size of the value cannot exceed 2,000,000 bytes.', 'http_code' => 400, 'description' => 'The value deposited is too large.'], ['code' => 'InvalidVersion.NotFound', 'message' => 'The version does not exist.', 'http_code' => 400, 'description' => 'This version number does not exist.'."\n"], ['code' => 'IpaNotActive', 'message' => 'The ipa application is not active.', 'http_code' => 400, 'description' => 'The ipa application is not active.'], ['code' => 'IpaResourceUnavailable', 'message' => 'The resource is unavailable.', 'http_code' => 400, 'description' => 'The resource is unavailable.'], ['code' => 'List.BeingBound', 'message' => 'The specified list is being bound.', 'http_code' => 403, 'description' => 'The specified list is being bound by one or more protection rules.'], ['code' => 'List.Name.AlreadyExist', 'message' => 'The specified list name already exists.', 'http_code' => 403, 'description' => 'The specified list name is already used by another list.'], ['code' => 'List.NotExist', 'message' => 'The specified list does not exist.', 'http_code' => 403, 'description' => 'The specified list does not exist.'], ['code' => 'LoadBalancerHealthDetectionIntervalCheckFailed', 'message' => 'The configured load balancer health detection interval exceeds the quota range allowed by the plan. Please revise the interval within the range or upgrade the plan and try again.', 'http_code' => 400, 'description' => 'The configured load balancer health detection interval exceeds the quota range allowed by the plan. Please revise the interval within the range or upgrade the plan and try again.'], ['code' => 'LoadBalancerHealthDetectionQuotaCheckFailed', 'message' => 'Your current plan does not allow you to configure the load balancer\'s health detection. Upgrade the plan and try again.', 'http_code' => 400, 'description' => 'Your current plan does not allow you to configure the load balancer\'s health detection. Upgrade the plan and try again.'], ['code' => 'LoadBalancerNameConflict', 'message' => 'The load balancer name or the hostname for the origin pool already exists. Try again with a unique name.', 'http_code' => 400, 'description' => 'The load balancer name or the hostname for the origin pool already exists. Try again with a unique name.'], ['code' => 'LoadBalancerNotExist', 'message' => 'The specified load balancer name is invalid or load balancing is not enabled for your website.Make sure that you specify a valid load balancer name and load balancing is enabled. Then, try again.', 'http_code' => 400, 'description' => 'The specified load balancer name is invalid or load balancing is not enabled for your website.Make sure that you specify a valid load balancer name and load balancing is enabled. Then, try again.'], ['code' => 'LoadBalancerNotExist', 'message' => 'The load balancer does not exist.', 'http_code' => 400, 'description' => 'The input load balancer ID does not exist. Please confirm the ID and try again.'], ['code' => 'LoadBalancerNumberExceedQuotaLimit', 'message' => 'The number of load balancers you have added has reached the limit of the plan quota. Please delete the unused load balancers or upgrade the plan and try again.', 'http_code' => 400, 'description' => 'The number of load balancers you have added has reached the limit of the plan quota. Please delete the unused load balancers or upgrade the plan and try again.'], ['code' => 'LoadBalancerPolicyCheckFailed', 'message' => 'Your current plan does not support the load balancer scheduling policy. Upgrade the plan and try again.', 'http_code' => 400, 'description' => 'Your current plan does not support the load balancer scheduling policy. Upgrade the plan and try again.'], ['code' => 'LoadBalancerQuotaCheckFailed', 'message' => 'Load balancer enable quota check failed.', 'http_code' => 400, 'description' => 'Your current plan cannot use the load balancer related functions. If you need to use it, upgrade the plan.'], ['code' => 'LoadBalancerRuleQuotaCheckFailed', 'message' => 'Your current plan does not support configuring load balancer custom rules, or the load balancer rules you have added exceed the plan quota limit. Please upgrade the plan or delete the rules that are no longer in use and try again.', 'http_code' => 400, 'description' => 'Your current plan does not support configuring load balancer custom rules, or the load balancer rules you have added exceed the plan quota limit. Please upgrade the plan or delete the rules that are no longer in use and try again.'], ['code' => 'LockFailed', 'message' => 'The system is handling requests you previously submitted. Try again later.', 'http_code' => 400, 'description' => 'The system is handling requests you previously submitted. Try again later.'], ['code' => 'LogNotFound', 'message' => 'Failed to query the log. Check whether the task ID and execution ID are valid.', 'http_code' => 404, 'description' => 'Failed to query the log. Check whether the task ID and execution ID are valid.'], ['code' => 'LogserviceNotFound', 'message' => 'Log Service has not been activated.', 'http_code' => 403, 'description' => 'Real-time log delivery is not activated.'], ['code' => 'LogstoreNotExist', 'message' => 'Logstore does not exist.', 'http_code' => 404, 'description' => 'The specified Logstore does not exist.'], ['code' => 'ManagedRulesGroup.BeingBound', 'message' => 'Failed to delete the WAF managed rule group because it has been associated with one or more rules. Disassociate the rules and try again.', 'http_code' => 403, 'description' => 'Failed to delete the WAF managed rule group because it has been associated with one or more rules. Disassociate the rules and try again.'], ['code' => 'ManagedRulesGroup.Name.Invalid', 'message' => 'Invalid name for the WAF managed rule group. Try again with a valid name.', 'http_code' => 403, 'description' => 'Invalid name for the WAF managed rule group. Try again with a valid name.'], ['code' => 'ManagedRulesGroup.NotExist', 'message' => 'The specified WAF managed rule group does not exist or is not recognized by the system. Make sure that you specify a correct WAF managed rule group ID and that the rule group has been created.', 'http_code' => 403, 'description' => 'The specified WAF managed rule group does not exist or is not recognized by the system. Make sure that you specify a correct WAF managed rule group ID and that the rule group has been created.'], ['code' => 'Match.Malformed', 'message' => 'The specified parameter match is malformed or does not adhere to the required format.', 'http_code' => 403, 'description' => 'The specified Match parameter is malformed or does not adhere to the required format.'], ['code' => 'MigrateTask.SpecificFunctionNotFound', 'message' => 'When importing domain name configurations, you need to pass in the specific feature configurations, but they are not received.', 'http_code' => 400, 'description' => 'When importing domain name configurations, you need to pass in the specific feature configurations, but they are not received.'], ['code' => 'MigrateTask.Unsupported', 'message' => 'The following conditions are not supported in the migration task:'."\n" .'1. Unadapted vendors do not support it for the time being'."\n" .'2. Non-API mode, does not support repeated execution'."\n" .'3. Tasks that are not successful, failed or partially failed are not supported for repeated execution.'."\n" .'Check and re-execute according to the prompt message.', 'http_code' => 400, 'description' => 'The following conditions are not supported in the Import Domain Name Configuration Tool. Check the following information and execute again:'."\n" .'1. Unadapted vendors do not support it for the time being'."\n" .'2. Non-API mode, does not support repeated execution'."\n" .'3. Tasks that are not successful, failed or partially failed are not supported for repeated execution.'], ['code' => 'MissingConfigId', 'message' => 'Required parameter ConfigId missing. Specify ConfigId and try again.', 'http_code' => 400, 'description' => 'Required parameter ConfigId missing. Specify ConfigId and try again.'], ['code' => 'MissingOssUrl', 'message' => 'OssUrl missing. Specify a valid URL of the OSS object that stores URLs to prefetch.', 'http_code' => 400, 'description' => 'OssUrl missing. Specify a valid URL of the OSS object that stores URLs to prefetch.'], ['code' => 'MissingParameter', 'message' => 'Required parameter RecordName missing. Specify RecordName and try again.', 'http_code' => 400, 'description' => 'Required parameter RecordName missing. Specify RecordName and try again.'], ['code' => 'MissingParameter', 'message' => 'The specified ArgName is required for this function.', 'http_code' => 400, 'description' => 'When configuring a specific function, the required parameter is missing.'], ['code' => 'MissingParameter.ObjectType', 'message' => 'The ObjectType parameter is required if DomainName or ObjectType is specified.', 'http_code' => 400, 'description' => 'Specify the ObjectType parameter.'], ['code' => 'MissingParamsError', 'message' => 'Missing required params.', 'http_code' => 400, 'description' => 'Missing necessary parameters'], ['code' => 'MissingSiteId', 'message' => 'Required parameter SiteId missing. Specify SiteId and try again.', 'http_code' => 400, 'description' => 'Required parameter SiteId missing. Specify SiteId and try again.'], ['code' => 'MissingTimeParameter', 'message' => 'The StartTime and EndTime must be both specified.', 'http_code' => 400, 'description' => 'Please provide both a start time and an end time.'], ['code' => 'MissingUrlList', 'message' => 'Enter the URLs you want to prefetch.', 'http_code' => 400, 'description' => 'Enter the URLs you want to prefetch.'], ['code' => 'MonitorExpectedBodyInvalid', 'message' => 'Invalid response body. Specify a response body that does not exceed 102,400 characters in length in your custom rule.', 'http_code' => 400, 'description' => 'Invalid response body. Specify a response body that does not exceed 102,400 characters in length in your custom rule.'], ['code' => 'MonitorExpectedCodesInvalid', 'message' => 'Invalid expected status code for the probe.Make sure that you specify no more than 10 status codes in the probe settings, and each status code must be 3 to 4 characters in length.Examples: 200, 301, 3xx, 8000, and 88xx.', 'http_code' => 400, 'description' => 'Invalid expected status code for the probe.Make sure that you specify no more than 10 status codes in the probe settings, and each status code must be 3 to 4 characters in length.Examples: 200, 301, 3xx, 8000, and 88xx.'], ['code' => 'MonitorHeaderInvalid', 'message' => 'Invalid request header for the probe. You can add up to 10 request headers, each with 1 to 9 values. The combined length of all headers and values cannot exceed 6,000 characters. You cannot configure the User-Agent header.', 'http_code' => 400, 'description' => 'The incoming monitor is carrying an illegal request header. Make sure that the number of request headers does not exceed 10, that each request header has a value length between 1 and 10, and that you must not use the User-Agent request header (which is reserved for internal specific scenarios). In addition, the total length of all request headers and their values must not exceed 6000 characters. Please check and correct the request header configuration and try again.'], ['code' => 'MonitorMethodNotSupport', 'message' => 'Invalid HTTP method for the probe request. Valid values are GET and HEAD.', 'http_code' => 400, 'description' => 'Invalid HTTP method for the probe request. Valid values are GET and HEAD.'], ['code' => 'MonitorPathNotSupport', 'message' => 'Invalid probe URL path.If you set the probe protocol to HTTP or HTTPS, make sure you specify a probe URL path that does not exceed 1,024 characters in length.', 'http_code' => 400, 'description' => 'Invalid probe URL path.If you set the probe protocol to HTTP or HTTPS, make sure you specify a probe URL path that does not exceed 1,024 characters in length.'], ['code' => 'MonitorPortNotSupport', 'message' => 'Invalid probe port. Specify a valid port from 1 to 65535 for the probe request. Then, try again.', 'http_code' => 400, 'description' => 'The incoming monitor listening port is not supported. The port value range is [1-65535]. Please ensure that the port is within the value range and try again.'], ['code' => 'MonitorRetriesInvalid', 'message' => 'Invalid number of probe retries. Specify an integer from 0 to 5. Then, try again.', 'http_code' => 400, 'description' => 'Invalid number of probe retries. Specify an integer from 0 to 5. Then try again.'], ['code' => 'MonitorTimeoutInvalid', 'message' => 'Invalid timeout for the probe. Valid values are 1 to 10.', 'http_code' => 400, 'description' => 'Invalid timeout for the probe. Valid values are 1 to 10.'], ['code' => 'MonitorTypeNotSupport', 'message' => 'Invalid protocol. Valid values are off, HTTP, HTTPS, TCP, UDP, ICMP Ping, and SMTP.', 'http_code' => 400, 'description' => 'Invalid protocol. Valid values are off, HTTP, HTTPS, TCP, UDP, ICMP Ping, and SMTP.'], ['code' => 'NameAlreadyExists', 'message' => 'The name already exists.', 'http_code' => 400, 'description' => 'Name already exists.'], ['code' => 'NameServerNotDelete', 'message' => 'Before deleting the site, you need to go to your domain name service provider to delete the NS record assigned by ESA for the site (to avoid that you forget to delete NS and other users steal your site).', 'http_code' => 400, 'description' => 'Before deleting the site, you need to go to your domain name service provider to delete the NS record assigned by ESA for the site (to avoid that you forget to delete NS and other users steal your site).'], ['code' => 'NestedRuleQuotaCheckFailed', 'message' => 'The nesting level of rules allowed by the plan failed to be verified. Please modify the nesting level of rules or upgrade the plan.', 'http_code' => 400, 'description' => 'The number of embedded sub-conditions in the rule exceeds the plan limit. Please check the plan description and upgrade your plan.'], ['code' => 'NoAvaliablePaymentMethod', 'message' => 'No payment method is specified for your account. We recommend that you add a payment method.', 'http_code' => 400, 'description' => 'No payment method has been specified for your account. We recommend that you add a payment method.'], ['code' => 'NoPermission', 'message' => 'You do not have permissions to access or operate on the resource.Contact your account administrator to attach the AliyunESAFullAccess policy to the current user.', 'http_code' => 400, 'description' => 'You do not have permissions to access or operate on the resource.Contact your account administrator to attach the AliyunESAFullAccess policy to the current user.'], ['code' => 'NoPermission', 'message' => 'Permission denied.', 'http_code' => 400, 'description' => 'No permission'], ['code' => 'NoRealNameAuthentication', 'message' => 'You have not completed real-name authentication.', 'http_code' => 400, 'description' => 'You have not completed real-name authentication.'], ['code' => 'NotExist.MigratedTask', 'message' => 'The specified task does not exist.', 'http_code' => 400, 'description' => 'The specified task does not exist.'], ['code' => 'OperationDenied.DefaultSiteEnvironmentUneditable', 'message' => 'The rule of the default environment is not allowed to be modified.', 'http_code' => 400, 'description' => 'The rule of the default environment is not allowed to be modified.'], ['code' => 'OperationDenied.UnsupportPlan', 'message' => 'The current plan does not support this operation. Use the correct plan instance to try again.', 'http_code' => 400, 'description' => 'The current plan does not support this operation. Use the correct plan instance to try again.'], ['code' => 'OperationDenied.VanityNSUnavailable', 'message' => 'Only sites in NS access type can use vanity nameservers. Convert your site to NS access type and try again.', 'http_code' => 400, 'description' => 'Sites that are accessed only by NS mode can use custom NS. Please adjust your site access mode and try again.'], ['code' => 'Order.InstanceHasUnpaidOrder', 'message' => 'You have an unpaid order. Complete the payment or cancel the order first.', 'http_code' => 400, 'description' => 'You have an unpaid order. Complete the payment or cancel the order first.'], ['code' => 'OriginPoolNameConflict', 'message' => 'The specified origin pool name already exists or its hostname conflicts with a load balancer name. Try again with a unique name.', 'http_code' => 400, 'description' => 'The specified origin pool name already exists or its hostname conflicts with a load balancer name. Try again with a unique name.'], ['code' => 'OriginPoolNotExist', 'message' => 'The specified origin pool does not exist or does not belong to your account or website. Check and try again.', 'http_code' => 400, 'description' => 'The specified origin pool does not exist or does not belong to your account or website. Check and try again.'], ['code' => 'OriginProtectionNotExist', 'message' => 'The site is not configured with origin protection, so it cannot be modified or deleted.', 'http_code' => 400, 'description' => 'The site is not configured with origin protection, so it cannot be modified or deleted.'], ['code' => 'Page.BeingBound', 'message' => 'Failed to delete the custom error page because it has been associated with one or more rules.'."\n" ."\n" .'Dissociate all rules from the error page first.', 'http_code' => 403, 'description' => 'Failed to delete the custom error page because it has been associated with one or more rules.'."\n" ."\n" .'Dissociate all rules from the error page first.'], ['code' => 'Page.BeingBound', 'message' => 'The specified custom error page has been associated with one or more protection rules. Dissociate the protection rules and try again.', 'http_code' => 403, 'description' => 'The specified custom error page has been associated with one or more protection rules. Dissociate the protection rules and try again.'], ['code' => 'Page.NotExist', 'message' => 'The specified custom error page does not exist or is not recognized by the system.Check whether the error page identifier is correct and matches an error page that has been created and registered in the system\'s error handling framework.If you want to create a new error page, make sure that the creation process is complete.', 'http_code' => 403, 'description' => 'The specified custom error page does not exist or is not recognized by the system.Check whether the error page identifier is correct and matches an error page that has been created and registered in the system\'s error handling framework.If you want to create a new error page, make sure that the creation process is complete.'], ['code' => 'Page.NotExist', 'message' => 'The specified error page is not found or not registered. Check the error page identifier and make sure that the page is correctly set up.', 'http_code' => 403, 'description' => 'The specified error page is not found or not registered. Check the error page identifier and make sure that the page is correctly set up.'], ['code' => 'ParameterAlreadyExist', 'message' => 'Parameter uniqueness verification failed. Check for duplicate parameter values.', 'http_code' => 400, 'description' => 'Parameter uniqueness verification failed. Check for duplicate parameter values.'], ['code' => 'ParameterNotExist', 'message' => 'The specified parameter does not exist. Check your configurations and try again.', 'http_code' => 400, 'description' => 'The specified parameter does not exist. Check your configurations and try again.'], ['code' => 'ParamNameError', 'message' => 'The Name parameter is invalid.', 'http_code' => 400, 'description' => 'The Name parameter is illegal.'."\n"], ['code' => 'PlanNotSupportCnDdos', 'message' => 'The plan corresponding to the current instance does not include ddos platform protection in mainland China, so the DDOS elastic protection value cannot be set. Please upgrade the package and try again.', 'http_code' => 400, 'description' => 'The plan corresponding to the current instance does not include ddos platform protection in mainland China, so the DDOS elastic protection value cannot be set. Please upgrade the package and try again.'], ['code' => 'PolicyNameExist', 'message' => 'The policy name already exists.', 'http_code' => 400, 'description' => 'Policy name already exists.'], ['code' => 'PolicyNotExist', 'message' => 'The policy does not exist.', 'http_code' => 400, 'description' => 'The policy does not exist. '], ['code' => 'PoolNumberExceedQuotaLimit', 'message' => 'The number of origin pool you have added has reached the upper limit of the plan quota. Please delete the origin pool that is no longer in use or upgrade the plan and try again.', 'http_code' => 400, 'description' => 'The number of origin pool you have added has reached the upper limit of the plan quota. Please delete the origin pool that is no longer in use or upgrade the plan and try again.'], ['code' => 'PoolReferenceExist', 'message' => 'Failed to delete the origin pool because it has been referenced.Remove all references to the pool and try again.', 'http_code' => 400, 'description' => 'Failed to delete the origin pool because it has been referenced.Remove all references to the pool and try again.'], ['code' => 'PreloadQueueFull', 'message' => 'The prefetch queue is full. Try again later.', 'http_code' => 400, 'description' => 'The prefetch queue is full, and you need to retry after the queue is processed.'], ['code' => 'PrivateKey.MissingParameter', 'message' => 'The PrivateKey parameter is required.', 'http_code' => 400, 'description' => 'Missing PrivateKey parameter.'], ['code' => 'ProjectExist', 'message' => 'The SLS project has been associated with another account. Check the project name.', 'http_code' => 200, 'description' => 'The SLS project has been associated with another account. Check the project name.'], ['code' => 'ProjectNotExist', 'message' => 'The project does not exist.', 'http_code' => 404, 'description' => 'Information about the project is not found.'], ['code' => 'QueryDBError', 'message' => 'An internal exception occurred when query data, please try again later.', 'http_code' => 500, 'description' => 'An internal exception occurred when query data, please try again later.'], ['code' => 'QueryLog.Timeout', 'message' => 'The query for standard logs timed out. Try again later.', 'http_code' => 500, 'description' => 'The query for standard logs timed out. Try again later.'], ['code' => 'QuotaCheckFailed', 'message' => 'Failed to check free certificate Quota, please try again later.', 'http_code' => 400, 'description' => 'Failed to check free certificate Quota, please try again later.'], ['code' => 'QuotaCheckFailed.CustomNS', 'message' => 'Custom nameservers are not allowed in your plan. Check the plan description and upgrade the plan.', 'http_code' => 400, 'description' => 'Custom nameservers are not allowed in your plan. Check the plan description and upgrade the plan.'], ['code' => 'QuotaCheckFailed.Function', 'message' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.', 'http_code' => 400, 'description' => 'The feature is unavailable in your plan. Upgrade the plan or contact your account manager to request the feature.'], ['code' => 'QuotaCheckFailed.FunctionArg', 'message' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.', 'http_code' => 400, 'description' => 'The specified feature parameter is not allowed in your plan, or the feature parameter configurations have reached the upper limit in your plan.'], ['code' => 'QuotaCheckFailed.Regex', 'message' => 'Rules engine with regular expressions is not allowed in your plan. Check the plan description and upgrade the plan.', 'http_code' => 400, 'description' => 'Rules engine with regular expressions is not allowed in your plan. Check the plan description and upgrade the plan.'], ['code' => 'QuotaCheckFailed.VersionManagement', 'message' => 'Insufficient quota for version management. Contact technical support.', 'http_code' => 400, 'description' => 'Insufficient quota for version management. Contact technical support.'], ['code' => 'QuotaCheckFailed.VersionManagement', 'message' => 'The current plan\'s quota of version management is insufficient. Please try to upgrade the plan.', 'http_code' => 400, 'description' => 'The version management quota of the current package is insufficient. Please try to upgrade the package version.'], ['code' => 'QuotaExceed.NestedConditional', 'message' => 'The maximum number of conditions in the rule has been reached. Check the plan description and upgrade the plan.', 'http_code' => 400, 'description' => 'The maximum number of conditions in the rule has been reached. Check the plan description and upgrade the plan.'], ['code' => 'QuotaExceed.RecordCount', 'message' => 'The maximum number of records has been reached. Delete some and try again or upgrade your plan.', 'http_code' => 400, 'description' => 'The maximum number of records has been reached. Delete some and try again or upgrade your plan.'], ['code' => 'QuotaExceed.SiteCount', 'message' => 'The maximum number of websites associated with your plan has been reached.', 'http_code' => 400, 'description' => 'The maximum number of websites associated with your plan has been reached.'], ['code' => 'QuotaExceed.UploadHttpCert', 'message' => 'The maximum number of custom certificates has been reached. Delete some and try again or upgrade your plan.', 'http_code' => 400, 'description' => 'The maximum number of custom certificates has been reached. Delete some and try again or upgrade your plan.'], ['code' => 'QuotaExceed.WildCardRecord', 'message' => 'The maximum number of wildcard records has been reached. Delete some and try again.', 'http_code' => 400, 'description' => 'The maximum number of wildcard records has been reached. Delete some and try again.'], ['code' => 'QuotaExceed.WildCardRecord', 'message' => 'The number of wildcard records exceeds the plan quota. Contact the sales team to increase your quota.', 'http_code' => 400, 'description' => 'The number of wildcard records exceeds the plan quota. Contact the sales team to increase your quota.'], ['code' => 'QuotaExceed.WildcardRecordCount', 'message' => 'The number of wildcard records added by your current site has reached the quota limit. Please delete useless wildcard records or upgrade to the plan and try again.', 'http_code' => 400, 'description' => 'The number of wildcard records added by your current site has reached the quota limit. Please delete useless wildcard records or upgrade to the plan and try again.'], ['code' => 'QuotaExceeded', 'message' => 'The quota is exceeded.', 'http_code' => 403, 'description' => 'The quota is exceeded.'], ['code' => 'QuotaExceeded', 'message' => 'You attempts have exceeded the daily limit.', 'http_code' => 400, 'description' => 'Exceeding the same day quota limit. The number of submissions today has been exhausted. You can query the number of times a quota can be used today through the quota API.'], ['code' => 'QuotaNotExist', 'message' => 'The quota item does not exist or the purchased plan has not taken effect. Confirm and try again.', 'http_code' => 400, 'description' => 'The quota item does not exist or the purchased plan has not taken effect. Confirm and try again.'], ['code' => 'RamAuthFailed', 'message' => 'The sub-account has no operation permission.', 'http_code' => 400, 'description' => 'The RAM user does not have the required operation permissions.'], ['code' => 'RealTimeLog.BucketRegionError', 'message' => 'Invalid OSS bucket region. Check the region and try again.', 'http_code' => 403, 'description' => 'Invalid OSS bucket region. Check the region and try again.'], ['code' => 'RealTimeLog.KafkaBrokersExceedError', 'message' => 'The number of Kafka Broker addresses for real-time log delivery has reached the upper limit (50).', 'http_code' => 403, 'description' => 'The number of Kafka Broker addresses for real-time log delivery has reached the upper limit (50).'], ['code' => 'RealTimeLog.KafkaConfigError', 'message' => 'Invalid Kafka information for the delivery task. Check your configurations and try again.', 'http_code' => 403, 'description' => 'Invalid Kafka information for the delivery task. Check your configurations and try again.'], ['code' => 'RealTimeLog.LogstoreExist', 'message' => 'The SLS logstore has been created within this project. Check the project name.', 'http_code' => 403, 'description' => 'A Logstore with the same name already exists in the SLS Project. Check the Logstore name.'], ['code' => 'RealTimeLog.NameCheckFail', 'message' => 'Real-time log name field validity check failed.', 'http_code' => 403, 'description' => 'The real-time log configuration field you entered contains illegal characters. Please delete the illegal characters and try again. The allowed characters include numbers, letters, underscore "_" and spaces "".'], ['code' => 'RealTimeLog.OssBucketQueryError', 'message' => 'Failed to query the OSS bucket. Check the bucket name and try again.', 'http_code' => 403, 'description' => 'Failed to query the OSS bucket. Check the bucket name and try again.'], ['code' => 'RealTimeLog.OssRoleCheckError', 'message' => 'You do not have permissions to create a service-linked role for OSS. Contact your Alibaba Cloud account or the permission administrator to attach the AliyunESAFullAccess policy or a custom policy that grants permissions to create a service-linked role to the current user.', 'http_code' => 403, 'description' => 'You do not have permissions to create a service-linked role for OSS. Contact your Alibaba Cloud account or the permission administrator to attach the AliyunESAFullAccess policy or a custom policy that grants permissions to create a service-linked role to the current user.'], ['code' => 'RealTimeLog.ProjectExistError', 'message' => 'The real-time log delivery task name already exists. Check the task name and try again.', 'http_code' => 400, 'description' => 'The real-time log delivery task name already exists. Check the task name and try again.'], ['code' => 'RealTimeLog.RegexpCheckFail', 'message' => 'Invalid characters exist in your parameter configurations. Check your configurations and try again.', 'http_code' => 403, 'description' => 'Invalid characters exist in your parameter configurations. Check your configurations and try again.'], ['code' => 'RealTimeLog.S3EndpointInvalidError', 'message' => 'Invalid S3 information for the delivery task. Check your configurations and try again.', 'http_code' => 403, 'description' => 'Invalid S3 information for the delivery task. Check your configurations and try again.'], ['code' => 'RealTimeLog.SlrRoleCheckError', 'message' => 'Your account does not have AliyunServiceRoleForESARealtimeLogPushSLS authorization. Please contact the main account or permission administrator to authorize the current user AliyunServiceRoleForESARealtimeLogPushSLS permission or create custom permissions and policies for service-associated roles.', 'http_code' => 403, 'description' => 'You do not have permissions to create a service-linked role. Contact your Alibaba Cloud account or the permission administrator to attach the AliyunESAFullAccess policy or a custom policy that grants permissions to create a service-linked role to the current user.'], ['code' => 'RealTimeLog.SlsClientError', 'message' => 'Invalid SLS information. Check whether ProjectName and LogStoreName are correctly configured and whether SLS is activated. Then, try again.', 'http_code' => 403, 'description' => 'Invalid SLS information. Check whether ProjectName and LogStoreName are correctly configured and whether SLS is activated. Then, try again.'], ['code' => 'RealTimeLog.SlsEndpointError', 'message' => 'Invalid SLS parameters for the delivery task. Check your configurations and try again.', 'http_code' => 403, 'description' => 'Invalid SLS parameters for the delivery task. Check your configurations and try again.'], ['code' => 'RealTimeLog.SlsLogstoreQueryError', 'message' => 'Failed to query the Logstore. Check the Logstore name and try again.', 'http_code' => 403, 'description' => 'Failed to query the Logstore. Check the Logstore name and try again.'], ['code' => 'RealTimeLog.SlsNotOpen', 'message' => 'You have not activated Alibaba Cloud SLS. Activate SLS first.', 'http_code' => 403, 'description' => 'You have not activated Alibaba Cloud SLS. Activate SLS first.'], ['code' => 'RealTimeLog.SlsProjectExistError', 'message' => 'The SLS project already exists. Check the project name and try again.', 'http_code' => 403, 'description' => 'The SLS project already exists. Check the project name and try again.'], ['code' => 'RealTimeLog.StatusQuotaError', 'message' => 'The maximum number of real-time log delivery tasks has been reached. Check your plan quota and upgrade the plan to request a quota increase.', 'http_code' => 403, 'description' => 'The maximum number of real-time log delivery tasks has been reached. Check your plan quota and upgrade the plan to request a quota increase.'], ['code' => 'RealtimeLogProjectExistError', 'message' => 'Realtime-log project name already exist.', 'http_code' => 400, 'description' => 'Real-time log entry name already exists'], ['code' => 'Record.AlreadyExist', 'message' => 'The specified record content conflicts with existing records. Adjust your configurations based on the related product documentation.', 'http_code' => 403, 'description' => 'The specified record content conflicts with existing records. Adjust your configurations based on the related product documentation.'], ['code' => 'Record.AorAAAARecordValueContainInvalidIP', 'message' => 'The A/AAAA record value contains the invalid IP.', 'http_code' => 400, 'description' => 'When creating or editing an A/AAAA record, the record value contains an invalid IP.'], ['code' => 'Record.AorAAAARecordValueContainIPInBlacklist', 'message' => 'The A/AAAA record value contains the blacklist IP.', 'http_code' => 400, 'description' => 'When you create or edit an A/AAAA record, the record value contains the blacklist IP.'], ['code' => 'Record.AorAAAARecordValueIPExceedLimit', 'message' => 'The number of IP addresses exceeds the limit for the A/AAAA record.', 'http_code' => 400, 'description' => 'When creating or editing A/AAAA records, the number of IP addresses exceeds the limit. A host record only supports 8 IPv4 and 4 IPv6 IP addresses. Please adjust and try again.'], ['code' => 'Record.CAARecordFlagExceedLimit', 'message' => 'The value of the flag parameter for a CAA record is out of range.', 'http_code' => 400, 'description' => 'The value of the flag parameter for a CAA record is out of range while creating or editing DNS record information.'], ['code' => 'Record.CAARecordTagExceedLimit', 'message' => 'The CAA record tag has illegal characters other than issue, issuewild, and iodef.', 'http_code' => 400, 'description' => 'When creating or editing CAA records, illegal characters other than issue, issuewild, and iodef are passed in the tag value.'], ['code' => 'Record.CERTRecordAlgorithmExceedLimit', 'message' => 'The value of the algorithm parameter for the CERT record is out of range.', 'http_code' => 400, 'description' => 'The value of the algorithm parameter for the CERT record is out of range while creating or editing DNS record information.'], ['code' => 'Record.CERTRecordKeyTagExceedLimit', 'message' => 'The value of the keyTag parameter for a CERT record is out of range.', 'http_code' => 400, 'description' => 'The value of the keyTag parameter for a CERT record is out of range when creating or editing DNS record information.'], ['code' => 'Record.CERTRecordTypeExceedLimit', 'message' => 'The CERT record type is out of range.', 'http_code' => 400, 'description' => 'The CERT record type parameter was out of range when creating or editing DNS record information.'], ['code' => 'Record.CNameRecordValueCannotEqualExistedIPASource', 'message' => 'The CNAME record cannot be the origin of the added Layer 4 application. Check the values of other Layer 4 proxy records and try again.', 'http_code' => 400, 'description' => 'The CNAME record cannot be the origin of the added Layer 4 application. Check the values of other Layer 4 proxy records and try again.'], ['code' => 'Record.CNameRecordValueCannotEqualExistedPoolSource', 'message' => 'The CNAME record cannot be the origin of the added source address pool. Check and try again.', 'http_code' => 400, 'description' => 'The CNAME record cannot be the origin of the added source address pool. Check and try again.'], ['code' => 'Record.CNameRecordValueCannotEqualExistedRecordSource', 'message' => 'The CNAME record cannot be the origin of an added record. Check the record values of other records and try again.', 'http_code' => 400, 'description' => 'The CNAME record cannot be the origin of an added record. Check the record values of other records and try again.'], ['code' => 'Record.CNameRecordValueCannotEqualHostRecord', 'message' => 'The record value of the CNAME record cannot be exactly the same as the host record.', 'http_code' => 400, 'description' => 'The record value of the CNAME record cannot be exactly the same as the host record. Please adjust and try again.'], ['code' => 'Record.CNameRecordValueCannotEqualOtherExistedIPARecord', 'message' => 'The record value of a CNAME record cannot be exactly the same as the name of another existing Layer 4 proxy record.', 'http_code' => 400, 'description' => 'The record value of a CNAME record cannot be exactly the same as the name of another existing Layer 4 proxy record.'], ['code' => 'Record.CNameRecordValueCannotEqualOtherExistedRecord', 'message' => 'The record value of a CNAME record cannot be the same as the name of another existing CNAME record.', 'http_code' => 400, 'description' => 'The record value of a CNAME record cannot be the same as the name of another existing CNAME record.'], ['code' => 'Record.CNameRecordValueContainSourceInBlacklist', 'message' => 'The CNAME record value contains the blacklist address. For details, you can submit a work order for consultation.', 'http_code' => 400, 'description' => 'The CNAME record value contains the blacklist address. For details, you can submit a work order for consultation.'], ['code' => 'Record.CNameRecordValueExceedLimit', 'message' => 'The CNAME record value cannot exceed 253 characters, please delete and try again.', 'http_code' => 400, 'description' => 'The record value cannot exceed 253 characters, please delete and try again.'], ['code' => 'Record.CNameRecordValueInvalidDomainUnderline', 'message' => 'Record values (DNS-only records) generally start with an underscore, a lowercase letter a-z, and the numbers 0-9. The middle part of the record can be lowercase letters, numbers, or hyphens, and the length is between 0 and 61 characters.', 'http_code' => 400, 'description' => 'Record values (DNS-only records) generally start with an underscore, a lowercase letter a-z, and the numbers 0-9. The middle part of the record can be lowercase letters, numbers, or hyphens, and the length is between 0 and 61 characters.'], ['code' => 'Record.CNameRecordValueInvalidRecordDomain', 'message' => 'Record values (records with agent acceleration enabled) must start with a lowercase letter a-z and numbers 0-9. The middle part of the record can be lowercase letters, numbers, or hyphens, and the length is between 0 and 61 characters.', 'http_code' => 400, 'description' => 'Record values (records with agent acceleration enabled) must start with a lowercase letter a-z and numbers 0-9. The middle part of the record can be lowercase letters, numbers, or hyphens, and the length is between 0 and 61 characters.'], ['code' => 'Record.Conflict', 'message' => 'The specified record content conflicts with existing records. Adjust your configurations based on the related product documentation.', 'http_code' => 400, 'description' => 'The specified record content conflicts with existing records. Adjust your configurations based on the related product documentation.'], ['code' => 'Record.EmptyAorAAAARecordValue', 'message' => 'The A/AAAA record value is empty, please fill it in correctly and try again.', 'http_code' => 400, 'description' => 'The A/AAAA record value is empty, please fill it in correctly and try again.'], ['code' => 'Record.EmptyCAARecordValue', 'message' => 'The CAA record value is empty.', 'http_code' => 400, 'description' => 'When creating or editing a CAA record, the value of the record is empty inside.'], ['code' => 'Record.EmptyCNameRecordValue', 'message' => 'The CNAME record value is empty.', 'http_code' => 400, 'description' => 'When creating or editing a CNAME record, the record value is empty. Please fill it in correctly and try again.'], ['code' => 'Record.EmptyMXRecordValue', 'message' => 'The MX record value cannot be empty.', 'http_code' => 400, 'description' => 'When you create or edit an MX record, the record value cannot be empty.'], ['code' => 'Record.EmptyNSRecordValue', 'message' => 'The NS record value cannot be empty.', 'http_code' => 400, 'description' => 'When you create or edit an NS record, the NS record value cannot be empty.'], ['code' => 'Record.EmptyRecordValue', 'message' => 'The record value is empty, please fill it in correctly and try again.', 'http_code' => 400, 'description' => 'The record value is empty, please fill it in correctly and try again.'], ['code' => 'Record.EmptyTXTRecordValue', 'message' => 'The TXT record value cannot be empty.', 'http_code' => 400, 'description' => 'When creating or editing a TXT record, the record value cannot be empty.'], ['code' => 'Record.InvalidCertEncodeWithCERTRecord', 'message' => 'The certificate value of the CERT record is not base64-encoded.', 'http_code' => 400, 'description' => 'When you create or edit CERT record information, the certificate value of the CERT record is not base64-encoded.'], ['code' => 'Record.InvalidFingerprintWithSSHFPRecord', 'message' => 'The SSHFP record fingerprint value is not hexadecimal encoded.', 'http_code' => 400, 'description' => 'When creating or editing SSHFP record information, the fingerprint value is not hexadecimal encoded.'], ['code' => 'Record.InvalidHTTPURLWithCAARecordTag', 'message' => 'The CAA record is prefixed with http:// or https://, a valid URL must be followed.', 'http_code' => 400, 'description' => 'When creating or editing CAA records, when Tag is iodef and Value is prefixed with http:// or https://, a valid URL must be followed.'], ['code' => 'Record.InvalidIdoefDataWithCAARecordTag', 'message' => 'The CAA record Tag value does not start with mailto: or http:// or https.', 'http_code' => 400, 'description' => 'When creating or editing CAA record information, the Tag value does not start with mailto: http:// https.'], ['code' => 'Record.InvalidIodefDataWithCAARecordTag', 'message' => 'The CAA record Tag value cannot start with mailto: or http:// or https.', 'http_code' => 400, 'description' => 'When creating or editing CAA record information, the Tag value cannot start with mailto: http:// or mailto: https.'], ['code' => 'Record.InvalidIssueDataWithCAARecordTag', 'message' => 'The tag of a CAA record can only be a semicolon or a valid domain name separated by semicolons.', 'http_code' => 400, 'description' => 'When creating or editing CAA record information, the tag tag of a CAA record can only be a semicolon or a valid domain name separated by semicolons.'], ['code' => 'Record.InvalidMailAddressWithCAARecordTag', 'message' => 'The CAA record tag is prefixed with mailto:, it must be followed by a legal email address.', 'http_code' => 400, 'description' => 'When creating or editing CAA record information, when Tag is iodef and Value is prefixed with mailto:, it must be followed by a legal email address.'], ['code' => 'Record.InvalidSmimeaEncodeWithSMIMEARecord', 'message' => 'The certificate value of the SMIMEA record is not base64-encoded.', 'http_code' => 400, 'description' => 'When creating or editing SMIMEA record information, the certificate value of the SMIMEA record is not base64-encoded.'], ['code' => 'Record.InvalidTslaEncodeWithTSLARecord', 'message' => 'The certificate value passed in is not hexadecimal encoded with TSLA record.', 'http_code' => 400, 'description' => 'When creating or editing TLSA record information, the certificate value passed in is not hexadecimal encoded.'], ['code' => 'Record.InvalidURLWithURIRecord', 'message' => 'The URI record value must be a valid URL address.', 'http_code' => 400, 'description' => 'When creating or editing URI record information, the record value must be a valid URL address.'], ['code' => 'Record.MXRecordPriorityExceedLimit', 'message' => 'The MX record priority parameter value is out of range.', 'http_code' => 400, 'description' => 'When creating or editing DNS record information, the MX record priority parameter value filled in is out of range.'], ['code' => 'Record.NoRecordNameConflictWithNSRecord', 'message' => 'No record name can conflict with an NS record name.', 'http_code' => 400, 'description' => 'No record name can conflict with an NS record name.'], ['code' => 'Record.NoResource', 'message' => 'Failed to allocate resources for the record. Please submit a ticket for processing.', 'http_code' => 400, 'description' => 'Failed to allocate resources for the record. Please submit a work order for processing.'], ['code' => 'Record.NotFound', 'message' => 'The record does not exist. Check your configurations and try again.', 'http_code' => 404, 'description' => 'The record does not exist. Check your configurations and try again.'], ['code' => 'Record.NotFound', 'message' => 'The record does not exist. Modify it and try again.', 'http_code' => 404, 'description' => 'The record does not exist. Modify it and try again.'], ['code' => 'Record.NSRecordCannotEqualSiteName', 'message' => 'An NS record with the exact same name as the site name is not allowed.', 'http_code' => 400, 'description' => 'Adding an NS record with the exact same name as the site name is not allowed.'], ['code' => 'Record.OSSSourceInvalidAuthType', 'message' => 'The recorded OSS origin station authentication type is not supported.', 'http_code' => 400, 'description' => 'The recorded OSS origin station authentication type is not supported.'], ['code' => 'Record.ParseJSONRecordValueFailed', 'message' => 'The JSON data format of the record data is incorrect. Please adjust and try again.', 'http_code' => 400, 'description' => 'The JSON data format of the record data is incorrect. Please adjust and try again.'], ['code' => 'Record.PoolSourceNotExistPool', 'message' => 'If the source station type of the record is source address pool, the input source address pool does not exist.', 'http_code' => 400, 'description' => 'If the source station type of the record is source address pool, the input source address pool does not exist.'], ['code' => 'Record.RecordMatchingTypeExceedLimit', 'message' => 'The matchingType parameter value filled in is out of range.', 'http_code' => 400, 'description' => 'While creating or editing DNS record information, the matchingType parameter value filled in is out of range.'], ['code' => 'Record.RecordNameConflictForSpecifiedRecordType', 'message' => 'The A/AAAA and CNAME records cannot have the same name.', 'http_code' => 400, 'description' => 'The A/AAAA and CNAME records cannot have the same name.'], ['code' => 'Record.RecordNameConflictWithIPAName', 'message' => 'The record name cannot have the same name as the Layer 4 proxy record.', 'http_code' => 400, 'description' => 'When you create or edit DNS record information, the record name cannot have the same name as the Layer 4 proxy record.'], ['code' => 'Record.RecordNameConflictWithLBName', 'message' => 'The record name cannot be the same as the Server Load Balancer record name.', 'http_code' => 400, 'description' => 'When creating or editing DNS record information, the record name cannot be the same as the Server Load Balancer record name.'], ['code' => 'Record.RecordNameConflictWithNSRecord', 'message' => 'The NS record name cannot be the same as any other type of record name.', 'http_code' => 400, 'description' => 'When creating or editing DNS record information, the NS record name cannot be the same as any other type of record name.'], ['code' => 'Record.RecordNameConflictWithPoolName', 'message' => 'The record name cannot be the same as the source address pool record name.', 'http_code' => 400, 'description' => 'When creating or editing DNS record information, the record name cannot be the same as the source address pool record name.'], ['code' => 'Record.RecordNameConflictWithSameRecordType', 'message' => 'Record conflict with the same record type, there is a host record with the same name with the same record value.', 'http_code' => 400, 'description' => 'Record conflict with the same record type, there is a host record with the same name with the same record value.'], ['code' => 'Record.RecordNameConflictWithSameRecordType', 'message' => 'Record conflicts with an existing host record that has the same name and value.', 'http_code' => 400, 'description' => 'Record conflicts with an existing host record that has the same name and value.'], ['code' => 'Record.RecordNameInBlacklist', 'message' => 'The record name is in blacklist.', 'http_code' => 400, 'description' => 'The record name is in the blacklist and cannot be added.'], ['code' => 'Record.RecordPriorityExceedLimit', 'message' => 'The record priority parameter value filled in is out of range.', 'http_code' => 400, 'description' => 'When creating or editing DNS record information, the record priority parameter value filled in is out of range.'], ['code' => 'Record.RecordSelectorExceedLimit', 'message' => 'The selector parameter value filled in is out of range.', 'http_code' => 400, 'description' => 'While creating or editing DNS record information, the selector parameter value filled in is out of range.'], ['code' => 'Record.RecordUsageExceedLimit', 'message' => 'The usage parameter value filled in is out of range.', 'http_code' => 400, 'description' => 'When creating or editing DNS record information, the usage parameter value filled in is out of range.'], ['code' => 'Record.RecordValueContainSourceInBlacklist', 'message' => 'The record value contains the blacklist address, and the details can be submitted for work order consultation.', 'http_code' => 400, 'description' => 'The record value contains the blacklist address, and the details can be submitted for work order consultation.'], ['code' => 'Record.RecordWeightExceedLimit', 'message' => 'The record weight parameter value filled in is out of range.', 'http_code' => 400, 'description' => 'When creating or editing DNS record information, the record weight parameter value filled in is out of range.'], ['code' => 'Record.Reserved', 'message' => 'Another operation on the record is in progress. Try again later.', 'http_code' => 400, 'description' => 'Another operation on the record is in progress. Try again later.'], ['code' => 'Record.S3SourceInvalidAuthRegion', 'message' => 'The recorded S3 origin belongs to a region that is not in the supported range.', 'http_code' => 400, 'description' => 'The recorded S3 origin belongs to a region that is not in the supported range.'], ['code' => 'Record.S3SourceInvalidAuthType', 'message' => 'The recorded S3 origin authentication type is not supported.', 'http_code' => 400, 'description' => 'The recorded S3 origin authentication type is not supported.'], ['code' => 'Record.S3SourceInvalidAuthVersion', 'message' => 'The version of the authentication signature algorithm of the S3 origin is not supported.', 'http_code' => 400, 'description' => 'The version of the authentication signature algorithm of the S3 origin is not supported.'], ['code' => 'Record.ServiceBusy', 'message' => 'The record is being configured. Try again later.', 'http_code' => 400, 'description' => 'The record is being configured. Try again later.'], ['code' => 'Record.SMIMEARecordMatchingTypeExceedLimit', 'message' => 'The matchingType parameter value for a SMIMEA record is out of range.', 'http_code' => 400, 'description' => 'The matchingType parameter value for a SMIMEA record is out of range while creating or editing DNS record information.'], ['code' => 'Record.SMIMEARecordSelectorExceedLimit', 'message' => 'The selector parameter value for a SMIMEA record is out of range.', 'http_code' => 400, 'description' => 'The selector parameter value for a SMIMEA record is out of range while creating or editing DNS record information.'], ['code' => 'Record.SMIMEARecordUsageExceedLimit', 'message' => 'The value of the usage parameter for a SMIMEA record is out of range.', 'http_code' => 400, 'description' => 'The value of the usage parameter for a SMIMEA record is out of range while creating or editing DNS record information.'], ['code' => 'Record.SourceAccessKeyExceedLimit', 'message' => 'The character length of the AccessKey parameter value for the record source station is out of range.', 'http_code' => 400, 'description' => 'The character length of the AccessKey parameter value for the record source station is out of range.'], ['code' => 'Record.SourceEmptyAK', 'message' => 'The AccessKey of the account to which the origin site belongs is empty.', 'http_code' => 400, 'description' => 'The AccessKey of the account to which the origin site belongs is empty.'], ['code' => 'Record.SourceEmptyAuthConf', 'message' => 'The authentication information of the origin station is empty.', 'http_code' => 400, 'description' => 'The recorded authentication information of the origin station is empty.'], ['code' => 'Record.SourceEmptySecretKey', 'message' => 'The SecretKey of the account to which the recorded origin site belongs is empty.', 'http_code' => 400, 'description' => 'The SecretKey of the account to which the recorded origin site belongs is empty.'], ['code' => 'Record.SourceSecretKeyExceedLimit', 'message' => 'The character length of the SecretKey parameter value for the record source station is out of range.', 'http_code' => 400, 'description' => 'The character length of the SecretKey parameter value for the record source station is out of range.'], ['code' => 'Record.SRVRecordInvalidRecordName', 'message' => 'SRV host record name is not valid. The SRV host record name must begin with an underscore (-) followed by a lowercase letter (a-z), a number (0-9), and a hyphen (-), followed by 1 arbitrary character, followed by an underscore (-) and a lowercase letter, number, or hyphen.', 'http_code' => 400, 'description' => 'SRV host record name is not valid. The SRV host record name must begin with an underscore (-), followed by a lowercase letter (a-z), number (0-9), hyphen (-), followed by any character, followed by an underscore (-) and a lowercase letter, number, or hyphen.'], ['code' => 'Record.SRVRecordPortExceedLimit', 'message' => 'The SRV record port is out of range.', 'http_code' => 400, 'description' => 'When creating or editing DNS record information, the SRV record port filled in is out of range.'], ['code' => 'Record.SRVRecordPriorityExceedLimit', 'message' => 'The SRV record priority is out of range.', 'http_code' => 400, 'description' => 'The SRV record priority is out of range when creating or editing DNS record information.'], ['code' => 'Record.SRVRecordWeightExceedLimit', 'message' => 'The SRV record weight is out of range.', 'http_code' => 400, 'description' => 'When creating or editing DNS record information, the SRV record weight filled in is out of range.'], ['code' => 'Record.SSHFPRecordAlgorithmExceedLimit', 'message' => 'The algorithm parameter value for the SSHFP record is out of range.', 'http_code' => 400, 'description' => 'The algorithm parameter value for the SSHFP record is out of range while creating or editing DNS record information.'], ['code' => 'Record.TLSARecordMatchingTypeExceedLimit', 'message' => 'The matchingType parameter value for the TLSA record is out of range.', 'http_code' => 400, 'description' => 'The matchingType parameter value for the TLSA record is out of range while creating or editing DNS record information.'], ['code' => 'Record.TLSARecordSelectorExceedLimit', 'message' => 'The selector parameter value for the TLSA record is out of range.', 'http_code' => 400, 'description' => 'The selector parameter value for the TLSA record is out of range while creating or editing DNS record information.'], ['code' => 'Record.TLSARecordUsageExceedLimit', 'message' => 'The value of the usage parameter for the TLSA record is out of range.', 'http_code' => 400, 'description' => 'The value of the usage parameter for the TLSA record is out of range while creating or editing DNS record information.'], ['code' => 'Record.TTLExceedLimit', 'message' => 'The TTL parameter value for a record is out of range.', 'http_code' => 400, 'description' => 'The TTL parameter value for a record is out of range while creating or editing DNS record information.'], ['code' => 'Record.TXTRecordValueExceedLimit', 'message' => 'The TXT record value cannot exceed 450 characters.', 'http_code' => 400, 'description' => 'When you create or edit DNS record information, the TXT record value cannot exceed 450 characters.'], ['code' => 'Record.TypeExceedLimitWithSSHFPRecord', 'message' => 'The SSHFP record Type parameter value is out of range.', 'http_code' => 400, 'description' => 'The SSHFP record Type parameter value is out of range while creating or editing DNS record information.'], ['code' => 'Record.UnmatchedRecordNameContainDoubleConsecutiveDot', 'message' => 'Illegal host record name. The host record cannot contain consecutive dot.', 'http_code' => 400, 'description' => 'Illegal host record name. The host record cannot contain consecutive dot.'], ['code' => 'Record.UnmatchedRecordNameForbidStarSev', 'message' => 'Illegal host record name, SRV record name disallowed asterisk.', 'http_code' => 400, 'description' => 'Illegal host record name, SRV record name disallowed asterisk.'], ['code' => 'Record.UnmatchedRecordNameInvalidATChar', 'message' => 'Illegal host record name. The at symbol can only appear at the top of the host record and can only be followed. Symbol, other strings are not allowed.', 'http_code' => 400, 'description' => 'Illegal host record name. The \'@\' symbol can only appear at the top of the host record and can only be followed. Symbol, other strings are not allowed.'], ['code' => 'Record.UnmatchedRecordNameInvalidNamePrefixSuffix', 'message' => 'Illegal host record name. Host record values cannot start or end with a dot, a hyphens.', 'http_code' => 400, 'description' => 'Illegal host record name. Host record values cannot start or end with a dot, a hyphens.'], ['code' => 'Record.UnmatchedRecordNameInvalidStartSymbol', 'message' => 'Illegal host record name. The asterisk is only allowed in the first place of the host record, and only the following dot is allowed after the asterisk.', 'http_code' => 400, 'description' => 'Illegal host record name. The asterisk is only allowed in the first place of the host record, and only the following dot is allowed after the asterisk.'], ['code' => 'Record.UnmatchedRecordNameInvalidUnderLine', 'message' => 'The host record name contains an illegal underscore. The underscore can only be supported at the beginning of TXT, CAA, CNAME, NS, and SRV records. Proxy acceleration cannot be enabled and records can only be added in DNS mode.', 'http_code' => 400, 'description' => 'The host record name contains an illegal underscore. The underscore can only be used at the beginning of TXT, CAA, CNAME, NS, and SRV records. Proxy acceleration cannot be enabled and records can only be added in DNS.'], ['code' => 'Record.UnmatchedRecordNameInvalidUnderLine', 'message' => 'The host record name contains an illegal underscore. The underscore is only supported at the beginning of the TXT, CNAME, MX, SRV, and NS records. Proxy acceleration cannot be enabled, and records can only be added in the DNS mode.', 'http_code' => 400, 'description' => 'The host record name contains an illegal underscore. The underscore is only supported at the beginning of the TXT, CNAME, MX, SRV, and NS records. Proxy acceleration cannot be enabled, and records can only be added in the DNS mode.'], ['code' => 'Record.UnmatchedRecordNameOnlyContainSymbol', 'message' => 'The host record value cannot exist separately in various symbols, and can be added with any lowercase letters or numbers.', 'http_code' => 400, 'description' => 'The host record value cannot exist separately in various symbols, and can be added with any lowercase letters or numbers.'."\n"], ['code' => 'Record.UnmatchedRecordNameOnlyContainSynbol', 'message' => 'The host record value cannot exist separately in various symbols, and can be added with any lowercase letters or numbers.', 'http_code' => 400, 'description' => 'The host record value cannot exist separately in various symbols, and can be added with any lowercase letters or numbers.'], ['code' => 'Record.UnmatchedRecordNameOnlyRangeChar', 'message' => 'Illegal host record character. Only lowercase a-z, uppercase A- Z, digits 0-9, some special characters are supported as valid characters in host records.', 'http_code' => 400, 'description' => 'Illegal host record character. Only lowercase a-z, uppercase A-Z, digits 0-9, \'-\', \'_\', \'.\', \'*\', and \'@\' are supported as valid characters in host records.'], ['code' => 'Record.UnmatchedRecordNameSeperateStringTooLarge', 'message' => 'Illegal host record name. The number of characters in each segment separated by dot cannot exceed 63.', 'http_code' => 400, 'description' => 'Illegal host record name. The number of characters in each segment separated by \'.\' cannot exceed 63.'], ['code' => 'Record.UnsupportedSourceType', 'message' => 'The recorded source station type is not in the supported range.', 'http_code' => 400, 'description' => 'The recorded source station type is not in the supported range.'], ['code' => 'Record.UnsupportedType', 'message' => 'The record type parameter is unsupported.', 'http_code' => 400, 'description' => 'The record type parameter is incorrect. Please check the record type parameter.'], ['code' => 'Record.URIRecordPriorityExceedLimit', 'message' => 'The value of the priority parameter for a URI record is out of range.', 'http_code' => 400, 'description' => 'The value of the priority parameter for a URI record is out of range while creating or editing DNS record information.'], ['code' => 'Record.URIRecordWeightExceedLimit', 'message' => 'The URI record weight parameter value is out of range.', 'http_code' => 400, 'description' => 'The URI record weight parameter value is out of range while creating or editing DNS record information.'], ['code' => 'Record.ValidProxiedForSpecifedRecordType', 'message' => 'Only A/AAAA and CNAME types support proxy acceleration.', 'http_code' => 400, 'description' => 'When creating or editing a record, proxy acceleration is enabled in the proxy state. Only A/AAAA and CNAME types support proxy acceleration.'], ['code' => 'Record.WildcardConflictForSpecifiedRecordType', 'message' => 'The A/AAAA,CNAME records cannot add all and asterisk prefixed records at the same time.', 'http_code' => 400, 'description' => 'A/AAAA,CNAME records cannot add all and asterisk prefixed records at the same time.'], ['code' => 'Record.WildcartConflictForSpecifiedRecordType', 'message' => 'The A/AAAA,CNAME records cannot add all and asterisk prefixed records at the same time.', 'http_code' => 400, 'description' => 'The A/AAAA,CNAME records cannot add all and asterisk prefixed records at the same time.'], ['code' => 'RecordNameInBalckList', 'message' => 'The record name is in the blacklist.', 'http_code' => 400, 'description' => 'The record name is in the blacklist.'], ['code' => 'RelatedRecordNumberExceedQuotaLimit', 'message' => 'The maximum number of records associated with the routine has been reached. Check your plan quota and upgrade the plan to request a quota increase.', 'http_code' => 400, 'description' => 'The maximum number of records associated with the routine has been reached. Check your plan quota and upgrade the plan to request a quota increase.'], ['code' => 'RelatedRouteNumberExceedQuotaLimit', 'message' => 'The maximum number of routes associated with the routine has been reached. Check your plan quota and upgrade the plan to request a quota increase.', 'http_code' => 400, 'description' => 'The maximum number of routes associated with the routine has been reached. Check your plan quota and upgrade the plan to request a quota increase.'], ['code' => 'RelatedSiteNumberExceedQuotaLimit', 'message' => 'The maximum number of websites that can be associated with the routine has been reached.', 'http_code' => 400, 'description' => 'The maximum number of websites that can be associated with the routine has been reached.'], ['code' => 'RequestNotSupported', 'message' => 'Free certificates cannot be requested for a website that is not in the active state. Activate the website first.', 'http_code' => 400, 'description' => 'Free certificates cannot be requested for a website that is not in the active state. Activate the website first.'], ['code' => 'RiskControlRejection', 'message' => 'In order to protect the security of your account, the order was suspended, please contact customer service for details.', 'http_code' => 400, 'description' => 'In order to protect the security of your account, the order was suspended, please contact customer service for details.'], ['code' => 'RoutineAlreadyExist', 'message' => 'The routine name already exists.', 'http_code' => 400, 'description' => 'The routine name already exists.'], ['code' => 'RoutineCodeVersionStatusNotAvailable', 'message' => 'The routine code version status not Available. Check the routine code version status and try again.', 'http_code' => 400, 'description' => 'The routine code version status is not Available. Check the status and try again.'], ['code' => 'RoutineNotExist', 'message' => 'The routine name does not exist. Check the routine name and try again.', 'http_code' => 400, 'description' => 'The routine name does not exist. Check the routine name and try again.'], ['code' => 'RoutineNumberExceedQuotaLimit', 'message' => 'The maximum number of configuration items for the feature has been reached. Adjust your configurations and try again.', 'http_code' => 400, 'description' => 'The maximum number of configuration items for the feature has been reached. Adjust your configurations and try again.'], ['code' => 'RoutineUserServiceStatusHalt', 'message' => 'Failed to update the configurations because you have overdue payments.', 'http_code' => 400, 'description' => 'Failed to update the configurations because you have overdue payments.'], ['code' => 'RR307', 'message' => 'If the credit card verification is not completed, please guide the self-service verification through the mail and in-station letter. Please place an order again after the verification is passed.', 'http_code' => 400, 'description' => 'If the credit card verification is not completed, please guide the self-service verification through the mail and in-station letter. Please place an order again after the verification is passed.'], ['code' => 'RR307', 'message' => 'Credit card verification is not complete. Please follow the guidance in the email and the internal message to complete the verification. Once verified, please place your order again.', 'http_code' => 400, 'description' => 'Credit card verification is not complete. Please follow the guidance in the email and the internal message to complete the verification. Once verified, please place your order again.'], ['code' => 'RR309', 'message' => 'The system has detected that your payment method is at risk. Please complete the verification through the link in the email and the in-station letter. Please place the order again after the verification is passed.', 'http_code' => 400, 'description' => 'The system has detected that your payment method is at risk. Please complete the verification through the link in the email and the in-station letter. Please place the order again after the verification is passed.'], ['code' => 'Rule.Config.Malformed', 'message' => 'The format of the rule configuration is invalid.Check the configuration for syntax errors or structural inconsistencies and correct them to meet the requirements.', 'http_code' => 403, 'description' => 'The format of the rule configuration is invalid.Check the configuration for syntax errors or structural inconsistencies and correct them to meet the requirements.'], ['code' => 'Rule.Config.Noncompliance', 'message' => 'The specified rule configuration does not meet the compliance requirements.Check and adjust your configurations.', 'http_code' => 403, 'description' => 'The specified rule configuration does not meet the compliance requirements.Check and adjust your configurations.'], ['code' => 'Rule.Name.AlreadyExists', 'message' => 'The specified rule name already exists.Try again with a unique name or modify the existing rule name.', 'http_code' => 403, 'description' => 'The specified rule name already exists.Try again with a unique name or modify the existing rule name.'], ['code' => 'Rule.NotExist', 'message' => 'The specified rule does not exist.', 'http_code' => 400, 'description' => 'The specified rule does not exist in the current context or system configuration. Please verify the existence of the rule identifier and ensure it has been correctly defined or implemented.'], ['code' => 'Rule.Position.Invalid', 'message' => 'The specified position for the rule is invalid.Check and adjust the configuration to make sure it meets the requirements.', 'http_code' => 403, 'description' => 'The specified position for the rule is invalid.Check and adjust the configuration to make sure it meets the requirements.'], ['code' => 'RuleCompileError', 'message' => 'Failed to compile the rule. Check your rule configurations and make sure they are in the valid format as described in the API documentation.', 'http_code' => 400, 'description' => 'Failed to compile the rule. Check your rule configurations and make sure they are in the valid format as described in the API documentation.'], ['code' => 'RuleRegexQuotaCheckFailed', 'message' => 'When configuring rules, rules with regular expressions are not allowed in this plan. Please check the relevant documentation of the plan or upgrade the plan.', 'http_code' => 400, 'description' => 'The current plan does not support the configuration of a rule engine with a regular expression. Please check the plan description and upgrade your plan.'], ['code' => 'Ruleset.Name.AlreadyExists', 'message' => 'The specified rule set name already exists.Try again with a unique name or modify the existing rule set name.', 'http_code' => 403, 'description' => 'The specified rule set name already exists.Try again with a unique name or modify the existing rule set name.'], ['code' => 'Ruleset.NotExist', 'message' => 'The specified rule set does not exist or has not been registered in the system.Check whether the specified rule set identifier is valid and matches a rule set that has been correctly defined and maintained by the system\'s rule set registry.If you want to add a new rule set, make sure that the creation and registration process is complete to bring the rule set into effect.', 'http_code' => 403, 'description' => 'The specified rule set does not exist or has not been registered in the system.Check whether the specified rule set identifier is valid and matches a rule set that has been correctly defined and maintained by the system\'s rule set registry.If you want to add a new rule set, make sure that the creation and registration process is complete to bring the rule set into effect.'], ['code' => 'SameNameRecordsExceedLimit', 'message' => 'The maximum number of records with the same name added in one batch exceeds 5. Add records with the same name in batches or reduce the number of records with the same name added in one batch.', 'http_code' => 400, 'description' => 'The maximum number of records with the same name added in batches exceeds 5. Add records with the same name in batches or reduce the number of records with the same name added in batches.'], ['code' => 'ScenePolicyQuotaExceedLimit', 'message' => 'The maximum number of scenario policies has been reached. Each account can create up to 10 scenario policies.', 'http_code' => 400, 'description' => 'The maximum number of scenario policies has been reached. Each account can create up to 10 scenario policies.'], ['code' => 'ServiceInvokeFailed', 'message' => 'The call to the internal service failed. The engineer is resolving the problem. Please wait a moment before trying, or contact customer service for details.', 'http_code' => 400, 'description' => 'Failed to call the service. Please try again later or contact customer service for details.'], ['code' => 'ServiceNotOpen', 'message' => 'You have not activated Edge Routine. Activate the service and try again.', 'http_code' => 400, 'description' => 'You have not activated Edge Routine. Activate the service and try again.'], ['code' => 'Site.AlreadyExist', 'message' => 'The website name you specified already exists. Try with another name.', 'http_code' => 400, 'description' => 'The website name you specified already exists. Try with another name.'], ['code' => 'Site.Conflict', 'message' => 'Duplicate website names exist across multiple accounts. Rename or delete one and try again.', 'http_code' => 400, 'description' => 'Duplicate website names exist across multiple accounts. Rename or delete one and try again.'], ['code' => 'Site.InBlacklist', 'message' => 'The site name is in the blacklist.', 'http_code' => 400, 'description' => 'The site name is in the blacklist.'], ['code' => 'Site.InvalidCoverage', 'message' => 'The selected location is unavailable in your plan. Change the location to one that is covered by the plan and try again.', 'http_code' => 400, 'description' => 'The selected location is unavailable in your plan. Change the location to one that is covered by the plan and try again.'], ['code' => 'Site.NotExist', 'message' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.', 'http_code' => 403, 'description' => 'The specified website does not exist or is not recognized by the system.Check whether the specified website identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website, make sure that the creation and registration process is complete to integrate the website to the system.'], ['code' => 'Site.NotSupportedStatus', 'message' => 'The current site state is not supported.', 'http_code' => 400, 'description' => 'The current site state is not supported.'], ['code' => 'Site.ServiceBusy', 'message' => 'This website is being configured. Try again later.', 'http_code' => 400, 'description' => 'This website is being configured. Try again later.'], ['code' => 'Site.UpdateAccessTypeUnable', 'message' => 'Failed to change the DNS setup for the website. Check whether the website has configurations or DNS records that are incompatible with the target DNS setup option.', 'http_code' => 400, 'description' => 'Failed to change the DNS setup for the website. Check whether the website has configurations or DNS records that are incompatible with the target DNS setup option.'], ['code' => 'SiteConfigLengthExceedLimit', 'message' => 'The overall configuration size of the site exceeds the limit, and the total size of all functional configurations of the site cannot exceed 512K.', 'http_code' => 400, 'description' => 'The size of the site configuration exceeds the limit, and the total size cannot exceed 512K.'], ['code' => 'SiteEnvironment.Conflict', 'message' => 'The environment name or rule conflicts with an existing environment. Try again with a different environment name or rule.', 'http_code' => 400, 'description' => 'The environment name or rule conflicts with an existing environment. Try again with a different environment name or rule.'], ['code' => 'SiteEnvironment.DeleteDenied', 'message' => 'The default environment cannot be deleted.', 'http_code' => 400, 'description' => 'The default environment cannot be deleted.'], ['code' => 'SiteEnvironment.NotExist', 'message' => 'The specified environment is invalid or version management is not enabled for your website. Make sure that you specify a valid environment name and version management is enabled. Then, try again.', 'http_code' => 400, 'description' => 'You have entered an invalid site version environment, or the site does not have version management enabled. Please confirm that your version environment settings are correct, and activate the version management function if necessary, and then try again.'], ['code' => 'SiteEnvironment.UpdateDenied', 'message' => 'Failed to promote a version for the environment. Check whether the current environment has the highest rank and whether the current environment and the next higher-ranked environment have the same version deployed.', 'http_code' => 400, 'description' => 'Failed to promote a version for the environment. Check whether the current environment has the highest rank and whether the current environment and the next higher-ranked environment have the same version deployed.'], ['code' => 'SiteHasTransportLayerApplications', 'message' => 'The current site has an existing four-layer accelerated application, and the current operation is not allowed. If necessary, please contact customer service.', 'http_code' => 400, 'description' => 'The current site has an existing four-layer accelerated application, and the current operation is not allowed. If necessary, please contact customer service.'], ['code' => 'SiteIdDDoSVersionCheckFailed', 'message' => 'SiteId DDoS version check failed.', 'http_code' => 403, 'description' => 'Failed to check the DDoS version corresponding to the site.'], ['code' => 'SiteNotActivated', 'message' => 'The site is not activated, the process is not allowed.', 'http_code' => 400, 'description' => 'The operation is not supported because the site is not activated.'], ['code' => 'SiteNotFound', 'message' => 'The specified site is not found.', 'http_code' => 400, 'description' => 'The site you specified does not exist. Please check whether the site you entered is correct.'], ['code' => 'SiteNotFound', 'message' => 'The website does not exist or does not belong to you.', 'http_code' => 404, 'description' => 'The website does not exist or does not belong to you.'], ['code' => 'SiteParameterNotMatch', 'message' => 'Failed to verify website parameters.Check the parameters and try again.', 'http_code' => 400, 'description' => 'Failed to verify website parameters.Check the parameters and try again.'], ['code' => 'SiteVerify.Unpassed', 'message' => 'Domain ownership verification failed. Complete the verification and try again.', 'http_code' => 200, 'description' => 'Domain ownership verification failed. Complete the verification and try again.'], ['code' => 'SiteVersion.Configuring', 'message' => 'The version is being configured. Try again later.', 'http_code' => 400, 'description' => 'The version is being configured. Try again later.'], ['code' => 'SiteVersion.DeleteDenied', 'message' => 'Failed to delete the version because it has been deployed to an environment. Make sure that the version is not deployed to any environment and try again.', 'http_code' => 400, 'description' => 'Failed to delete the version because it has been deployed to an environment. Make sure that the version is not deployed to any environment and try again.'], ['code' => 'SiteVersion.NotExist', 'message' => 'The specified version is invalid or version management is not enabled for your website.Make sure that you specify a valid version and version management is enabled. Then, try again.', 'http_code' => 400, 'description' => 'The specified version is invalid or version management is not enabled for your website.Make sure that you specify a valid version and version management is enabled. Then, try again.'], ['code' => 'SourceAddressInvalid', 'message' => 'Invalid origin address. Check whether the IP address or domain name is in the valid format.', 'http_code' => 400, 'description' => 'Invalid origin address. Check whether the IP address or domain name is in the valid format.'], ['code' => 'SourceCircleExist', 'message' => 'The host record of the resource to be operated on is already the source station of another resource, or the source station of the current resource has been added as a host record. To avoid loopback, modify the host record or source station and retry.', 'http_code' => 400, 'description' => 'The host record of the resource to be operated on is already the source station of another resource, or the source station of the current resource has been added as a host record. To avoid loopback, modify the host record or source station and retry.'], ['code' => 'SourceInBlackList', 'message' => 'The source is in the black list.', 'http_code' => 400, 'description' => 'The source is in the black list.'], ['code' => 'SourceNumberExceedLimit', 'message' => 'The number of sources in the origin pool exceeds the quota limit.', 'http_code' => 400, 'description' => 'The number of sources that can be created in the origin pool has reached the upper limit of the package. Please check your package quota and upgrade the package to obtain more quota.'], ['code' => 'SourceTypeNotSupport', 'message' => 'Invalid origin type. Valid values are ip_domain, OSS, FC, and S3.', 'http_code' => 400, 'description' => 'Invalid origin type. Valid values are ip_domain, OSS, FC, and S3.'], ['code' => 'Specification.OverLimit', 'message' => 'Specifications exceed the limit, paid version can use 50ms, 100ms, free version can only use 5ms.', 'http_code' => 400, 'description' => 'Specifications exceed the limit, paid version can use 50ms, 100ms, free version can only use 5ms'], ['code' => 'SpecifiedVersionReadOnly', 'message' => 'The specified version number is read-only and cannot be modified.', 'http_code' => 400, 'description' => 'The specified version number is read-only and cannot be modified.'], ['code' => 'SubSiteUnavailable', 'message' => 'Subdomains are allowed only in Enterprise plans. Upgrade your plan to add a subdomain to ESA.', 'http_code' => 400, 'description' => 'Subdomains are allowed only in Enterprise plans. Upgrade your plan to add a subdomain to ESA.'], ['code' => 'SYSTEM.NoSpecificCodeFailed', 'message' => 'Invalid subscription duration. Check and try again.', 'http_code' => 400, 'description' => 'Invalid subscription duration. Check and try again.'], ['code' => 'TooManyDimensions', 'message' => 'Too many query dimensions specified. Delete some and try again.', 'http_code' => 400, 'description' => 'Too many query dimensions specified. Delete some and try again.'], ['code' => 'TooManyRequests', 'message' => 'Too many requests.Please try again later.', 'http_code' => 400, 'description' => 'Requests are too frequent, please try again later.'], ['code' => 'TooManyRequests', 'message' => 'Too many requests are submitted.', 'http_code' => 429, 'description' => 'Submissions are too frequent, please try again later'], ['code' => 'TooManyRequests', 'message' => 'System load fluctuates, please try again later.', 'http_code' => 429, 'description' => 'System load fluctuates, please try again later.'], ['code' => 'TooQuickRequests', 'message' => 'Request for putting or deleting keys are frequently submitted.', 'http_code' => 429, 'description' => 'The modification or deletion of key-value pairs is too frequent.'], ['code' => 'TransportLayerApplicationConflict', 'message' => 'The Layer -4 accelerated application conflicts with other applications. Check whether the application name and host record conflict with other applications in the site.', 'http_code' => 400, 'description' => 'The Layer -4 accelerated application conflicts with other applications. Check whether the application name and host record conflict with other applications in the site.'], ['code' => 'TransportLayerApplicationNotExist', 'message' => 'The layer -4 accelerated application of the current operation does not exist. Modify it and try again.', 'http_code' => 400, 'description' => 'The layer -4 accelerated application of the current operation does not exist. Modify it and try again.'], ['code' => 'TransportLayerRulesExceedLimit', 'message' => 'The configured forwarding rules have exceeded the maximum limit. Delete useless forwarding rules and try again.', 'http_code' => 400, 'description' => 'The configured forwarding rules have exceeded the maximum limit. Delete useless forwarding rules and try again.'], ['code' => 'TrialService.HasOpened', 'message' => 'You have already activated the trial service.', 'http_code' => 400, 'description' => 'You have activated the trial service and cannot activate it again.'], ['code' => 'Unauthorized.InvalidParameters', 'message' => 'The specified authentication parameters are invalid.', 'http_code' => 403, 'description' => 'Authentication parameter input error.'], ['code' => 'Unauthorized.InvalidTime', 'message' => 'The specified authentication time is invalid.', 'http_code' => 403, 'description' => 'The authentication time parameter you entered is invalid. Check the parameter value and try again.'], ['code' => 'Unauthorized.InvalidToken', 'message' => 'Token authentication failed.', 'http_code' => 403, 'description' => 'The token you entered is invalid. Please check and enter the correct token and try again.'], ['code' => 'UnprocessableEntity', 'message' => 'Failed to handle your request due to data conflicts or incorrect parameters, such as duplicate IP addresses being specified or parameter configurations remaining unchanged in an update request. Check and adjust your configurations and try again.', 'http_code' => 422, 'description' => 'Failed to handle your request due to data conflicts or incorrect parameters, such as duplicate IP addresses being specified or parameter configurations remaining unchanged in an update request. Check and adjust your configurations and try again.'], ['code' => 'Unsupported.ConvertRecord', 'message' => 'Converting site records is not supported in migration tasks.', 'http_code' => 400, 'description' => 'Converting site records is not supported in migration tasks.'], ['code' => 'Unsupported.DomainSourceConvertToRecord', 'message' => 'Converting the domain sources to a site record is not supported in migration tasks.', 'http_code' => 400, 'description' => 'Converting the domain sources to a site record is not supported.'], ['code' => 'UnsupportQuota', 'message' => 'Unsupported quota is specified. Check and try again.', 'http_code' => 404, 'description' => 'Unsupported quota is specified. Check and try again.'], ['code' => 'UpdateErServiceError', 'message' => 'Failed to change the plan. You are only allowed to change your plan once within 24 hours.', 'http_code' => 400, 'description' => 'Failed to change the plan. You are only allowed to change your plan once within 24 hours.'], ['code' => 'UpdateFreeCertificate.NotSupport', 'message' => 'The free certificate does not support the update operation.', 'http_code' => 400, 'description' => 'The free certificate does not support the update operation.'], ['code' => 'UpdowngradeConfigNoChange', 'message' => 'Failed to change the configuration because the new configuration you specified is the same as the current one in use. Specify a correct configuration and try again.', 'http_code' => 400, 'description' => 'The configuration for the upgrade or downgrade is not changed.'], ['code' => 'UserOperationStatusIsLocked', 'message' => 'You are calling an another routine related api. Please wait for the api finished, and try again later.', 'http_code' => 400, 'description' => 'You are calling an another routine related api. Please wait for the api finished, and try again later.'], ['code' => 'UserQuantityExceed', 'message' => 'Your current purchase quantity exceeds the available quantity. Please select a new quantity.', 'http_code' => 400, 'description' => 'Your current purchase quantity exceeds the available quantity. Please select a new quantity.'], ['code' => 'UserWithoutConfLabel', 'message' => 'Required tags missing. Configure tags and try again.', 'http_code' => 400, 'description' => 'Required tags missing. Configure tags and try again.'], ['code' => 'VerifyExpressionError', 'message' => 'Dynamic expression is invalid.', 'http_code' => 400, 'description' => 'Dynamic expression is invalid.'], ['code' => 'VerifyNameServerFailed', 'message' => 'The NS verification failed. Please configure the NS provided by ESA on the domain name management platform and try again.', 'http_code' => 400, 'description' => 'The NS verification failed. Please configure the NS provided by ESA on the domain name management platform and try again.'], ['code' => 'VersionNotValid', 'message' => 'The site does not have version management enabled, or the version number passed in does not exist.', 'http_code' => 400, 'description' => 'The site does not have version management enabled, or the version number passed in does not exist.'], ['code' => 'WaitingRoomEventNotExist', 'message' => 'The waiting room event that you want to modify does not exist. Specify a valid one.', 'http_code' => 400, 'description' => 'The waiting room event that you want to modify does not exist. Specify a valid one.'], ['code' => 'WaitingRoomNotExist', 'message' => 'The waiting room that you want to modify does not exist or does not belong to you. Confirm and try again.', 'http_code' => 400, 'description' => 'The waiting room that you want to modify does not exist or does not belong to you. Confirm and try again.'], ['code' => 'WaitingRoomRuleNotExist', 'message' => 'The waiting room bypass rule that you want to modify does not exist. Specify a valid one.', 'http_code' => 400, 'description' => 'The waiting room bypass rule that you want to modify does not exist. Specify a valid one.'], ['code' => 'WildcardRecordsExceedLimit', 'message' => 'The number of pan records currently added has exceeded the system limit. If you want to add more pan records, please contact the background with a work order.', 'http_code' => 400, 'description' => 'The number of pan records currently added has exceeded the system limit. If you want to add more pan records, please contact the background with a work order.'], ['code' => 'GitAccountNotExist', 'message' => 'Git account does not exist.', 'http_code' => 400, 'description' => 'Git account does not exist.'], ['code' => 'InvalidRoutineBuildTaskStatus', 'message' => 'Routine build configuration state that does not exist.', 'http_code' => 400, 'description' => 'Routine build configuration state that does not exist.'], ['code' => 'RoutineInstanceNotExist', 'message' => 'The Routine instance does not exist.', 'http_code' => 400, 'description' => 'The Routine instance does not exist.'], ['code' => 'GitAccountAuthExpired', 'message' => 'Git account authorization expired.', 'http_code' => 400, 'description' => 'Git account authorization expired.'], ['code' => 'GitAccountAlreadyExist', 'message' => 'The Git account already exists and cannot be created repeatedly.', 'http_code' => 400, 'description' => 'The Git account already exists and cannot be created repeatedly.'], ['code' => 'GitAccountNotActive', 'message' => 'Git account is not active.', 'http_code' => 400, 'description' => 'Git account is not active.'], ['code' => 'RoutineNotExist', 'message' => 'Routine does not exist.', 'http_code' => 400, 'description' => 'Routine does not exist.'], ['code' => 'RoutineBuildTaskNotExist', 'message' => 'Routine build task does not exist.', 'http_code' => 400, 'description' => 'Routine build task does not exist.'], ['code' => 'IllegalNodeVersion', 'message' => 'NodeVersion parameter is illegal.', 'http_code' => 400, 'description' => 'NodeVersion parameter is illegal.'], ['code' => 'RoutineBuildConfigurationNotExist', 'message' => 'Routine build configuration does not exist.', 'http_code' => 400, 'description' => 'Routine build configuration does not exist.'], ['code' => 'RoutineBuildConfigurationExist', 'message' => 'Routine build configuration already exists.', 'http_code' => 400, 'description' => 'Routine build configuration already exists.'], ['code' => 'RoutineBuildTaskNotBuilding', 'message' => 'The state of the Routine build task is not building.', 'http_code' => 400, 'description' => 'The state of the Routine build task is not building.'], ['code' => 'GitAccountExceedQuota', 'message' => 'The number of Git accounts exceeds the quota limit. A user can only associate up to 20 Git accounts.', 'http_code' => 400, 'description' => 'The number of Git accounts exceeds the quota limit. A user can only associate up to 20 Git accounts.'], ['code' => 'EnvironmentVariableKeyValueTooLong', 'message' => 'The key/value length in the EnvironmentVariable parameter exceeds the limit. The length of a single key is not greater than 100, and the length of a single value is not greater than 200.', 'http_code' => 400, 'description' => 'The key/value length in the EnvironmentVariable parameter exceeds the limit. The length of a single key is not greater than 100, and the length of a single value is not greater than 200.'], ['code' => 'EnvironmentExceedLimit', 'message' => 'The environment variable parameter exceeds the limit, and the number of keys and values exceeds the limit.', 'http_code' => 400, 'description' => 'The environment variable parameter exceeds the limit, and the number of keys and values exceeds the limit.'], ['code' => 'RepositoryExceedLimit', 'message' => 'One code repository can only be associated with up to 10 Routine build configurations.', 'http_code' => 400, 'description' => 'One code repository can only be associated with up to 10 Routine build configurations.'], ['code' => 'CanNotOpenCrossBorderOptimization', 'message' => 'Can not open cross border optimization.', 'http_code' => 400, 'description' => 'Can not open cross border optimization.'], ['code' => 'CustomHostname.ConflictWithExistingResource', 'message' => 'The custom hostname conflicts with existing resources, such as sites, records, load balancers, source address pools, custom hostnames and Layer 4 proxy records.', 'http_code' => 400, 'description' => 'The custom hostname conflicts with existing resources, such as sites, records, load balancers, source address pools, custom hostnames and Layer 4 proxy records.'], ['code' => 'QuotaExceed.CustomHostname', 'message' => 'The number of custom hostnames exceeds the plan quota. Contact the sales team to increase your quota.', 'http_code' => 400, 'description' => 'The number of custom hostnames exceeds the plan quota. Contact the sales team to increase your quota.'], ['code' => 'CustomHostname.InvalidICP', 'message' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.', 'http_code' => 400, 'description' => 'The specified website does not have an ICP filing or the filing information is invalid. Make sure your website is filed and try again.'], ['code' => 'CustomHostname.VerifyUnpassed', 'message' => 'The custom hostname ownership verification failed. Complete the verification and try again.', 'http_code' => 200, 'description' => 'The custom hostname ownership verification failed. Complete the verification and try again.'], ['code' => 'Record.SourceOfExistingCustomHostnames', 'message' => 'Failed to delete the record because it is the source of existing custom hostnames.Remove all references to the record and try again.', 'http_code' => 400, 'description' => 'Failed to delete the record because it is the source of existing custom hostnames.Remove all references to the record and try again.'], ['code' => 'CustomHostname.NotFound', 'message' => 'The custom hostname does not exist. Modify it and try again.', 'http_code' => 404, 'description' => 'The custom hostname does not exist. Modify it and try again.'], ['code' => 'Record.ProtectedAsCustomHostnameSource', 'message' => 'Failed to delete the record because it is the origin server of existing custom hostnames.Remove all references to the record and try again.', 'http_code' => 400, 'description' => 'Failed to delete the record because it is the origin server of existing custom hostnames.Remove all references to the record and try again.'], ['code' => 'Record.ProxiedAsCustomHostnameSource', 'message' => 'Failed to disable proxy the record because it is the origin server of existing custom hostnames.Remove all references to the record and try again.', 'http_code' => 400, 'description' => 'Failed to disable proxy the record because it is the origin server of existing custom hostnames.Remove all references to the record and try again.'], ['code' => 'Record.TypeProtectedAsCustomHostnameSource', 'message' => 'Failed to update the record type because it is the origin server of existing custom hostnames. The record can only be updated to CNAME or A/AAAA types. Alternatively, remove all references to the record and try again.', 'http_code' => 400, 'description' => 'Failed to update the record type because it is the origin server of existing custom hostnames. The record can only be updated to CNAME or A/AAAA types. Alternatively, remove all references to the record and try again.'], ['code' => 'CustomHostname.ServiceBusy', 'message' => 'The custom hostname is being configured. Try again later.', 'http_code' => 400, 'description' => 'The custom hostname is being configured. Try again later.'], ['code' => 'InvalidParameter.Domains', 'message' => 'The maximum number of domain names specified by parameter Domains has been reached. Adjust your configurations and try again. The upper limit of lets encrypt type domain name is 50, the upper limit of digicert single type domain name is 1, and the upper limit of digicert wildcard type domain name is 1.', 'http_code' => 400, 'description' => 'The maximum number of domain names specified by parameter Domains has been reached. Adjust your configurations and try again. The upper limit of lets_encrypt type domain name is 50, the upper limit of digicert_single type domain name is 1, and the upper limit of digicert_wildcard type domain name is 1.'], ['code' => 'FunctionArgConflict.OriginProtection', 'message' => 'The automatic enabling of the latest back-to-source IP list and the back-to-source convergence are mutually exclusive functions and cannot be enabled at the same time.', 'http_code' => 400, 'description' => 'The automatic enabling of the latest back-to-source IP list and the back-to-source convergence are mutually exclusive functions and cannot be enabled at the same time.'], ['code' => 'ForbidUpdateSite.ConfigurationsUnclosed', 'message' => 'If there are unclosed configurations, please close them before migrating.', 'http_code' => 400, 'description' => 'If there are unclosed configurations, please close them before migrating.'], ['code' => 'ForbidUpdateSite.PlanUnallowed', 'message' => 'Site migration between preset plans and customized enterprise plans is not supported.', 'http_code' => 400, 'description' => 'Site migration between preset plans and customized enterprise plans is not supported.'], ['code' => 'SiteFunction.WafPageNotExist', 'message' => 'The custom page referenced in the custom response code configuration does not exist.', 'http_code' => 400, 'description' => 'The custom page referenced in the custom response code configuration does not exist.'], ['code' => 'InvalidParameter_SchemaId', 'message' => 'The parameter SchemaId is invalid.', 'http_code' => 400, 'description' => 'The parameter SchemaId is invalid.'], ['code' => 'InvalidParameter_IdentifierId', 'message' => 'The parameter Identified is invalid.', 'http_code' => 400, 'description' => 'The parameter Identified is invalid.'], ['code' => 'InvalidParameter_SchemaNotFound', 'message' => 'The parameter schemaId conf not found.', 'http_code' => 400, 'description' => 'The schema configuration corresponding to the input schemaId is not found.'], ['code' => 'InvalidParameter.ApiShieldQuota', 'message' => 'This site does not have permission to manipulate API security features.', 'http_code' => 400, 'description' => 'This site does not have permission to manipulate API security features'], ['code' => 'InvalidParameter.RuleName', 'message' => 'The parameter RuleName is invalid.', 'http_code' => 400, 'description' => 'The parameter RuleName is invalid.'], ['code' => 'InvalidParameter.EndpointIds', 'message' => 'The parameter EndpointIds is invalid.', 'http_code' => 400, 'description' => 'The entry EndpointIds is illegal.'], ['code' => 'InvalidParameter.TokenConfigs', 'message' => 'The parameter TokenConfigs is invalid.', 'http_code' => 400, 'description' => 'The TokenConfigs parameter is invalid.'], ['code' => 'InvalidParameter.TokenConfigs.Tag', 'message' => 'The parameter TokenConfigs.Tag is invalid.', 'http_code' => 400, 'description' => 'The parameter TokenConfigs_Tag is invalid.'], ['code' => 'InvalidParameter.RuleId', 'message' => 'The parameter RuleId is invalid.', 'http_code' => 400, 'description' => 'The parameter RuleId is invalid'], ['code' => 'InvalidParameter.IdentifierId', 'message' => 'The parameter IdentifierId is invalid.', 'http_code' => 400, 'description' => 'The parameter IdentifierId is invalid.'], ['code' => 'SameNameRecordExceedLimit', 'message' => 'The number of records with the same name exceeds the upper limit.', 'http_code' => 400, 'description' => 'The number of records with the same name exceeds the upper limit.'], ['code' => 'InvalidParameter.RuleAction', 'message' => 'The parameter RuleAction is invalid.', 'http_code' => 400, 'description' => 'The parameter RuleAction is invalid.'], ['code' => 'InvalidParameter.TokenValidateType', 'message' => 'The parameter TokenValidateType is invalid.', 'http_code' => 400, 'description' => 'The parameter TokenValidateType is invalid.'], ['code' => 'InvalidParameter.TokenName', 'message' => 'The parameter TokenName is invalid.', 'http_code' => 400, 'description' => 'The parameter TokenName is invalid.'], ['code' => 'InvalidParameter.ManagedApi.StateCanNotChanged', 'message' => 'The status of the managed API is not allowed to be modified.', 'http_code' => 400, 'description' => 'The status of the managed API is not allowed to be modified.'], ['code' => 'InvalidParameter.TokenNameExists', 'message' => 'The parameter TokenName already exists.', 'http_code' => 400, 'description' => 'The parameter TokenName already exists.'], ['code' => 'InvalidParameter.Identifier.Quota', 'message' => 'The session identifier quota for the corresponding tier at the request site is insufficient.', 'http_code' => 400, 'description' => 'The session identifier quota for the corresponding tier at the request site is insufficient.'], ['code' => 'InvalidParameter.Credentials.Alg', 'message' => 'The internal Alg field of the input parameter Credentials is invalid.', 'http_code' => 400, 'description' => 'The internal Alg field of the input parameter Credentials is invalid.'], ['code' => 'InvalidParameter.TokenUsed', 'message' => 'The parameter TokenId token configuration is in use.', 'http_code' => 400, 'description' => 'The parameter TokenId token configuration is in use.'], ['code' => 'InvalidParameter.ManagedApi.Quota', 'message' => 'The management API quota of the corresponding package of the request site exceeds the limit.', 'http_code' => 400, 'description' => 'The management API quota of the corresponding package of the request site exceeds the limit.'], ['code' => 'InvalidParameter.Position', 'message' => 'The parameter Position is invalid.', 'http_code' => 400, 'description' => 'The parameter Position is invalid.'], ['code' => 'InvalidParameter.TokenId', 'message' => 'The parameter TokenId is invalid.', 'http_code' => 400, 'description' => 'The parameter TokenId is invalid.'], ['code' => 'InvalidParameter.Credentials', 'message' => 'The parameter Credentials is invalid.', 'http_code' => 400, 'description' => 'The parameter Credentials is invalid.'], ['code' => 'InvalidParameter.Credentials.KidRepeat', 'message' => 'The internal field Kid of the input parameter Credentials is duplicate.', 'http_code' => 400, 'description' => 'The internal field Kid of the input parameter Credentials is duplicate.'], ['code' => 'InvalidParameter.Credentials.Kid', 'message' => 'The internal field Kid of the input parameter Credentials is configured to be empty.', 'http_code' => 400, 'description' => 'The internal field Kid of the input parameter Credentials is configured to be empty.'], ['code' => 'InvalidParameter.TokenSources.Repeated', 'message' => 'The input parameter TokenSources internal field configuration is duplicate.', 'http_code' => 400, 'description' => 'The input parameter TokenSources internal field configuration is duplicate.'], ['code' => 'InvalidParameter.TokenSources.Empty', 'message' => 'The internal field of the input TokenSources is invalid.', 'http_code' => 400, 'description' => 'The internal field of the input TokenSources is invalid.'], ['code' => 'InvalidParameter.TokenSources', 'message' => 'The parameter TokenSources is invalid.', 'http_code' => 400, 'description' => 'The parameter TokenSources is invalid.'], ['code' => 'InvalidParameter.TokenType', 'message' => 'The parameter TokenType is invalid.', 'http_code' => 400, 'description' => 'The parameter TokenType is invalid.'], ['code' => 'InvalidParameter.SourceIpInBlacklist', 'message' => 'The provided source is an invalid private IP address. Please verify and resubmit.', 'http_code' => 400, 'description' => 'The provided source is an invalid private IP address. Please verify and resubmit.'], ['code' => 'InvalidParameter.PrivateIpAsSourceUnsupported', 'message' => 'The provided source is an invalid private IP address. Please verify and resubmit.', 'http_code' => 400, 'description' => 'The provided source is an invalid private IP address. Please verify and resubmit.'], ['code' => 'InvalidParameter.PrivateIpAsSourceUnsupported', 'message' => 'The provided origin is an invalid private IP address. Please verify and resubmit.', 'http_code' => 400, 'description' => 'The provided origin is an invalid private IP address. Please verify and resubmit.'], ['code' => 'InvalidParameter.SourceIpInBlacklist', 'message' => 'The provided origin is an invalid private IP address. Please verify and resubmit.', 'http_code' => 400, 'description' => 'The provided origin is an invalid private IP address. Please verify and resubmit.'], ['code' => 'InvalidParameter.ManagedApi.NotChanged', 'message' => 'The status of the managed API is not allowed to be modified.', 'http_code' => 400, 'description' => 'The status of the managed API is not allowed to be modified.'], ['code' => 'InvalidParameter.ManagedApi.Quota', 'message' => 'The API management quota of the corresponding package of the request site is insufficient.', 'http_code' => 400, 'description' => 'The API management quota of the corresponding package of the request site is insufficient.'], ['code' => 'InvalidParameter.Position', 'message' => 'The input parameter Position is invalid.', 'http_code' => 400, 'description' => 'The input parameter Position is invalid.'], ['code' => 'InvalidParameter.ApiActions', 'message' => 'The input parameter ApiActions is invalid.', 'http_code' => 400, 'description' => 'The input parameter ApiActions is invalid.'], ['code' => 'InvalidParameter.ApiRule.Quota', 'message' => 'The API rule quota of the corresponding package of the request site is insufficient.', 'http_code' => 400, 'description' => 'The API rule quota of the corresponding package of the request site is insufficient.'], ['code' => 'InvalidParameter.RuleNameExists', 'message' => 'The input parameter RuleName is duplicated.', 'http_code' => 400, 'description' => 'The input parameter RuleName is duplicated.'], ['code' => 'InvalidParameter.Token.Quota', 'message' => 'The session token quota for the corresponding tier at the request site is insufficient.', 'http_code' => 400, 'description' => 'The session token quota for the corresponding tier at the request site is insufficient.'], ['code' => 'AmountExceed.Entranceplan', 'message' => 'The parameter Amount exceeds the number of entrance plan that can be purchased.', 'http_code' => 400, 'description' => 'The parameter Amount exceeds the number of free versions that can be purchased.'], ['code' => 'FreePlanOrderUnpaid', 'message' => 'Please complete your pending order for the free plan.', 'http_code' => 400, 'description' => 'Please complete your pending order for the free plan.'], ['code' => 'QuotaExceed.FreePlan', 'message' => 'Your account has reached the maximum allowed quota for free plan purchases.', 'http_code' => 400, 'description' => 'Your account has reached the maximum allowed quota for free plan purchases.'], ['code' => 'Record.UnmatchedRecordNameOnlyRangeChars', 'message' => 'Illegal host record character. Only lowercase a-z, uppercase A- Z, digits 0-9, some special characters are supported as valid characters in host records.', 'http_code' => 400, 'description' => 'Illegal host record character. Only lowercase a-z, uppercase A- Z, digits 0-9, \'-\', \'_\', \'.\', \'*\', and \'@\' are supported as valid characters in host records \',\' @ \'.'."\n"], ['code' => 'Record.InvalidHTTPURLValueWithCAARecordTag', 'message' => 'The CAA record is prefixed with http:// or https://, it must be followed by a valid URL.', 'http_code' => 400, 'description' => 'When you create or edit a CAA record, if the Tag is `iodef` and the Value starts with `http://` or `https://`, it must be followed by a valid URL.'], ['code' => 'IPA.FunctionConflict', 'message' => 'KeepAliveProtection is conflicted with StaticIp and CrossBorderOptimization are conflict, can not open at same time.', 'http_code' => 400, 'description' => 'KeepAliveProtection is conflicted with StaticIp and CrossBorderOptimization are conflict, can not open at same time'], ['code' => 'IPA.CanNotEnableKeepAliveProtection', 'message' => 'Both domestic and overseas DDoS protection must be set to a level higher than basic protection.', 'http_code' => 400, 'description' => 'DDoS protection specifications for mainland China and non-mainland China cannot be used as basic protection.'], ['code' => 'Site.HasIpaEnableKeepAliveProtection', 'message' => 'The site has one or more IPA apps with keep-alive-protection enabled, so it cannot update the coverage or the instance.', 'http_code' => 400, 'description' => 'The site has one or more IPA apps with keep-alive-protection enabled, so it cannot update the coverage or the instance.'], ['code' => 'Instance.HasIpaEnableKeepAliveProtection', 'message' => 'The site associated with this instance has one or more IPA apps with keep-alive-protection enabled. Both domestic and overseas DDoS protection cannot be disabled.', 'http_code' => 400, 'description' => 'The site associated with this instance has one or more IPA apps with keep-alive-protection enabled. Both domestic and overseas DDoS protection cannot be disabled."'], ['code' => 'IPA.KeepAliveProtectionConflict', 'message' => 'KeepAliveProtection is conflicted with StaticIp and CrossBorderOptimization, can not open at same time.', 'http_code' => 400, 'description' => 'KeepAliveProtection is conflicted with StaticIp and CrossBorderOptimization, can not open at same time'], ['code' => 'PlanOrderUnpaid', 'message' => 'You have an unpaid ESA order. Please complete or void the order at the User Center before placing another order.', 'http_code' => 400, 'description' => 'You have an unpaid ESA order. Please complete or void the order at the User Center before placing another order.'], ['code' => 'InvalidParameter.ApiShieldSellVerison', 'message' => 'The site does not have permissions to manipulate the enterprise-level capabilities of API security features.', 'http_code' => 400, 'description' => 'The site does not have permissions to manipulate the enterprise-level capabilities of API security features.'], ['code' => 'SiteHasCrossBorderOptimization', 'message' => 'Chinese Mainland Network is enabled for this site. Please disable Chinese Mainland Network and try again.', 'http_code' => 400, 'description' => 'Network acceleration in mainland China is enabled for this site. Turn off network acceleration in mainland China and try again.'], ['code' => 'LoadBalancer.NameInvalid', 'message' => 'The name of the Server Load Balancer instance is a valid domain name or belongs to the site. Check that it is correct and try again.', 'http_code' => 400, 'description' => 'The name of the Server Load Balancer instance is a valid domain name or belongs to the site. Check that it is correct and try again.'], ['code' => 'SiteHasCustomPorts', 'message' => 'Custom ports is enabled for this site. Please disable custom ports and try again.', 'http_code' => 400, 'description' => 'A custom port has been opened in the site. Close the custom port and try again.'], ['code' => 'FunctionArgError', 'message' => 'Failed to check the configured function parameters.', 'http_code' => 400, 'description' => 'Failed to check the configured function parameters'], ['code' => 'ERBuildTast.NotExist', 'message' => 'The ER build task does not exist or does not match the user, please check that it is correct and try again.', 'http_code' => 400, 'description' => 'The ER build task does not exist or does not match the user, please check that it is correct and try again.'], ['code' => 'OriginPool.TypeNotSupport', 'message' => 'The origin address pool type is not supported.', 'http_code' => 400, 'description' => 'The origin address pool type is not supported.'], ['code' => 'Site.NotActive', 'message' => 'The status of the applied site or site is not activated.', 'http_code' => 400, 'description' => 'The status of the applied site or site is not activated.'], ['code' => 'CustomHostname.ApplyCertFailed', 'message' => 'Fail to apply a free cert for custom hostname. Please try again later.', 'http_code' => 400, 'description' => 'Fail to apply a free cert for custom hostname. Please try again later.'], ['code' => 'CustomHostname.SetCertFailed', 'message' => 'Fail to deploy a cert for custom hostname. Please try again later.', 'http_code' => 400, 'description' => 'Fail to deploy a cert for custom hostname. Please try again later.'], ['code' => 'ConfigNotFound', 'message' => 'The specified configuration does not exist.', 'http_code' => 400, 'description' => 'The specified configuration does not exist.'], ['code' => 'ERBuildTask.NotExist', 'message' => 'The ER build task does not exist or does not match the user, please check that it is correct and try again.', 'http_code' => 400, 'description' => 'The ER build task does not exist or does not match the user, please check that it is correct and try again.'], ['code' => 'QuotaCheckFailed.CustomPort', 'message' => 'The current package does not support configuring custom ports. Please check the package description and upgrade your package.', 'http_code' => 400, 'description' => 'The current package does not support configuring custom ports. Please check the package description and upgrade your package.'], ['code' => 'CustomHostname.CheckQuotaFailed', 'message' => 'Fail to check quota for custom hostname. Please try again later.', 'http_code' => 400, 'description' => 'Failed to check the custom hostname quota for the site. Try again later.'], ['code' => 'InvalidParameter.Port', 'message' => 'Invalid port. Enter a valid port as required by the interface documentation.', 'http_code' => 400, 'description' => 'Invalid port. Enter a valid port as required by the interface documentation.'], ['code' => 'CustomHostname.OfflineForMultiReason', 'message' => 'Unable to activate the custom hostname because it is offline due to multiple reasons.', 'http_code' => 400, 'description' => 'The custom hostname has been taken offline for multiple reasons and cannot be activated.'], ['code' => 'Site.QuotaFull', 'message' => 'The instance site count quota is full.', 'http_code' => 400, 'description' => 'The instance site count quota is full.'], ['code' => 'InvalidParameter.RecordPortExceedLimit', 'message' => 'The number of recorded ports exceeds the limit, including 80 or 443 ports, and supports a maximum of 21 ports. Please adjust and try again.', 'http_code' => 400, 'description' => 'The number of recorded ports exceeds the limit, including 80 or 443 ports. A maximum of 21 ports are supported. Please adjust and try again.'], ['code' => 'CustomHostname.QueryCasCertFailed', 'message' => 'Fail to query CAS certificate details. Please try again later.', 'http_code' => 400, 'description' => 'Failed to query the China Shield certificate details. Try again later.'], ['code' => 'CustomHostname.WildcardDomainRequireEnterprisePlan', 'message' => 'Wildcard custom hostnames require an Enterprise plan.', 'http_code' => 400, 'description' => 'Only the Enterprise plan supports adding wildcard SaaS domain names. Upgrade your plan and try again.'], ['code' => 'SiteOrVersion.NotExist', 'message' => 'The specified website or website version does not exist or is not recognized by the system. Check whether the specified website or website version identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website or website version, make sure that the creation and registration process is complete to integrate the website to the system.', 'http_code' => 400, 'description' => 'The specified website or website version does not exist or is not recognized by the system. Check whether the specified website or website version identifier is valid and matches a website that is active, defined, and recognized by the system.If you want to add a new website or website version, make sure that the creation and registration process is complete to integrate the website to the system.'], ['code' => 'Ato.ApiAsset.NotExist', 'message' => 'The specified ATO API asset does not exist.', 'http_code' => 400, 'description' => 'The specified account security API asset does not exist in the current context or system configuration. Please confirm the existence of the API asset identifier and make sure it is properly defined or implemented.'], ['code' => 'Ato.ProtectionStrategy.NotExist', 'message' => 'The specified ATO protection strategy does not exist.', 'http_code' => 400, 'description' => 'The specified account security policy does not exist in the current context or system configuration. Verify the existence of the protection policy identifier and ensure that it has been properly defined or implemented.'], ['code' => 'Ato.ProtectionStrategy.BeingBound', 'message' => 'The specified ATO protection strategy is being bound.', 'http_code' => 400, 'description' => 'the specified account security policy is bound by one or more protection rules.'], ['code' => 'Site.HasStaticIP', 'message' => 'This operation is not allowed because the site has static IP enabled.', 'http_code' => 400, 'description' => 'This operation is not allowed because the site has static IP enabled.'], ['code' => 'NotEnoughResource.CustomPort', 'message' => 'Resource verification failed because there are not enough IP resources.', 'http_code' => 400, 'description' => 'Resource verification failed because there are not enough IP resources.'], ['code' => 'Site.HasCN2', 'message' => 'The website has enabled CN2, and this operation is not allowed.', 'http_code' => 400, 'description' => 'Network access optimization in mainland China is enabled for this site. This operation is not allowed.'], ['code' => 'Ato.ApiAsset.AlreadyBound', 'message' => 'The specified ATO API asset already bound by another rule.', 'http_code' => 400, 'description' => 'The specified ATO API asset is already bound by another rule.'], ['code' => 'Site.HasIpaEnableKeepAliveProtection', 'message' => 'The site has one or more TCP/UDP proxied applications with keep-alive-protection enabled. Its acceleration region or plan can\'t be edited.', 'http_code' => 400, 'description' => 'The site has one or more TCP/UDP proxied applications with keep-alive-protection enabled. Its acceleration region or plan can\'t be edited.'], ['code' => 'IPA.CanNotEnableKeepAliveProtection', 'message' => 'The site has one or more TCP/UDP proxied applications with keep-alive-protection enabled. Its acceleration region or plan can\'t be edited.', 'http_code' => 400, 'description' => 'DDoS protection for Chinese mainland or outside the Chinese mainland can\'t be "Basic protection"'], ['code' => 'ProjectAccessDenied', 'message' => 'You do not have access to this project.', 'http_code' => 400, 'description' => 'You do not have permission to access this item.'], ['code' => 'AIGWService.HasOpened', 'message' => 'Your AI gateway service has opened.', 'http_code' => 400, 'description' => 'You have already activated the AI gateway service and do not need to activate it again.'], ['code' => 'NotInternationRealIdentity', 'message' => 'Real-name registration is required for services offered in Mainland China.', 'http_code' => 400, 'description' => 'You have not passed real-name verification. According to the regulations issued by MIIT, you must pass real-name verification if you want to purchase information services in the Chinese mainland.'], ['code' => 'Page.Site.AleadyBound', 'message' => 'The specified site has already been associated with another custom error page of the same type. Dissociate the site from the existing page and try again.', 'http_code' => 403, 'description' => 'The specified site has already been associated with another custom error page of the same type. Dissociate the site from the existing page and try again.'], ['code' => 'Page.SiteAlreadyBound', 'message' => 'The specified site has already been associated with another custom error page of the same type. Dissociate the site from the existing page and try again.', 'http_code' => 403, 'description' => 'The specified site is already bound to another custom response page of the same type. Please first unbind the site from the existing page and then try again.'], ['code' => 'NotInternationalRealIdentity', 'message' => 'Real-name registration is required for services offered in Mainland China.', 'http_code' => 400, 'description' => 'You have not passed real-name verification. According to the regulations issued by MIIT, you must pass real-name verification if you want to purchase information services in the Chinese mainland.'], ['code' => 'InvalidParameter_ApiRuleId', 'message' => 'A rule configuration exists for the requested API. Delete the relevant API rule configuration before deleting the corresponding API.', 'http_code' => 400, 'description' => 'A rule configuration exists for the requested API. Delete the relevant API rule configuration before deleting the corresponding API.'], ['code' => 'InvalidParameter_ApiSchemaId', 'message' => 'The requested Api has a schema validation configuration. Delete the schema validation configuration before deleting the corresponding Api.', 'http_code' => 400, 'description' => 'The requested Api has a schema validation configuration. Delete the schema validation configuration before deleting the corresponding Api.'], ['code' => 'InvalidParameter_ApiIdentifierId', 'message' => 'The Api to be deleted has a session identifier configuration. Delete the session identifier configuration before deleting the corresponding Api.', 'http_code' => 400, 'description' => 'The Api to be deleted has a session identifier configuration. Delete the session identifier configuration before deleting the corresponding Api.'], ['code' => 'InvalidParameter.ApiShieldSellVersion', 'message' => 'The site does not have permissions to manipulate the enterprise-level capabilities of API security features.', 'http_code' => 400, 'description' => 'The site does not have permissions to manipulate the enterprise-level capabilities of API security features.'], ['code' => 'Record.RecordNameConflictWithDSName', 'message' => 'The record name cannot have the same name as the DS type record.', 'http_code' => 400, 'description' => 'When you create or edit DNS record information, the record name cannot be the same as the DS record name.'], ['code' => 'Record.RecordNameConflictWithEdgeFunctionRoutineRecordName', 'message' => 'The record name cannot have the same name as the Routine inner type record name in Edge Function.', 'http_code' => 400, 'description' => 'When creating or editing DNS record information, the record name cannot be the same as the record name in Edge Function (Routine).'], ['code' => 'OriginPool.CheckQuotaFailed', 'message' => 'Failed to check source pool quota for site, please try again later.', 'http_code' => 400, 'description' => 'Failed to check source pool quota for site, please try again later.'], ['code' => 'CustomHostname.InvalidStatus', 'message' => 'The status of the custom hostname you configured is invalid, and this operation cannot be performed. Please check the status of the custom hostname and try again.', 'http_code' => 400, 'description' => 'The status of the custom hostname you configured is invalid, and this operation cannot be performed. Please check the status of the custom hostname and try again.'], ['code' => 'InvalidParameter.StartEndTimeErr', 'message' => 'There is a logic error in the time-related field of the request input parameter.', 'http_code' => 400, 'description' => 'There is a logic error in the time-related field of the request input parameter.'], ['code' => 'InvalidParameter.ApiShieldRiskDetectionPolicyConfigurationQuota', 'message' => 'This site does not have permissions to view API security risk detection and policy management.', 'http_code' => 400, 'description' => 'This site does not have permissions to view API security risk detection and policy management.'], ['code' => 'InvalidParameter.RulesFormat', 'message' => 'The input rules format specification of the request does not meet the requirements.', 'http_code' => 400, 'description' => 'The input rules format specification of the request does not meet the requirements.'], ['code' => 'InvalidParameter.RuleCountExceedsLimit', 'message' => 'The number of API security policy rules created exceeds the limit.', 'http_code' => 400, 'description' => 'The number of API security policy rules created exceeds the limit.'], ['code' => 'InvalidParameter.AbnormalLevel', 'message' => 'The request input parameter AbnormalLevel field is invalid.', 'http_code' => 400, 'description' => 'The request input parameter AbnormalLevel field is invalid.'], ['code' => 'InvalidParameter.StatusList', 'message' => 'The request input parameter StatusList field is invalid.', 'http_code' => 400, 'description' => 'The request input parameter StatusList field is invalid.'], ['code' => 'InvalidParameter.ApiTag', 'message' => 'The request input parameter ApiTag field is invalid.', 'http_code' => 400, 'description' => 'The request input parameter ApiTag field is invalid.'], ['code' => 'InvalidParameter.EndTime', 'message' => 'The format of the EndTime-related fields in the request parameters is invalid.', 'http_code' => 400, 'description' => 'The format of the EndTime-related fields in the request parameters is invalid.'], ['code' => 'InvalidParameter.StartTime', 'message' => 'The format of the StartTime-related fields in the request parameters is invalid.', 'http_code' => 400, 'description' => 'The format of the StartTime-related fields in the request parameters is invalid.'], ['code' => 'InvalidParameter.StartEndTimeErr', 'message' => 'The logic of the request input start and end time is unreasonable.', 'http_code' => 400, 'description' => 'The logic of the request input start and end time is unreasonable.'], ['code' => 'PaidCrawling.Disabled', 'message' => 'Paid crawling feature is not enabled, cannot set action to paid crawling.', 'http_code' => 403, 'description' => 'Paid crawling feature is not enabled, cannot set action to paid_crawling.'], ['code' => 'PaidCrawling.InUse', 'message' => 'Cannot disable paid crawling while existing rules still reference it.', 'http_code' => 403, 'description' => 'When there is a rule that uses a paid crawl action, the paid crawl setting cannot be turned off.'], ['code' => 'ErrorRedemptionCodeNotInvalidDomain', 'message' => 'The domain is invalid.', 'http_code' => 400, 'description' => 'The domain name is illegal.'], ['code' => 'ErrorRedemptionCodeDomainInEsa', 'message' => 'Domain already in ESA in the last 30 days.', 'http_code' => 400, 'description' => 'The domain name has been connected to the ESA in the last 30 days.'], ['code' => 'ErrorRedemptionCodeNotRootDomain', 'message' => 'The domain name is not a root domain name.', 'http_code' => 400, 'description' => 'The domain name is not a root domain name.'], ['code' => 'ErrorRedemptionCodeNocodeLeft', 'message' => 'Insufficient redemption code inventory.', 'http_code' => 400, 'description' => 'Insufficient exchange code inventory'], ['code' => 'ErrorRedemptionCodeAlreadyClaimed', 'message' => 'User already claimed a redemption code.', 'http_code' => 400, 'description' => 'This user has already received a redemption code.'], ['code' => 'ApiShiled.Identifier.Existed', 'message' => 'Duplicate request Identifier related configuration.', 'http_code' => 400, 'description' => 'Duplicate request Identifier related configuration.'], ['code' => 'ApiShiled.Identifier.JwtName', 'message' => 'The request input parameter JwtName field is invalid.', 'http_code' => 400, 'description' => 'The request input parameter JwtName field is invalid.'], ['code' => 'ApiShiled.Identifier.CookieName', 'message' => 'The request input parameter CookieName field is invalid.', 'http_code' => 400, 'description' => 'The request input parameter CookieName field is invalid.'], ['code' => 'ApiShiled.Identifier.HeaderName', 'message' => 'The request input parameter headerName field is invalid.', 'http_code' => 400, 'description' => 'The request input parameter headerName field is invalid.'], ['code' => 'ApiShiled.Identifier.JwtTokenId', 'message' => 'The request input parameter JwtTokenId field is invalid.', 'http_code' => 400, 'description' => 'The request input parameter JwtTokenId field is invalid.'], ['code' => 'ApiShield.SchemaData.Version', 'message' => 'The request input SchemaData content openapi field is illegal.', 'http_code' => 400, 'description' => 'The request input SchemaData content openapi field is illegal.'], ['code' => 'ApiShield.SchemaData.Method', 'message' => 'The method field of the request input parameter SchemaData is invalid.', 'http_code' => 400, 'description' => 'The method field of the request input parameter SchemaData is invalid.'], ['code' => 'ApiShield.SchemaFile.Quota', 'message' => 'The quota of schema files for the package API security function of the request site is insufficient.', 'http_code' => 400, 'description' => 'The quota of schema files for the package API security function of the request site is insufficient.'], ['code' => 'ApiShield.SchemaData.Api', 'message' => 'The request input parameter SchemaData content API field is invalid.', 'http_code' => 400, 'description' => 'The request input parameter SchemaData content API field is invalid.'], ['code' => 'ApiShield.SchemaData', 'message' => 'The request input SchemaData field is invalid.', 'http_code' => 400, 'description' => 'The request input parameter SchemaData field is invalid.'], ['code' => 'ApiShield.SchemaData.Host', 'message' => 'The request input parameter SchemaData content host field is illegal.', 'http_code' => 400, 'description' => 'The request input parameter SchemaData content host field is illegal.'], ['code' => 'InvalidParameter.TokenSourcesRepeated', 'message' => 'Duplicate configurations are not allowed in the input TokenSources.', 'http_code' => 400, 'description' => 'Duplicate configurations are not allowed in the input TokenSources.'], ['code' => 'InvalidParameter.TokenConfigs.Id', 'message' => 'The internal Id field of the input TokenConfigs array is invalid.', 'http_code' => 400, 'description' => 'The internal Id field of the input TokenConfigs array is invalid.'], ['code' => 'RealTimeLog.S3AccessDenied', 'message' => 'The permissions check for the S3 address you posted failed.', 'http_code' => 400, 'description' => 'The permissions check for the S3 address you posted failed.'], ], 'changeSet' => [ [ 'apis' => [ ['description' => 'Response parameters changed', 'api' => 'SetClientCertificateHostnames'], ], 'createdAt' => '2025-03-13T09:11:33.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Response parameters changed', 'api' => 'ListScheduledPreloadJobs'], ], 'createdAt' => '2025-03-13T08:02:30.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'BlockObject'], ['description' => 'Error codes changed', 'api' => 'PreloadCaches'], ['description' => 'Error codes changed', 'api' => 'PurgeCaches'], ], 'createdAt' => '2025-03-13T07:59:15.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Response parameters changed', 'api' => 'GetClientCaCertificate'], ['description' => 'Response parameters changed', 'api' => 'GetClientCertificate'], ['description' => 'Response parameters changed', 'api' => 'ListClientCaCertificates'], ['description' => 'Response parameters changed', 'api' => 'ListClientCertificates'], ], 'createdAt' => '2025-03-12T03:31:00.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Request parameters changed', 'api' => 'UpdateCustomScenePolicy'], ], 'createdAt' => '2025-03-12T02:37:17.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Response parameters changed', 'api' => 'CreateSiteDeliveryTask'], ], 'createdAt' => '2025-02-28T07:45:05.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Request parameters changed', 'api' => 'CreateOriginRule'], ['description' => 'Response parameters changed', 'api' => 'GetOriginRule'], ['description' => 'Response parameters changed', 'api' => 'ListOriginRules'], ['description' => 'Request parameters changed', 'api' => 'UpdateOriginRule'], ], 'createdAt' => '2025-02-27T09:17:23.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Response parameters changed', 'api' => 'GetWafFilter'], ], 'createdAt' => '2025-02-27T08:45:59.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'DeleteOriginProtection'], ['description' => 'Error codes changed', 'api' => 'UpdateOriginProtection'], ['description' => 'Error codes changed', 'api' => 'UpdateOriginProtectionIpWhiteList'], ], 'createdAt' => '2025-02-21T06:59:44.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Request parameters changed', 'api' => 'UpdateWaitingRoomEvent'], ['description' => 'Request parameters changed', 'api' => 'UpdateWaitingRoomRule'], ], 'createdAt' => '2025-02-21T03:41:24.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Request parameters changed', 'api' => 'DeleteWaitingRoomEvent'], ['description' => 'Request parameters changed', 'api' => 'DeleteWaitingRoomRule'], ['description' => 'Response parameters changed', 'api' => 'ListCacheReserveInstances'], ], 'createdAt' => '2025-02-21T03:26:42.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed, Request parameters changed', 'api' => 'PurchaseRatePlan'], ], 'createdAt' => '2025-02-20T05:45:43.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Request parameters changed', 'api' => 'DescribeCustomScenePolicies'], ], 'createdAt' => '2025-02-19T08:09:11.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'BatchCreateRecords'], ['description' => 'Error codes changed', 'api' => 'CreateRecord'], ['description' => 'Response parameters changed', 'api' => 'GetSite'], ['description' => 'Response parameters changed', 'api' => 'ListSites'], ], 'createdAt' => '2025-02-18T05:59:56.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Request parameters changed', 'api' => 'SetCertificate'], ], 'createdAt' => '2025-02-13T01:37:48.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Request parameters changed', 'api' => 'CreateLoadBalancer'], ['description' => 'Response parameters changed', 'api' => 'ListLoadBalancers'], ['description' => 'Request parameters changed', 'api' => 'UpdateLoadBalancer'], ], 'createdAt' => '2025-02-13T01:35:09.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Request parameters changed', 'api' => 'CreateCompressionRule'], ['description' => 'Response parameters changed', 'api' => 'GetCompressionRule'], ['description' => 'Response parameters changed', 'api' => 'ListCompressionRules'], ['description' => 'Request parameters changed', 'api' => 'UpdateCompressionRule'], ], 'createdAt' => '2025-02-12T02:26:24.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Response parameters changed', 'api' => 'CreateWaitingRoom'], ['description' => 'Response parameters changed', 'api' => 'CreateWaitingRoomEvent'], ['description' => 'Response parameters changed', 'api' => 'CreateWaitingRoomRule'], ['description' => 'Request parameters changed, Response parameters changed', 'api' => 'ListUserRatePlanInstances'], ], 'createdAt' => '2025-02-12T02:01:47.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Request parameters changed', 'api' => 'DescribePurgeTasks'], ['description' => 'Request parameters changed', 'api' => 'GetPurgeQuota'], ['description' => 'Request parameters changed', 'api' => 'PurgeCaches'], ], 'createdAt' => '2025-02-10T01:56:01.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Request parameters changed', 'api' => 'CreateLoadBalancer'], ], 'createdAt' => '2025-02-10T01:26:43.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'DeleteSite'], ['description' => 'Response parameters changed', 'api' => 'ListUserRatePlanInstances'], ], 'createdAt' => '2025-01-10T01:52:00.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Request parameters changed', 'api' => 'ListPages'], ], 'createdAt' => '2025-01-09T06:25:18.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Response parameters changed', 'api' => 'SetCertificate'], ], 'createdAt' => '2025-01-09T05:45:30.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'ListManagedRulesGroups'], ['description' => 'Request parameters changed', 'api' => 'UpdatePage'], ], 'createdAt' => '2024-12-26T15:08:05.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Request parameters changed', 'api' => 'CreateUserDeliveryTask'], ['description' => 'Response parameters changed', 'api' => 'GetUserDeliveryTask'], ['description' => 'Request parameters changed', 'api' => 'UpdateUserDeliveryTask'], ], 'createdAt' => '2024-12-26T08:22:34.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Request parameters changed', 'api' => 'GetOriginProtection'], ], 'createdAt' => '2024-12-24T01:43:07.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'EditSiteWafSettings'], ], 'createdAt' => '2024-12-19T09:11:02.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Request parameters changed', 'api' => 'GetSiteWafSettings'], ['description' => 'Request parameters changed', 'api' => 'ListWafRules'], ], 'createdAt' => '2024-12-12T06:19:10.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed, Request parameters changed', 'api' => 'PurgeCaches'], ], 'createdAt' => '2024-12-06T02:12:12.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Request parameters changed', 'api' => 'CommitRoutineStagingCode'], ['description' => 'Request parameters changed', 'api' => 'CreateRoutine'], ['description' => 'Request parameters changed', 'api' => 'CreateRoutineRelatedRecord'], ['description' => 'Request parameters changed', 'api' => 'CreateRoutineRelatedRoute'], ['description' => 'Request parameters changed', 'api' => 'DeleteRoutine'], ['description' => 'Request parameters changed', 'api' => 'DeleteRoutineCodeVersion'], ['description' => 'Request parameters changed', 'api' => 'DeleteRoutineRelatedRecord'], ['description' => 'Request parameters changed', 'api' => 'DeleteRoutineRelatedRoute'], ['description' => 'Request parameters changed, Response parameters changed', 'api' => 'GetRoutine'], ['description' => 'Request parameters changed', 'api' => 'GetRoutineStagingCodeUploadInfo'], ], 'createdAt' => '2024-12-04T05:50:49.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Request parameters changed, Response parameters changed', 'api' => 'CreateSiteFunction'], ['description' => 'Response parameters changed', 'api' => 'ListSiteFunctions'], ['description' => 'Request parameters changed', 'api' => 'UpdateSiteFunction'], ], 'createdAt' => '2024-12-04T02:33:41.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Request parameters changed, Response parameters changed', 'api' => 'ListSites'], ['description' => 'Request parameters changed', 'api' => 'ListUserRatePlanInstances'], ], 'createdAt' => '2024-11-28T06:42:15.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'GetKv'], ], 'createdAt' => '2024-11-26T03:44:10.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Response parameters changed', 'api' => 'DescribeDDoSAllEventList'], ['description' => 'Error codes changed', 'api' => 'DescribeHttpDDoSAttackIntelligentProtection'], ['description' => 'Error codes changed', 'api' => 'DescribeHttpDDoSAttackProtection'], ['description' => 'Error codes changed', 'api' => 'SetHttpDDoSAttackIntelligentProtection'], ['description' => 'Error codes changed', 'api' => 'SetHttpDDoSAttackProtection'], ], 'createdAt' => '2024-11-19T03:36:10.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Request parameters changed', 'api' => 'ListRecords'], ], 'createdAt' => '2024-11-19T01:42:35.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Request parameters changed', 'api' => 'ListWafManagedRules'], ['description' => 'Request parameters changed', 'api' => 'ListWafTemplateRules'], ], 'createdAt' => '2024-11-12T07:31:28.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed, Request parameters changed', 'api' => 'BatchCreateRecords'], ['description' => 'Response parameters changed', 'api' => 'ListUserRatePlanInstances'], ], 'createdAt' => '2024-11-12T05:58:05.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Request parameters changed', 'api' => 'CreateScheduledPreloadExecutions'], ], 'createdAt' => '2024-11-12T03:12:55.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Response parameters changed', 'api' => 'GetEdgeContainerAppVersion'], ['description' => 'Response parameters changed', 'api' => 'ListEdgeContainerAppVersions'], ], 'createdAt' => '2024-11-12T02:07:43.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'CommitRoutineStagingCode'], ['description' => 'Error codes changed', 'api' => 'CreateRoutine'], ['description' => 'Error codes changed', 'api' => 'CreateRoutineRelatedRecord'], ['description' => 'Error codes changed', 'api' => 'CreateRoutineRelatedRoute'], ['description' => 'Error codes changed', 'api' => 'DeleteRoutine'], ['description' => 'Error codes changed', 'api' => 'DeleteRoutineCodeVersion'], ['description' => 'Error codes changed', 'api' => 'DeleteRoutineRelatedRecord'], ['description' => 'Error codes changed', 'api' => 'DeleteRoutineRelatedRoute'], ], 'createdAt' => '2024-11-05T06:55:41.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'CreateRecord'], ['description' => 'Error codes changed', 'api' => 'UpdateSiteAccessType'], ['description' => 'Error codes changed', 'api' => 'UpdateSiteVanityNS'], ], 'createdAt' => '2024-11-05T03:28:14.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'CheckUserProjectName'], ['description' => 'Error codes changed, Request parameters changed', 'api' => 'CreateSiteDeliveryTask'], ['description' => 'Error codes changed', 'api' => 'CreateUserDeliveryTask'], ['description' => 'Error codes changed', 'api' => 'DeleteSiteDeliveryTask'], ['description' => 'Error codes changed', 'api' => 'DeleteUserDeliveryTask'], ['description' => 'Error codes changed', 'api' => 'GetUserDeliveryTask'], ['description' => 'Error codes changed', 'api' => 'ListUserDeliveryTasks'], ['description' => 'Error codes changed', 'api' => 'UpdateSiteDeliveryTask'], ['description' => 'Error codes changed', 'api' => 'UpdateUserDeliveryTask'], ['description' => 'Error codes changed', 'api' => 'UpdateUserDeliveryTaskStatus'], ], 'createdAt' => '2024-10-18T01:07:45.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'ListInstanceQuotas'], ['description' => 'Error codes changed', 'api' => 'ListInstanceQuotasWithUsage'], ], 'createdAt' => '2024-10-15T09:24:31.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'UpdateSiteCoverage'], ], 'createdAt' => '2024-10-15T05:53:31.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'ListEdgeContainerApps'], ], 'createdAt' => '2024-10-15T03:49:31.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'SetCertificate'], ], 'createdAt' => '2024-10-15T03:45:45.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'PreloadCaches'], ['description' => 'Error codes changed', 'api' => 'PurgeCaches'], ], 'createdAt' => '2024-10-15T01:59:01.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'BatchCreateRecords'], ], 'createdAt' => '2024-10-11T06:14:16.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed, Request parameters changed', 'api' => 'CreateRecord'], ['description' => 'Error codes changed, Request parameters changed', 'api' => 'UpdateRecord'], ], 'createdAt' => '2024-10-10T12:01:55.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'ListInstanceQuotasWithUsage'], ], 'createdAt' => '2024-10-10T07:17:08.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'CreateSite'], ], 'createdAt' => '2024-10-10T02:02:02.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'CreateSite'], ], 'createdAt' => '2024-10-08T03:27:01.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'SetCertificate'], ], 'createdAt' => '2024-10-03T13:49:15.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Request parameters changed, Response parameters changed', 'api' => 'ListManagedRulesGroups'], ], 'createdAt' => '2024-09-29T05:47:36.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'CheckSiteProjectName'], ['description' => 'Error codes changed', 'api' => 'CheckUserProjectName'], ['description' => 'Error codes changed', 'api' => 'CreateSiteCustomLog'], ['description' => 'Error codes changed', 'api' => 'CreateSiteDeliveryTask'], ['description' => 'Error codes changed', 'api' => 'CreateUserDeliveryTask'], ['description' => 'Error codes changed', 'api' => 'DeleteSiteDeliveryTask'], ['description' => 'Error codes changed', 'api' => 'DeleteUserDeliveryTask'], ['description' => 'Error codes changed', 'api' => 'GetRealtimeDeliveryField'], ['description' => 'Error codes changed', 'api' => 'GetSiteCustomLog'], ['description' => 'Error codes changed', 'api' => 'GetSiteDeliveryTask'], ], 'createdAt' => '2024-09-27T05:57:43.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'BatchCreateWafRules'], ['description' => 'Error codes changed', 'api' => 'BatchGetExpressionFields'], ['description' => 'Error codes changed', 'api' => 'BatchUpdateWafRules'], ['description' => 'Error codes changed', 'api' => 'CreateList'], ['description' => 'Error codes changed', 'api' => 'CreatePage'], ['description' => 'Error codes changed', 'api' => 'CreateWafRule'], ['description' => 'Error codes changed', 'api' => 'DeleteList'], ['description' => 'Error codes changed', 'api' => 'DeletePage'], ['description' => 'Error codes changed', 'api' => 'DeleteWafRule'], ['description' => 'Error codes changed', 'api' => 'DeleteWafRuleset'], ], 'createdAt' => '2024-09-25T07:03:22.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed, Request parameters changed', 'api' => 'ListLists'], ], 'createdAt' => '2024-09-25T07:02:13.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'UpdateSiteCoverage'], ], 'createdAt' => '2024-09-24T09:14:10.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Request parameters changed', 'api' => 'CreateSiteDeliveryTask'], ['description' => 'Request parameters changed', 'api' => 'CreateUserDeliveryTask'], ], 'createdAt' => '2024-09-24T08:32:17.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'BatchCreateRecords'], ['description' => 'Error codes changed', 'api' => 'CreateRecord'], ['description' => 'Error codes changed', 'api' => 'UpdateRecord'], ], 'createdAt' => '2024-09-24T08:28:53.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'BlockObject'], ], 'createdAt' => '2024-09-24T06:04:45.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed, Request parameters changed', 'api' => 'CreateRecord'], ['description' => 'Error codes changed, Response parameters changed', 'api' => 'GetRecord'], ['description' => 'Error codes changed, Response parameters changed', 'api' => 'ListRecords'], ['description' => 'Error codes changed, Request parameters changed', 'api' => 'UpdateRecord'], ], 'createdAt' => '2024-09-23T08:54:00.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed, Request parameters changed', 'api' => 'ListSites'], ], 'createdAt' => '2024-09-23T07:17:24.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'BatchUpdateWafRules'], ], 'createdAt' => '2024-09-23T06:20:25.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'ActivateClientCertificate'], ], 'createdAt' => '2024-09-23T02:16:50.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'BatchDeleteKv'], ['description' => 'Error codes changed', 'api' => 'BatchDeleteKvWithHighCapacity'], ['description' => 'Error codes changed', 'api' => 'BatchPutKv'], ['description' => 'Error codes changed', 'api' => 'BatchPutKvWithHighCapacity'], ['description' => 'Error codes changed', 'api' => 'GetKvNamespace'], ['description' => 'Error codes changed', 'api' => 'ListKvs'], ['description' => 'Error codes changed', 'api' => 'PutKv'], ['description' => 'Error codes changed', 'api' => 'PutKvAccount'], ['description' => 'Error codes changed', 'api' => 'PutKvWithHighCapacity'], ['description' => 'Error codes changed', 'api' => 'UpdateKvNamespace'], ], 'createdAt' => '2024-09-20T13:50:13.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'CreateList'], ['description' => 'Error codes changed', 'api' => 'CreateManagedRulesGroup'], ['description' => 'Error codes changed', 'api' => 'CreatePage'], ['description' => 'Error codes changed', 'api' => 'SetCertificate'], ['description' => 'Error codes changed', 'api' => 'UpdateList'], ], 'createdAt' => '2024-09-18T09:54:23.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'CheckSiteName'], ['description' => 'Error codes changed', 'api' => 'EditSiteWafSettings'], ['description' => 'Error codes changed', 'api' => 'ExportRecords'], ['description' => 'Error codes changed', 'api' => 'GetList'], ['description' => 'Error codes changed', 'api' => 'GetManagedRulesGroup'], ['description' => 'Error codes changed', 'api' => 'GetSite'], ['description' => 'Error codes changed', 'api' => 'GetSiteCurrentNS'], ['description' => 'Error codes changed', 'api' => 'GetSiteWafSettings'], ], 'createdAt' => '2024-09-18T08:57:12.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'GetWafBotAppKey'], ['description' => 'Error codes changed', 'api' => 'GetWafFilter'], ['description' => 'Error codes changed', 'api' => 'GetWafQuota'], ['description' => 'Error codes changed', 'api' => 'GetWafRuleset'], ['description' => 'Error codes changed', 'api' => 'ListEdgeContainerAppRecords'], ['description' => 'Error codes changed', 'api' => 'ListEdgeContainerRecords'], ['description' => 'Error codes changed', 'api' => 'ListEdgeRoutineRecords'], ['description' => 'Error codes changed', 'api' => 'ListLists'], ['description' => 'Error codes changed', 'api' => 'ListManagedRulesGroups'], ['description' => 'Error codes changed', 'api' => 'ListPages'], ], 'createdAt' => '2024-09-18T08:07:13.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'BatchCreateRecords'], ['description' => 'Error codes changed', 'api' => 'BatchCreateWafRules'], ['description' => 'Error codes changed', 'api' => 'BatchGetExpressionFields'], ['description' => 'Error codes changed', 'api' => 'BatchUpdateWafRules'], ['description' => 'Error codes changed', 'api' => 'ListTagResources'], ['description' => 'Error codes changed', 'api' => 'ListWafPhases'], ['description' => 'Error codes changed', 'api' => 'ListWafRulesets'], ['description' => 'Error codes changed', 'api' => 'ListWafTemplateRules'], ['description' => 'Error codes changed', 'api' => 'ListWafUsageOfRules'], ['description' => 'Error codes changed', 'api' => 'ListWaitingRoomEvents'], ], 'createdAt' => '2024-09-18T06:14:20.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'SetCertificate'], ], 'createdAt' => '2024-09-06T06:59:23.000Z', 'description' => '', ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListEdgeRoutinePlans'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CheckUserProjectName'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'PurchaseCacheReserve'], ['threshold' => '2', 'countWindow' => 1, 'regionId' => '*', 'api' => 'PutKvWithHighCapacity'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListPages'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UntagResources'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateRedirectRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateUrlObservation'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListInstanceQuotasWithUsage'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateList'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteRecord'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetHttpIncomingRequestHeaderModificationRule'], ['threshold' => '1', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateRoutine'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteHttpDDoSIntelligentRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListWafRulesets'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListLists'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListEdgeContainerAppRecords'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ActivateClientCertificate'], ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteKv'], ['threshold' => '100', 'countWindow' => 3600, 'regionId' => '*', 'api' => 'CreateCustomHostname'], ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'PutKv'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListCacheRules'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateRatePlanSpec'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetCrossBorderOptimization'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeDdosMaxBurstGbps'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListCertificates'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteEdgeContainerAppVersion'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListCompressionRules'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateDevelopmentMode'], ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListESAIPInfo'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListLoadBalancerOriginStatus'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetHttpRequestHeaderModificationRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateSiteCoverage'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateSiteCustomLog'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'PurchaseRatePlan'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetCnameFlattening'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteSite'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListWafRules'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UploadOriginClientCertificate'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetNetworkOptimization'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateImageTransform'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'PurgeCaches'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetPage'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateHttpsApplicationConfiguration'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetWafFilter'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListUserRoutines'], ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteRoutineCodeVersion'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListRoutineRelatedRecords'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateTransportLayerApplication'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateHttpIncomingResponseHeaderModificationRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateUserDeliveryTaskStatus'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateUrlObservation'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListVideoProcessings'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetWafRuleset'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteScheduledPreloadExecution'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetClientCaCertificate'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'TagResources'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ApplyCertificate'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetScheduledPreloadJob'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'BatchGetExpressionFields'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateTransportLayerApplication'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'EnableCustomScenePolicy'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateCustomHostname'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateHttpIncomingResponseHeaderModificationRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetCertificateQuota'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListOriginPools'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeactivateVersionManagement'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListInstanceQuotas'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetIPv6'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteCustomResponseCodeRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListWaitingRoomEvents'], ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteKeylessServer'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetRoutineStagingCodeUploadInfo'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetHttpIncomingResponseHeaderModificationRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListWaitingRooms'], ['threshold' => '1', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateRoutineRelatedRecord'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetWafQuota'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListUserWafRulesets'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CheckSiteName'], ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetKvDetail'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SetHttpDDoSAttackProtection'], ['threshold' => '1', 'countWindow' => 1, 'regionId' => '*', 'api' => 'BatchCreateRecords'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListHttpResponseHeaderModificationRules'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateSiteAccessType'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSitePause'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CheckSiteProjectName'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetCustomResponseCodeRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListRewriteUrlRules'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetOriginClientCertificateHostnames'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateImageTransform'], ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListKvs'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateOriginPool'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateWaitingRoomEvent'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateWafRule'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetApiSchemaUsage'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'RevokeClientCertificate'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribePreloadTasks'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ResetScheduledPreloadJob'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetCacheReserveSpecification'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateSiteVanityNS'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetCustomHostname'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteWaitingRoomEvent'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSiteCustomLog'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetCompressionRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateVideoProcessing'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeletePage'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEdgeContainerDeployRegions'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SetHttpDDoSAttackRuleAction'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetWafRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateLoadBalancer'], ['threshold' => '1', 'countWindow' => 1, 'regionId' => '*', 'api' => 'BatchDeleteKv'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSiteWafSettings'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetRealtimeDeliveryField'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteHttpIncomingRequestHeaderModificationRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateNetworkOptimization'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetWafBotAppKey'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateRewriteUrlRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateRedirectRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetHttpsApplicationConfiguration'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSite'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteLoadBalancer'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetRoutineCodeVersion'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ActivateVersionManagement'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListSiteDeliveryTasks'], ['threshold' => '6', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ReleaseInstance'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEdgeContainerAppResourceReserve'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateSiteDeliveryTask'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeEdgeContainerAppStats'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeUrlObservationData'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListRecords'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteWaitingRoom'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateCnameFlattening'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSiteLogDeliveryQuota'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateCompressionRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetLoadBalancer'], ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEdgeContainerAppResourceCapacity'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateEdgeContainerAppVersion'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEdgeContainerAppLogRiver'], ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteKvNamespace'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeDDoSL7QpsList'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetErService'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListScheduledPreloadExecutions'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteClientCaCertificate'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateCrossBorderOptimization'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListOriginClientCertificates'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetPurgeQuota'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'PublishEdgeContainerAppVersion'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListHttpsBasicConfigurations'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateHttpRequestHeaderModificationRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSiteDeliveryTask'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SetHttpDDoSAttackRuleStatus'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetClientCertificateHostnames'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListCustomHostnames'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateEdgeContainerApp'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListEdgeContainerApps'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateWaitingRoomRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeHttpDDoSIntelligentAclRules'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteCompressionRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateCustomScenePolicy'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetRedirectRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteCustomScenePolicy'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListCertificatesByRecord'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListOriginCaCertificates'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListUserDeliveryTasks'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateUserDeliveryTask'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UploadOriginCaCertificate'], ['threshold' => '10', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeSiteTimeSeriesData'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListOriginRules'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetUploadTask'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateCustomResponseCodeRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteOriginRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'EditSiteWafSettings'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListClientCaCertificates'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListManagedRulesGroups'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'RollbackEdgeContainerAppVersion'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreatePage'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListWaitingRoomRules'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateRecord'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeCustomScenePolicies'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetManagedTransform'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListWafPhases'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetOriginPool'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetImageTransform'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListWafUsageOfRules'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEdgeContainerApp'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListCiphers'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SetHttpDDoSAttackIntelligentProtection'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeHttpDDoSAttackProtection'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListSiteRoutes'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetPerformanceDataCollection'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetUserWafRuleset'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetHttpsBasicConfiguration'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateCacheRule'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListSiteOriginClientCertificates'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'OpenErService'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'VerifyCustomHostname'], ['threshold' => '1', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteRoutineRelatedRecord'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEdgeContainerLogs'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteRedirectRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateHttpsBasicConfiguration'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteUrlObservation'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateOriginRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListEdgeContainerRecords'], ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateOriginProtectionIpWhiteList'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetRewriteUrlRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateLoadBalancer'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateEdgeContainerAppResourceReserve'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEdgeContainerAppStatus'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateUserWafRuleset'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEdgeContainerTerminal'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteImageTransform'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListCacheReserveInstances'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateWafRule'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListCustomResponseCodeRules'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSeoBypass'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListRoutineRoutes'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteWafRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListScheduledPreloadJobs'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateWaitingRoom'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteHttpRequestHeaderModificationRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeSiteLogs'], ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateKvNamespace'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListSites'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteCacheRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListTransportLayerApplications'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteTransportLayerApplication'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdatePage'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateHttpResponseHeaderModificationRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteCertificate'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteOriginPool'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateWafRuleset'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetOriginProtection'], ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateOriginProtection'], ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetKeylessServer'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateRecord'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetList'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEdgeContainerAppVersion'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetOriginClientCertificate'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateSiteNameExclusive'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListEdgeRoutineRecords'], ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SetKeylessServer'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteRoutineRoute'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'BlockObject'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListNetworkOptimizations'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteClientCertificate'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateTieredCache'], ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateRoutineCodeDeployment'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetClientCertificate'], ['threshold' => '1', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteRoutine'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteNetworkOptimization'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetOriginRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateCacheTag'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetTieredCache'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateCompressionRule'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ApplyCustomHostnameCertificate'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteHttpIncomingResponseHeaderModificationRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListUrlObservations'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateSiteDeliveryTask'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteCustomHostname'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateUserDeliveryTask'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteSiteOriginClientCertificate'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateUserWafRuleset'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEdgeContainerStagingDeployStatus'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateCacheReserveSpec'], ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetKvNamespace'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'StopScheduledPreloadExecution'], ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeKvAccountStatus'], ['threshold' => '10', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeSiteTopData'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'VerifySite'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetUserLogDeliveryQuota'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListUserRatePlanInstances'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteEdgeContainerApp'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateHttpResponseHeaderModificationRule'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteOriginCaCertificate'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListUploadTasks'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SetDdosMaxBurstGbps'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateOriginPool'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateSiteDeliveryTaskStatus'], ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteOriginProtection'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeRatePlanInstanceStatus'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateSiteCustomLog'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetOriginCaCertificate'], ['threshold' => '100', 'countWindow' => 3600, 'regionId' => '*', 'api' => 'CreateSite'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateSeoBypass'], ['threshold' => '1', 'countWindow' => 1, 'regionId' => '*', 'api' => 'BatchDeleteKvWithHighCapacity'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteList'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListWafManagedRules'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdatePerformanceDataCollection'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSiteCurrentNS'], ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteEdgeContainerAppImageSecret'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetCertificate'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DisableCustomScenePolicy'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteHttpsBasicConfiguration'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEdgeContainerAppResourceStatus'], ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetKvAccount'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListHttpsApplicationConfigurations'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteHttpResponseHeaderModificationRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateNetworkOptimization'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteSiteDeliveryTask'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateRoutineConfigDescription'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListClientCertificates'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SetCertificate'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateWaitingRoom'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateClientCertificate'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UploadSiteOriginClientCertificate'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeDDoSBpsList'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteVideoProcessing'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateEdgeContainerAppLogRiver'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateHttpRequestHeaderModificationRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteRewriteUrlRule'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateHttpIncomingRequestHeaderModificationRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteUserDeliveryTask'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteWaitingRoomRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateWaitingRoomEvent'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteScheduledPreloadJob'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSiteNameExclusive'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetCacheRule'], ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListKeylessServers'], ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListEdgeContainerAppImageSecrets'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SetClientCertificateHostnames'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateOriginRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UploadClientCaCertificate'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListLoadBalancerRegions'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetAutomaticFrequencyControlConfig'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetUserDeliveryTask'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateHttpsBasicConfiguration'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListWafTemplateRules'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateManagedTransform'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateRewriteUrlRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SetAutomaticFrequencyControlConfig'], ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateEdgeContainerAppImageSecret'], ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetKv'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetTransportLayerApplication'], ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CommitRoutineStagingCode'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeHttpDDoSAttackIntelligentProtection'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeHttpDDoSAttackRules'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetCacheTag'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateRoutineRoute'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetDevelopmentMode'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateHttpIncomingRequestHeaderModificationRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListEdgeContainerAppVersions'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteEdgeContainerAppRecord'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'PreloadCaches'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetVideoProcessing'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ExportRecords'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetHttpResponseHeaderModificationRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UploadFile'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeHttpDDoSIntelligentRateLimitRules'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateIPv6'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteOriginClientCertificate'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListTagResources'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListRedirectRules'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'RebuildEdgeContainerAppStagingEnv'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateWaitingRoomRule'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetRoutineRoute'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSiteOriginClientCertificate'], ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateOriginProtection'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateRoutineRoute'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListHttpRequestHeaderModificationRules'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'BatchUpdateWafRules'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeDDoSAllEventList'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateHttpsApplicationConfiguration'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetRoutine'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateCustomResponseCodeRule'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateCustomScenePolicy'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateWafRuleset'], ['threshold' => '1', 'countWindow' => 1, 'regionId' => '*', 'api' => 'BatchPutKvWithHighCapacity'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateScheduledPreloadExecutions'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListImageTransforms'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateEdgeContainerAppRecord'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateList'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateScheduledPreloadExecution'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteHttpsApplicationConfiguration'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteUserWafRuleset'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'StartScheduledPreloadExecution'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribePurgeTasks'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateScheduledPreloadJob'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListLoadBalancers'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateVideoProcessing'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListHttpIncomingRequestHeaderModificationRules'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateSitePause'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateCacheRule'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListHttpIncomingResponseHeaderModificationRules'], ['threshold' => '1', 'countWindow' => 1, 'regionId' => '*', 'api' => 'BatchPutKv'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListRoutineCodeVersions'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetRecord'], ['threshold' => '50', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListDDoSInstances'], ['threshold' => '20', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SetOriginClientCertificateHostnames'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteWafRuleset'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'BatchCreateWafRules'], ], ], 'ram' => [ 'productCode' => 'ESA', 'productName' => 'Edge Security Acceleration', 'ramCodes' => ['esa'], 'ramLevel' => 'SERVICE', 'ramConditions' => [], 'ramActions' => [], 'resourceTypes' => [], ], ];