'1.0', 'info' => [ 'style' => 'RPC', 'product' => 'DdosDiversion', 'version' => '2023-07-01', ], 'directories' => [ 'ConfigNetStatus', 'ListInstance', 'QueryNetList', ], 'components' => [ 'schemas' => [], ], 'apis' => [ 'ConfigNetStatus' => [ 'summary' => 'Configures the advertising of a CIDR block.', 'methods' => [ 'post', 'get', ], 'schemes' => [ 'http', 'https', ], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'abilityTreeCode' => '186873', 'abilityTreeNodes' => [ 'FEATUREddosPJT0YW', ], 'autoTest' => false, 'notSupportAutoTestReason' => '代播API 涉及IP网段的路由配置,支持宣告/撤销等操作,需要客户真实网段操作,无法进行自动化调度与验证。', 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'SaleId', 'in' => 'query', 'schema' => [ 'description' => 'The ID of the anti-DDoS diversion instance.'."\n", 'type' => 'string', 'required' => true, 'example' => 'ddos_diversion_public_cn-xxxxxxxxxxxxx', ], ], [ 'name' => 'Net', 'in' => 'query', 'schema' => [ 'description' => 'The CIDR block of the anti-DDoS diversion instance.'."\n", 'type' => 'string', 'required' => true, 'example' => '192.168.XX.XX/22', 'enum' => [], ], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => [ 'description' => 'The status of the CIDR block. Valid values:'."\n" ."\n" .'* enable: advertises the CIDR block.'."\n" .'* disable: withdraws the advertising of the CIDR block.'."\n", 'type' => 'string', 'required' => true, 'example' => 'enable', 'enum' => [ 'enable', 'disable', ], ], ], [ 'name' => 'Regions', 'in' => 'query', 'style' => 'flat', 'schema' => [ 'description' => 'The regions in which the CIDR block needs to be advertised or withdrawn from advertising. If you leave this parameter empty, the CIDR blocks in all regions are configured.'."\n" ."\n" .'> You can call the [QueryNetList](~~2639086~~) operation to obtain the regions of the CIDR blocks.', 'type' => 'array', 'items' => [ 'description' => 'The region in which the CIDR block needs to be advertised or withdrawn from advertising.'."\n", 'type' => 'string', 'required' => false, 'example' => 'oe26', ], 'required' => false, ], ], [ 'name' => 'SubNets', 'in' => 'query', 'style' => 'flat', 'schema' => [ 'description' => 'The subnet CIDR blocks of the CIDR block.'."\n", 'type' => 'array', 'items' => [ 'description' => 'The subnet CIDR block of the CIDR block.'."\n", 'type' => 'string', 'required' => false, 'example' => '192.168.XX.XX/24', ], 'required' => false, ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => [ 'description' => 'The status code.'."\n" ."\n" .'* **200**: The request was successful.'."\n" .'* Other codes: The request failed.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '200', ], 'RequestId' => [ 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'B0949F09-B9C1-1D5E-8F27-0A5BF3CD5D95', ], 'Message' => [ 'description' => 'The response parameters.'."\n", 'type' => 'string', 'example' => 'successful', ], ], 'description' => '', ], ], ], 'errorCodes' => [ 400 => [ [ 'errorCode' => 'AuthenticationFailed', 'errorMessage' => 'User authentication failed.', ], [ 'errorCode' => 'AutoScheduleRuleExist', 'errorMessage' => 'The auto schedule rule already exists.', ], [ 'errorCode' => 'AutoScheduleRuleNotExist', 'errorMessage' => 'The auto schedule rule dose not exist.', ], [ 'errorCode' => 'BlackHoleConfigurationError', 'errorMessage' => 'A black hole configuration error occurred.', ], [ 'errorCode' => 'CleanConfigurationError', 'errorMessage' => 'A clean configuration error occurred.', ], [ 'errorCode' => 'CoveredNet', 'errorMessage' => 'The CIDR block is overwritten.', ], [ 'errorCode' => 'DatabaseError', 'errorMessage' => 'A database error.', ], [ 'errorCode' => 'DeclaredNet', 'errorMessage' => 'The CIDR block has been advertised.', ], [ 'errorCode' => 'DefenseConfigurationError', 'errorMessage' => 'A defense configuration error occurred.', ], [ 'errorCode' => 'ForwardConfigurationNotExist', 'errorMessage' => 'The CIDR block forwarding configuration is not found.', ], [ 'errorCode' => 'ForwardNotExist', 'errorMessage' => 'The CIDR block zone forwarding configuration is not found.', ], [ 'errorCode' => 'ForwardRuleNotExist', 'errorMessage' => 'The CIDR block forwarding rule is not found.', ], [ 'errorCode' => 'HttpFailed', 'errorMessage' => 'HTTP request failed.', ], [ 'errorCode' => 'IDNSubnetsCountLimit', 'errorMessage' => 'The maximum number of IDCs of the instance is exceeded.', ], [ 'errorCode' => 'InstanceExist', 'errorMessage' => 'The instance already exists.', ], [ 'errorCode' => 'InstanceNetConfigurationExist', 'errorMessage' => 'The instance CIDR block configuration already exists.', ], [ 'errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance is not found.', ], [ 'errorCode' => 'InstanceUpstreamLimit', 'errorMessage' => 'The maximum number of reinjection configurations for the instance is exceeded.', ], [ 'errorCode' => 'InternalError', 'errorMessage' => 'An internal error occurred.', ], [ 'errorCode' => 'InvalidNet', 'errorMessage' => 'Invalid CIDR block.', ], [ 'errorCode' => 'InvalidParam', 'errorMessage' => 'Invalid parameter value.', ], [ 'errorCode' => 'IPSubnetsCountLimit', 'errorMessage' => 'The maximum number of CIDR blocks of the instance is exceeded.', ], [ 'errorCode' => 'NetCannotExtend', 'errorMessage' => 'The CIDR block cannot be extended.', ], [ 'errorCode' => 'NetConfigurationExist', 'errorMessage' => 'The CIDR block configuration already exists.', ], [ 'errorCode' => 'NetConfigurationNotExist', 'errorMessage' => 'The CIDR block configuration is not found.', ], [ 'errorCode' => 'NetForwardDelete', 'errorMessage' => 'The CIDR block forwarding is being deleted.', ], [ 'errorCode' => 'NetMaskOutOfRange', 'errorMessage' => 'The subnet mask of the CIDR block is invalid.', ], [ 'errorCode' => 'NetNeedExtend', 'errorMessage' => 'The CIDR block needs to be extended.', ], [ 'errorCode' => 'NetStatusNotReady', 'errorMessage' => 'The CIDR block reinjection configuration has not been completed.', ], [ 'errorCode' => 'NetworkDeclearedFailed', 'errorMessage' => 'Failed to advertise the CIDR block.', ], [ 'errorCode' => 'NetWorkNotExist', 'errorMessage' => 'The CIDR block is not found.', ], [ 'errorCode' => 'NetworkUndeclearedFailed', 'errorMessage' => 'Failed to cancel the advertisement of the CIDR block.', ], [ 'errorCode' => 'ParameterNotEnough', 'errorMessage' => 'Required parameters are not specified.', ], [ 'errorCode' => 'ParameterOutOfRange', 'errorMessage' => 'Invalid parameter value.', ], [ 'errorCode' => 'RegionNotExist', 'errorMessage' => 'The region does not exist.', ], [ 'errorCode' => 'RequestMethodError', 'errorMessage' => 'An incorrect request method.', ], [ 'errorCode' => 'SubnetCountLimit', 'errorMessage' => 'The maximum number of subnets is exceeded.', ], [ 'errorCode' => 'UnKnownError', 'errorMessage' => 'An unknown error occurred.', ], [ 'errorCode' => 'UpsteamNotComplete', 'errorMessage' => 'The reinjection configuration has not been completed.', ], [ 'errorCode' => 'UpstreamConfigurationNotExist', 'errorMessage' => 'The reinjection configuration is not found.', ], [ 'errorCode' => 'JsonDecodeError', 'errorMessage' => 'JSON string decoding failed.', ], ], ], 'staticInfo' => [ 'returnType' => 'synchronous', ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"RequestId\\": \\"B0949F09-B9C1-1D5E-8F27-0A5BF3CD5D95\\",\\n \\"Message\\": \\"successful\\"\\n}","type":"json"}]', 'title' => 'ConfigNetStatus', ], 'ListInstance' => [ 'summary' => 'Queries anti-DDoS diversion instances.', 'methods' => [ 'post', 'get', ], 'schemes' => [ 'http', 'https', ], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'abilityTreeCode' => '186870', 'abilityTreeNodes' => [ 'FEATUREddos37DGH1', ], 'autoTest' => false, 'notSupportAutoTestReason' => '代播API 涉及IP网段的路由配置,支持宣告/撤销等操作,需要客户真实网段操作,无法进行自动化调度与验证。', 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'SaleId', 'in' => 'query', 'schema' => [ 'description' => 'The ID of the anti-DDoS diversion instance.', 'type' => 'string', 'required' => false, 'example' => 'ddos_diversion_public_cn-xxxxxxxxxxxxx', ], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => [ 'description' => 'The name of the instance.', 'type' => 'string', 'required' => false, 'example' => 'test', ], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => [ 'description' => 'The status of the instance. Valid values:'."\n" ."\n" .'- normal'."\n" .'- expired'."\n" .'- deleting'."\n" .'- stopped', 'type' => 'string', 'required' => false, 'example' => 'normal', ], ], [ 'name' => 'Page', 'in' => 'query', 'schema' => [ 'description' => 'The page number. Default value: 1.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'default' => '1', ], ], [ 'name' => 'Num', 'in' => 'query', 'schema' => [ 'description' => 'The number of entries per page. Default value: 100.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '100', 'default' => '100', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => [ 'description' => 'The status code.'."\n" ."\n" .'- 200: The request was successful.'."\n" .'- Other codes: The request failed.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', ], 'RequestId' => [ 'description' => 'The request ID.', 'type' => 'string', 'example' => 'B0949F09-B9C1-1D5E-8F27-0A5BF3CD5D95', ], 'Message' => [ 'description' => 'The response parameters.', 'type' => 'string', 'example' => 'successful', ], 'Data' => [ 'description' => 'The returned result.', 'type' => 'object', 'properties' => [ 'Total' => [ 'type' => 'integer', 'format' => 'int64', 'description' => 'The total number of entries returned.', 'example' => '10'."\n", ], 'Page' => [ 'type' => 'integer', 'format' => 'int64', 'description' => 'The page number.'."\n", 'example' => '1', ], 'Num' => [ 'type' => 'integer', 'format' => 'int64', 'description' => 'The number of entries per page.'."\n", 'example' => '100', ], 'Instances' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'UserId' => [ 'type' => 'string', 'description' => 'The user ID.', 'example' => '177xxxxxxxxxxxxx'."\n", ], 'SaleId' => [ 'type' => 'string', 'description' => 'The ID of the instance.', 'example' => 'ddos_diversion_public_cn-xxxxxxxxxxxxx'."\n", ], 'InstanceId' => [ 'type' => 'string', 'description' => 'The alias of the instance.', 'example' => 'ddos_diversion_public_cn-xxxxxxxxxxxxx_xxxxxx'."\n", ], 'Name' => [ 'type' => 'string', 'description' => 'The name of the instance.', 'example' => 'test', ], 'Status' => [ 'type' => 'string', 'description' => 'The status of the instance. Valid values:'."\n" ."\n" .'- normal'."\n" .'- expired'."\n" .'- deleting'."\n" .'- stopped', 'example' => 'normal'."\n", ], 'Comment' => [ 'type' => 'string', 'description' => 'The description.', 'example' => 'description', ], 'Message' => [ 'type' => 'string', 'description' => 'The configurations of the instance.', 'example' => 'successful'."\n", ], 'Spec' => [ 'type' => 'object', 'properties' => [ 'IdcNumbers' => [ 'type' => 'string', 'description' => 'The number of data centers. Valid values: 1 to 10.', 'example' => '1', ], 'NormalBandwidth' => [ 'type' => 'string', 'description' => 'The service traffic. Unit: Mbit/s.', 'example' => '100', ], 'IpSubnetNums' => [ 'type' => 'string', 'description' => 'The number of CIDR blocks. Value range: 1 to 10000.', 'example' => '1', ], 'Coverage' => [ 'type' => 'string', 'description' => 'The region of the asset.', 'example' => 'international_and_hmt'."\n", ], 'Edition' => [ 'type' => 'string', 'description' => 'The mitigation plan.', 'example' => 'enterprise'."\n", ], 'MitigationCapacity' => [ 'type' => 'string', 'description' => 'The maximum mitigation capability.', 'example' => 'unlimited'."\n", ], 'MitigationNums' => [ 'type' => 'string', 'description' => 'The number of mitigation sessions.', 'example' => 'unlimited'."\n", ], 'DiversionType' => [ 'type' => 'string', 'description' => 'The diversion mode. Valid values: on-demand always-on', 'example' => 'on-demand'."\n", ], 'MitigationAnalysis' => [ 'type' => 'string', 'description' => 'The mitigation analysis feature.', 'example' => 'off'."\n", ], 'MitigationAnalysisCapacity' => [ 'type' => 'string', 'description' => 'The log storage capacity.', 'example' => '3T', ], 'InitialInstallation' => [ 'type' => 'string', 'description' => 'The initial installation mode.', 'example' => 'gre_tunnel_by_pccw'."\n", ], 'InitialQty' => [ 'type' => 'string', 'description' => 'The initial installation quantity.', 'example' => '1', ], ], 'description' => 'The specifications of the instance.', ], 'GmtExpire' => [ 'type' => 'string', 'description' => 'The expiration time.', 'example' => '2023-02-23 00:00:00'."\n", ], 'GmtCreate' => [ 'type' => 'string', 'description' => 'The purchase time.', 'example' => '2022-12-15 11:10:42'."\n", ], 'GmtModify' => [ 'type' => 'string', 'description' => 'The update time.', 'example' => '2022-12-15 11:10:42'."\n", ], ], 'description' => 'The details of the anti-DDoS diversion instance.', ], 'description' => 'The details of the anti-DDoS diversion instance.', ], ], ], ], ], ], ], 'errorCodes' => [ 400 => [ [ 'errorCode' => 'AuthenticationFailed', 'errorMessage' => 'User authentication failed.', ], [ 'errorCode' => 'AutoScheduleRuleExist', 'errorMessage' => 'The auto schedule rule already exists.', ], [ 'errorCode' => 'AutoScheduleRuleNotExist', 'errorMessage' => 'The auto schedule rule dose not exist.', ], [ 'errorCode' => 'BlackHoleConfigurationError', 'errorMessage' => 'A black hole configuration error occurred.', ], [ 'errorCode' => 'CleanConfigurationError', 'errorMessage' => 'A clean configuration error occurred.', ], [ 'errorCode' => 'CoveredNet', 'errorMessage' => 'The CIDR block is overwritten.', ], [ 'errorCode' => 'DatabaseError', 'errorMessage' => 'A database error.', ], [ 'errorCode' => 'DeclaredNet', 'errorMessage' => 'The CIDR block has been advertised.', ], [ 'errorCode' => 'DefenseConfigurationError', 'errorMessage' => 'A defense configuration error occurred.', ], [ 'errorCode' => 'ForwardConfigurationNotExist', 'errorMessage' => 'The CIDR block forwarding configuration is not found.', ], [ 'errorCode' => 'ForwardNotExist', 'errorMessage' => 'The CIDR block zone forwarding configuration is not found.', ], [ 'errorCode' => 'ForwardRuleNotExist', 'errorMessage' => 'The CIDR block forwarding rule is not found.', ], [ 'errorCode' => 'HttpFailed', 'errorMessage' => 'HTTP request failed.', ], [ 'errorCode' => 'IDNSubnetsCountLimit', 'errorMessage' => 'The maximum number of IDCs of the instance is exceeded.', ], [ 'errorCode' => 'InstanceExist', 'errorMessage' => 'The instance already exists.', ], [ 'errorCode' => 'InstanceNetConfigurationExist', 'errorMessage' => 'The instance CIDR block configuration already exists.', ], [ 'errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance is not found.', ], [ 'errorCode' => 'InstanceUpstreamLimit', 'errorMessage' => 'The maximum number of reinjection configurations for the instance is exceeded.', ], [ 'errorCode' => 'InternalError', 'errorMessage' => 'An internal error occurred.', ], [ 'errorCode' => 'InvalidNet', 'errorMessage' => 'Invalid CIDR block.', ], [ 'errorCode' => 'InvalidParam', 'errorMessage' => 'Invalid parameter value.', ], [ 'errorCode' => 'IPSubnetsCountLimit', 'errorMessage' => 'The maximum number of CIDR blocks of the instance is exceeded.', ], [ 'errorCode' => 'NetCannotExtend', 'errorMessage' => 'The CIDR block cannot be extended.', ], [ 'errorCode' => 'NetConfigurationExist', 'errorMessage' => 'The CIDR block configuration already exists.', ], [ 'errorCode' => 'NetConfigurationNotExist', 'errorMessage' => 'The CIDR block configuration is not found.', ], [ 'errorCode' => 'NetForwardDelete', 'errorMessage' => 'The CIDR block forwarding is being deleted.', ], [ 'errorCode' => 'NetMaskOutOfRange', 'errorMessage' => 'The subnet mask of the CIDR block is invalid.', ], [ 'errorCode' => 'NetNeedExtend', 'errorMessage' => 'The CIDR block needs to be extended.', ], [ 'errorCode' => 'NetStatusNotReady', 'errorMessage' => 'The CIDR block reinjection configuration has not been completed.', ], [ 'errorCode' => 'NetworkDeclearedFailed', 'errorMessage' => 'Failed to advertise the CIDR block.', ], [ 'errorCode' => 'NetWorkNotExist', 'errorMessage' => 'The CIDR block is not found.', ], [ 'errorCode' => 'NetworkUndeclearedFailed', 'errorMessage' => 'Failed to cancel the advertisement of the CIDR block.', ], [ 'errorCode' => 'ParameterNotEnough', 'errorMessage' => 'Required parameters are not specified.', ], [ 'errorCode' => 'ParameterOutOfRange', 'errorMessage' => 'Invalid parameter value.', ], [ 'errorCode' => 'RegionNotExist', 'errorMessage' => 'The region does not exist.', ], [ 'errorCode' => 'RequestMethodError', 'errorMessage' => 'An incorrect request method.', ], [ 'errorCode' => 'SubnetCountLimit', 'errorMessage' => 'The maximum number of subnets is exceeded.', ], [ 'errorCode' => 'UnKnownError', 'errorMessage' => 'An unknown error occurred.', ], [ 'errorCode' => 'UpsteamNotComplete', 'errorMessage' => 'The reinjection configuration has not been completed.', ], [ 'errorCode' => 'UpstreamConfigurationNotExist', 'errorMessage' => 'The reinjection configuration is not found.', ], [ 'errorCode' => 'JsonDecodeError', 'errorMessage' => 'JSON string decoding failed.', ], ], ], 'staticInfo' => [ 'returnType' => 'synchronous', ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"RequestId\\": \\"B0949F09-B9C1-1D5E-8F27-0A5BF3CD5D95\\",\\n \\"Message\\": \\"successful\\",\\n \\"Data\\": {\\n \\"Total\\": 10,\\n \\"Page\\": 1,\\n \\"Num\\": 100,\\n \\"Instances\\": [\\n {\\n \\"UserId\\": \\"177xxxxxxxxxxxxx\\",\\n \\"SaleId\\": \\"ddos_diversion_public_cn-xxxxxxxxxxxxx\\",\\n \\"InstanceId\\": \\"ddos_diversion_public_cn-xxxxxxxxxxxxx_xxxxxx\\",\\n \\"Name\\": \\"测试实例。\\",\\n \\"Status\\": \\"normal\\",\\n \\"Comment\\": \\"测试实例。\\",\\n \\"Message\\": \\"successful\\",\\n \\"Spec\\": {\\n \\"IdcNumbers\\": \\"1\\",\\n \\"NormalBandwidth\\": \\"100\\",\\n \\"IpSubnetNums\\": \\"1\\",\\n \\"Coverage\\": \\"international_and_hmt\\",\\n \\"Edition\\": \\"enterprise\\",\\n \\"MitigationCapacity\\": \\"unlimited\\",\\n \\"MitigationNums\\": \\"unlimited\\",\\n \\"DiversionType\\": \\"on-demand\\",\\n \\"MitigationAnalysis\\": \\"off\\",\\n \\"MitigationAnalysisCapacity\\": \\"3T\\",\\n \\"InitialInstallation\\": \\"gre_tunnel_by_pccw\\",\\n \\"InitialQty\\": \\"1\\"\\n },\\n \\"GmtExpire\\": \\"2022-12-15 11:10:42\\",\\n \\"GmtCreate\\": \\"2022-12-15 11:10:42\\",\\n \\"GmtModify\\": \\"2022-12-15 11:10:42\\"\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'ListInstance', ], 'QueryNetList' => [ 'summary' => 'Queries the CIDR blocks of an anti-DDoS diversion instance.', 'methods' => [ 'post', 'get', ], 'schemes' => [ 'http', 'https', ], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'abilityTreeCode' => '186874', 'abilityTreeNodes' => [ 'FEATUREddosPJT0YW', ], 'autoTest' => false, 'notSupportAutoTestReason' => '代播API 涉及IP网段的路由配置,支持宣告/撤销等操作,需要客户真实网段操作,无法进行自动化调度与验证。', 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'SaleId', 'in' => 'query', 'schema' => [ 'description' => 'The ID of the anti-DDoS diversion instance.', 'type' => 'string', 'required' => false, 'example' => 'ddos_diversion_public_cn-xxxxxxxxxxxxx', ], ], [ 'name' => 'Net', 'in' => 'query', 'schema' => [ 'description' => 'The CIDR block of the anti-DDoS diversion instance.'."\n" ."\n" .'> If no extended CIDR blocks are configured for the anti-DDoS diversion instance, this parameter specifies the CIDR block of the instance. If an extended CIDR block is configured for the anti-DDoS diversion instance, this parameter specifies the extended CIDR block that is configured for the instance. If this parameter is specified, the MainNet parameter is required.'."\n", 'type' => 'string', 'required' => false, 'example' => '192.168.XX.XX/24', 'enum' => [], ], ], [ 'name' => 'Mode', 'in' => 'query', 'schema' => [ 'description' => 'The scheduling mode. Valid values:'."\n" ."\n" .'* manual: manual scheduling.'."\n" .'* netflow-auto: automatic scheduling.'."\n", 'type' => 'string', 'required' => false, 'enumValueTitles' => [ 'netflow-auto' => 'netflow-auto', 'manual' => 'manual', ], 'example' => 'netflow-auto', 'enum' => [ 'manual', 'netflow-auto', 'beaver-auto', ], ], ], [ 'name' => 'MainNet', 'in' => 'query', 'schema' => [ 'description' => 'The primary CIDR block of the anti-DDoS diversion instance for which an extended CIDR block is configured. If no extended CIDR blocks are configured for the anti-DDoS diversion instance, leave this parameter empty.', 'type' => 'string', 'required' => false, 'example' => '192.168.XX.XX/22', ], ], [ 'name' => 'Page', 'in' => 'query', 'schema' => [ 'description' => 'The page number. Default value: 1.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'default' => '1', ], ], [ 'name' => 'Num', 'in' => 'query', 'schema' => [ 'description' => 'The number of entries per page. Default value: 100.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '100', 'default' => '100', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => [ 'description' => 'The status code.'."\n" ."\n" .'- 200: The request was successful.'."\n" .'- Other codes: The request failed.', 'type' => 'integer', 'format' => 'int64', 'example' => '200', ], 'RequestId' => [ 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '24B652B5-AEFF-3F03-9114-00D053C42277', ], 'Message' => [ 'description' => 'The response parameters.', 'type' => 'string', 'example' => 'successful', ], 'Data' => [ 'description' => 'The CIDR blocks.'."\n", 'type' => 'object', 'properties' => [ 'Total' => [ 'description' => 'The total number of entries returned.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1', ], 'Page' => [ 'description' => 'The page number.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1', ], 'Num' => [ 'description' => 'The number of entries per page. Valid values: 1 to 100. Default value: 100.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '100'."\n", ], 'Nets' => [ 'description' => 'The CIDR blocks.'."\n", 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'UserId' => [ 'description' => 'The user ID.'."\n", 'type' => 'string', 'example' => '177xxxxxxxxxxxxx'."\n", ], 'SaleId' => [ 'description' => 'The ID of the anti-DDoS diversion instance.'."\n", 'type' => 'string', 'example' => 'ddos_diversion_public_cn-xxxxxxxxxxxxx', ], 'UpstreamType' => [ 'description' => 'The reinjection type. Valid values:'."\n" ."\n" .'* aliyun_line'."\n" .'* pccw_line'."\n" .'* gre_line'."\n" .'* private_line'."\n", 'type' => 'string', 'enumValueTitles' => [], 'example' => 'aliyun_line'."\n", ], 'Net' => [ 'description' => 'The CIDR block of the anti-DDoS diversion instance.'."\n", 'type' => 'string', 'example' => '192.168.XX.XX/24'."\n", ], 'NetType' => [ 'description' => 'The type of the CIDR block.'."\n", 'type' => 'string', 'example' => 'ipv4'."\n", ], 'Mode' => [ 'description' => 'The scheduling mode. Valid values:'."\n" ."\n" .'* netflow-auto'."\n" .'* manual'."\n", 'type' => 'string', 'enumValueTitles' => [], 'example' => 'manual'."\n", ], 'DeclaredState' => [ 'description' => 'The advertising status of the CIDR block. Valid values:'."\n" ."\n" .'* 0: The CIDR block is not advertised.'."\n" .'* 1: The CIDR block is advertised.'."\n", 'type' => 'integer', 'format' => 'int32', 'enumValueTitles' => [], 'example' => '1', ], 'Declared' => [ 'description' => 'The advertising details.'."\n", 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Region' => [ 'description' => 'The region in which the CIDR block is advertised. Valid values:'."\n" ."\n" .'* oe26: China (Hong Kong).'."\n" .'* us50: US (Virginia).'."\n" .'* oe24: US (Silicon Valley).'."\n" .'* oe28: Singapore.'."\n" .'* jp141: Japan (Tokyo).'."\n" .'* Gb145: UK (London).'."\n" .'* oi39: Germany (Frankfurt).'."\n", 'type' => 'string', 'example' => 'oe26'."\n", ], 'Declared' => [ 'description' => 'Indicates whether the CIDR block is advertised. Valid values:'."\n" ."\n" .'* 0: The CIDR block is not advertised.'."\n" .'* 1: The CIDR block is advertised.'."\n", 'type' => 'string', 'enumValueTitles' => [], 'example' => '0', ], ], 'description' => '', ], ], 'GmtCreate' => [ 'description' => 'The creation time.'."\n", 'type' => 'string', 'example' => '2023-02-23 00:00:00'."\n", ], 'GmtModify' => [ 'description' => 'The modification time.'."\n", 'type' => 'string', 'example' => '2023-02-24 00:00:00'."\n", ], 'NetExtend' => [ 'description' => 'Indicates whether the CIDR block needs to be extended. Valid values:'."\n" ."\n" .'* 0: The CIDR block does not need to be extended.'."\n" .'* 1: The CIDR block needs to be extended.'."\n", 'type' => 'string', 'enumValueTitles' => [], 'example' => '1', ], 'DDoSDefense' => [ 'description' => 'The DDoS mitigation configuration of the CIDR block.'."\n", 'type' => 'object', 'properties' => [ 'DjPolicy' => [ 'description' => 'The configuration of the mitigation policy.'."\n", 'type' => 'object', 'properties' => [ 'PolicyName' => [ 'description' => 'The name of the mitigation policy.'."\n", 'type' => 'string', 'example' => 'test_polilciy-xxx', ], ], ], 'CleanTh' => [ 'description' => 'The configuration of traffic scrubbing.'."\n", 'type' => 'object', 'properties' => [ 'Mbps' => [ 'description' => 'The traffic scrubbing threshold in Mbit/s.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '0', ], 'Pps' => [ 'description' => 'The traffic scrubbing threshold in packets per second (pps).'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '0', ], ], ], 'HoleTh' => [ 'description' => 'The configuration of blackhole filtering.'."\n", 'type' => 'object', 'properties' => [ 'ThreshMbps' => [ 'description' => 'The blackhole filtering threshold in Mbit/s. The value 0 indicates best-effort protection.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '0', ], ], ], ], ], 'FwdEffect' => [ 'description' => 'Indicates whether the forwarding configuration takes effect. Valid values:'."\n" ."\n" .'* 0: The forwarding configuration does not take effect.'."\n" .'* 1: The forwarding configuration takes effect.'."\n", 'type' => 'integer', 'format' => 'int64', 'enumValueTitles' => [], 'example' => '1', ], 'NetMain' => [ 'description' => 'The primary CIDR block of the anti-DDoS diversion instance for which an extended CIDR block is configured. If no extended CIDR blocks are configured for the anti-DDoS diversion instance, this parameter is left empty.'."\n", 'type' => 'string', 'example' => '192.168.XX.XX/22'."\n", ], 'Permit' => [ 'description' => 'The review status. Valid values:'."\n" ."\n" .'* 0: not reviewed.'."\n" .'* 1: reviewed.'."\n" .'* 2: under review.'."\n", 'type' => 'integer', 'format' => 'int32', 'enumValueTitles' => [], 'example' => '2', ], ], 'description' => '', ], ], ], ], ], 'description' => '', ], ], ], 'errorCodes' => [ 400 => [ [ 'errorCode' => 'AuthenticationFailed', 'errorMessage' => 'User authentication failed.', ], [ 'errorCode' => 'AutoScheduleRuleExist', 'errorMessage' => 'The auto schedule rule already exists.', ], [ 'errorCode' => 'AutoScheduleRuleNotExist', 'errorMessage' => 'The auto schedule rule dose not exist.', ], [ 'errorCode' => 'BlackHoleConfigurationError', 'errorMessage' => 'A black hole configuration error occurred.', ], [ 'errorCode' => 'CleanConfigurationError', 'errorMessage' => 'A clean configuration error occurred.', ], [ 'errorCode' => 'CoveredNet', 'errorMessage' => 'The CIDR block is overwritten.', ], [ 'errorCode' => 'DatabaseError', 'errorMessage' => 'A database error.', ], [ 'errorCode' => 'DeclaredNet', 'errorMessage' => 'The CIDR block has been advertised.', ], [ 'errorCode' => 'DefenseConfigurationError', 'errorMessage' => 'A defense configuration error occurred.', ], [ 'errorCode' => 'ForwardConfigurationNotExist', 'errorMessage' => 'The CIDR block forwarding configuration is not found.', ], [ 'errorCode' => 'ForwardNotExist', 'errorMessage' => 'The CIDR block zone forwarding configuration is not found.', ], [ 'errorCode' => 'ForwardRuleNotExist', 'errorMessage' => 'The CIDR block forwarding rule is not found.', ], [ 'errorCode' => 'HttpFailed', 'errorMessage' => 'HTTP request failed.', ], [ 'errorCode' => 'IDNSubnetsCountLimit', 'errorMessage' => 'The maximum number of IDCs of the instance is exceeded.', ], [ 'errorCode' => 'InstanceExist', 'errorMessage' => 'The instance already exists.', ], [ 'errorCode' => 'InstanceNetConfigurationExist', 'errorMessage' => 'The instance CIDR block configuration already exists.', ], [ 'errorCode' => 'InstanceNotExist', 'errorMessage' => 'The instance is not found.', ], [ 'errorCode' => 'InstanceUpstreamLimit', 'errorMessage' => 'The maximum number of reinjection configurations for the instance is exceeded.', ], [ 'errorCode' => 'InternalError', 'errorMessage' => 'An internal error occurred.', ], [ 'errorCode' => 'InvalidNet', 'errorMessage' => 'Invalid CIDR block.', ], [ 'errorCode' => 'InvalidParam', 'errorMessage' => 'Invalid parameter value.', ], [ 'errorCode' => 'IPSubnetsCountLimit', 'errorMessage' => 'The maximum number of CIDR blocks of the instance is exceeded.', ], [ 'errorCode' => 'NetCannotExtend', 'errorMessage' => 'The CIDR block cannot be extended.', ], [ 'errorCode' => 'NetConfigurationExist', 'errorMessage' => 'The CIDR block configuration already exists.', ], [ 'errorCode' => 'NetConfigurationNotExist', 'errorMessage' => 'The CIDR block configuration is not found.', ], [ 'errorCode' => 'NetForwardDelete', 'errorMessage' => 'The CIDR block forwarding is being deleted.', ], [ 'errorCode' => 'NetMaskOutOfRange', 'errorMessage' => 'The subnet mask of the CIDR block is invalid.', ], [ 'errorCode' => 'NetNeedExtend', 'errorMessage' => 'The CIDR block needs to be extended.', ], [ 'errorCode' => 'NetStatusNotReady', 'errorMessage' => 'The CIDR block reinjection configuration has not been completed.', ], [ 'errorCode' => 'NetworkDeclearedFailed', 'errorMessage' => 'Failed to advertise the CIDR block.', ], [ 'errorCode' => 'NetWorkNotExist', 'errorMessage' => 'The CIDR block is not found.', ], [ 'errorCode' => 'NetworkUndeclearedFailed', 'errorMessage' => 'Failed to cancel the advertisement of the CIDR block.', ], [ 'errorCode' => 'ParameterNotEnough', 'errorMessage' => 'Required parameters are not specified.', ], [ 'errorCode' => 'ParameterOutOfRange', 'errorMessage' => 'Invalid parameter value.', ], [ 'errorCode' => 'RegionNotExist', 'errorMessage' => 'The region does not exist.', ], [ 'errorCode' => 'RequestMethodError', 'errorMessage' => 'An incorrect request method.', ], [ 'errorCode' => 'SubnetCountLimit', 'errorMessage' => 'The maximum number of subnets is exceeded.', ], [ 'errorCode' => 'UnKnownError', 'errorMessage' => 'An unknown error occurred.', ], [ 'errorCode' => 'UpsteamNotComplete', 'errorMessage' => 'The reinjection configuration has not been completed.', ], [ 'errorCode' => 'UpstreamConfigurationNotExist', 'errorMessage' => 'The reinjection configuration is not found.', ], [ 'errorCode' => 'JsonDecodeError', 'errorMessage' => 'JSON string decoding failed.', ], ], ], 'staticInfo' => [ 'returnType' => 'synchronous', ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 200,\\n \\"RequestId\\": \\"24B652B5-AEFF-3F03-9114-00D053C42277\\",\\n \\"Message\\": \\"successful\\",\\n \\"Data\\": {\\n \\"Total\\": 10,\\n \\"Page\\": 1,\\n \\"Num\\": 100,\\n \\"Nets\\": [\\n {\\n \\"UserId\\": \\"57690941xxxxxxxx\\",\\n \\"SaleId\\": \\"ddos_diversion_public_cn-xxxxxxxxxxxxx\\",\\n \\"UpstreamType\\": \\"aliyun_line\\",\\n \\"Net\\": \\"192.168.XX.XX/24\\",\\n \\"NetType\\": \\"ipv4\\",\\n \\"Mode\\": \\"manual\\",\\n \\"DeclaredState\\": 0,\\n \\"Declared\\": [\\n {\\n \\"Region\\": \\"oe26\\",\\n \\"Declared\\": \\"0\\"\\n }\\n ],\\n \\"GmtCreate\\": \\"2024-09-05 13:52:50\\",\\n \\"GmtModify\\": \\"2024-09-05 13:59:55\\",\\n \\"NetExtend\\": \\"0\\",\\n \\"DDoSDefense\\": {\\n \\"DjPolicy\\": {\\n \\"PolicyName\\": \\"gf_origin_xxxxx\\"\\n },\\n \\"CleanTh\\": {\\n \\"Mbps\\": 0,\\n \\"Pps\\": 0\\n },\\n \\"HoleTh\\": {\\n \\"ThreshMbps\\": 0\\n }\\n },\\n \\"FwdEffect\\": 1,\\n \\"NetMain\\": \\"192.168.XX.XX/22\\",\\n \\"Permit\\": 2\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'QueryNetList', ], ], 'endpoints' => [ [ 'regionId' => 'cn-hongkong', 'endpoint' => 'ddosdiversion.cn-hongkong.aliyuncs.com', ], ], ];