'1.0', 'info' => ['style' => 'RPC', 'product' => 'hdr', 'version' => '2017-09-25'], 'directories' => [ [ 'children' => ['RegisterServers', 'UnregisterServer', 'DescribeServer', 'DescribeServers'], 'type' => 'directory', 'title' => 'Server management', ], [ 'children' => ['DescribeSitePairs', 'DescribeSite', 'DeleteSitePair', 'CreateSitePair', 'DescribeSitePair'], 'type' => 'directory', 'title' => 'Site pair management', ], [ 'children' => ['EnableReplication', 'DisableReplication', 'TestFailover', 'TestCleanup', 'DescribeRecoveryPoints', 'ChangeRecoveryPoint', 'CommitFailover', 'ForcedFailover'], 'type' => 'directory', 'title' => 'Failover', ], [ 'children' => ['TriggerReversedRegister', 'DescribeInfrastructures', 'ReversedEnableReplication', 'ReversedDisableReplication', 'Failback'], 'type' => 'directory', 'title' => 'Failback', ], [ 'children' => ['CreateRecoveryPlan', 'DeleteRecoveryPlan', 'DescribeRecoveryPlan', 'DescribeRecoveryPlans', 'UpdateRecoveryPlan'], 'type' => 'directory', 'title' => 'Recovery plan', ], [ 'children' => ['DescribeAvailableInstanceTypes', 'DescribeTask', 'DescribeTasks'], 'type' => 'directory', 'title' => 'Others', ], [ 'children' => ['DescribeSitePairStatistics', 'DescribeSummary'], 'type' => 'directory', 'title' => 'Others', ], ], 'components' => [ 'schemas' => [], ], 'apis' => [ 'ChangeRecoveryPoint' => [ 'summary' => 'Changes a recovery point.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrEJMNXE', 'FEATUREhdrKVSJIZ', 'FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], ], 'parameters' => [ [ 'name' => 'ServerId', 'in' => 'query', 'schema' => ['description' => 'ID of the protected server', 'type' => 'string', 'required' => false, 'example' => 'sr-000bak4sdet6gv8q0c2j', 'title' => ''], ], [ 'name' => 'RecoveryInstanceName', 'in' => 'query', 'schema' => ['description' => 'Name of the recovered instance', 'type' => 'string', 'required' => false, 'example' => 'HDR_Recovery-sr-000c9550g8gycc8oi4fb-cpr', 'title' => ''], ], [ 'name' => 'RecoveryCpu', 'in' => 'query', 'schema' => ['description' => 'Number of vCPUs for the recovered instance', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '4', 'title' => ''], ], [ 'name' => 'RecoveryMemory', 'in' => 'query', 'schema' => ['description' => 'Memory size (bytes) for the recovered instance', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '4294967296', 'title' => ''], ], [ 'name' => 'RecoveryInstanceType', 'in' => 'query', 'schema' => ['description' => 'Instance type of the recovered instance', 'type' => 'string', 'required' => false, 'example' => 'ecs.r6.3xlarge', 'title' => ''], ], [ 'name' => 'RecoveryUseSsd', 'in' => 'query', 'schema' => ['description' => 'Whether the recovered instance uses SSD storage', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'RecoveryUseEssd', 'in' => 'query', 'schema' => ['description' => 'Whether the recovered instance uses ESSD storage', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'RecoveryNetwork', 'in' => 'query', 'schema' => ['description' => 'VSwitch ID for the recovered instance', 'type' => 'string', 'required' => false, 'example' => 'vsw-uf61v3bg6r790ir22jqv4', 'title' => ''], ], [ 'name' => 'RecoveryReserveIp', 'in' => 'query', 'schema' => ['description' => 'Whether the recovered instance retains the source server\'s IP address', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'RecoveryUseDhcp', 'in' => 'query', 'schema' => ['description' => 'Whether the recovered instance uses DHCP to assign an IP address', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'RecoveryIpAddress', 'in' => 'query', 'schema' => ['description' => 'Manually specified IP address for the recovered instance', 'type' => 'string', 'required' => false, 'example' => '192.168.2.2', 'title' => ''], ], [ 'name' => 'RecoveryPostScriptType', 'in' => 'query', 'schema' => ['description' => 'Type of script to run after the recovered instance starts', 'type' => 'string', 'required' => false, 'example' => 'SHELL', 'title' => ''], ], [ 'name' => 'RecoveryPostScriptContent', 'in' => 'query', 'schema' => ['description' => 'Content of the script to run after the recovered instance starts', 'type' => 'string', 'required' => false, 'example' => 'echo \\"127.0.0.1 kubernetes.docker.internal\\" >> /etc/hosts', 'title' => ''], ], [ 'name' => 'RecoveryPointId', 'in' => 'query', 'schema' => ['description' => 'ID of the recovery point', 'type' => 'string', 'required' => false, 'example' => 'rp-0001625ljmig7ahibe0y', 'title' => ''], ], [ 'name' => 'RecoveryPointTime', 'in' => 'query', 'schema' => ['description' => 'Timestamp of the recovery point', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1637002799', 'title' => ''], ], [ 'name' => 'EipAddressId', 'in' => 'query', 'schema' => ['description' => 'Elastic Network Interface (ENI) ID attached to the recovered instance', 'type' => 'string', 'required' => false, 'example' => 'eip-2zelae2qye2ztjfj82f9z', 'title' => ''], ], [ 'name' => 'RecoveryEssdPerformanceLevel', 'in' => 'query', 'schema' => [ 'description' => 'Performance level (PL) of the ESSD disk. Valid PL levels depend on the minimum disk size.', 'type' => 'string', 'default' => 'PL1', 'enum' => ['PL0', 'PL1', 'PL2', 'PL3'], 'required' => false, 'example' => 'PL1', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'Error code', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'Error message', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'RequestId' => ['description' => 'Request ID', 'type' => 'string', 'example' => 'BBCC4082-98DF-5804-96C6-0E74C37C5867', 'title' => ''], 'TaskId' => ['description' => 'Task ID', 'type' => 'string', 'example' => 't-0007wl5r0hvxrj68rrbg', 'title' => ''], 'Success' => ['description' => 'Indicates whether the operation succeeded', 'type' => 'boolean', 'example' => 'True', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"BBCC4082-98DF-5804-96C6-0E74C37C5867\\",\\n \\"TaskId\\": \\"t-0007wl5r0hvxrj68rrbg\\",\\n \\"Success\\": true\\n}","type":"json"}]', 'title' => 'Change the recovery point', 'changeSet' => [ ['createdAt' => '2024-01-09T05:42:17.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-01-09T06:59:39.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-03-03T07:59:07.000Z', 'description' => 'Request parameters changed, Error codes changed'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:ChangeRecoveryPoint', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'ChangeRecoveryPoint'], ], ], ], 'CommitFailover' => [ 'summary' => 'Confirm the failover.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrKVSJIZ', 'FEATUREhdrEJMNXE', 'FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], ], 'parameters' => [ [ 'name' => 'ServerId', 'in' => 'query', 'schema' => ['description' => 'The ID of the protected server.', 'type' => 'string', 'required' => false, 'example' => 'sr-000bzkmmlwghq3soqry2', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'Error code.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'Error message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'RequestId' => ['description' => 'Request ID.', 'type' => 'string', 'example' => '18603D03-FEA4-5FA8-878F-B03F11578F5F', 'title' => ''], 'TaskId' => ['description' => 'Task ID.', 'type' => 'string', 'example' => 't-0007wl5r0hvxrj68rrbg', 'title' => ''], 'Success' => ['description' => 'Indicates whether the operation was successful.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"18603D03-FEA4-5FA8-878F-B03F11578F5F\\",\\n \\"TaskId\\": \\"t-0007wl5r0hvxrj68rrbg\\",\\n \\"Success\\": true\\n}","type":"json"}]', 'title' => 'Confirm failover', 'changeSet' => [ ['createdAt' => '2024-01-09T05:42:18.000Z', 'description' => 'Error codes changed'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:CommitFailover', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'CommitFailover'], ], ], ], 'CreateRecoveryPlan' => [ 'summary' => 'Creates a recovery plan.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrEJMNXE', 'FEATUREhdrKVSJIZ', 'FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], ], 'parameters' => [ [ 'name' => 'SitePairId', 'in' => 'query', 'schema' => ['description' => 'The site pair ID.', 'type' => 'string', 'required' => false, 'example' => 's-xxxxxxxxxxxxxxxxxx', 'title' => ''], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The recovery plan name.', 'type' => 'string', 'required' => false, 'example' => 'test1', 'title' => ''], ], [ 'name' => 'Direction', 'in' => 'query', 'schema' => ['description' => 'The direction of the recovery plan. Supports **forward**.', 'type' => 'string', 'required' => false, 'example' => 'forward', 'title' => ''], ], [ 'name' => 'Content', 'in' => 'query', 'schema' => ['description' => 'The recovery plan details.', 'type' => 'string', 'required' => false, 'example' => '{'."\n" .' "groups": ['."\n" .' {'."\n" .' "name": "Group-1",'."\n" .' "id": "Group-1",'."\n" .' "servers": ['."\n" .' {'."\n" .' "name": "sr-xxxxxxxxxxxxxxxxxx",'."\n" .' "serverId": "sr-xxxxxxxxxxxxxxxxxx",'."\n" .' "testFailoverAction": {'."\n" .' "eipAddressId": "",'."\n" .' "recoveryPostScriptContent": "",'."\n" .' "recoveryPostScriptType": "POWERSHELL",'."\n" .' "recoveryInstanceName": "HDR_Recovery-sr-xxxxxxxxxxxxxxxxxx-tfo",'."\n" .' "recoveryCpu": 2,'."\n" .' "recoveryMemory": 4294967296,'."\n" .' "recoveryUseEssd": false,'."\n" .' "recoveryUseSsd": false,'."\n" .' "recoveryReserveIp": false,'."\n" .' "recoveryUseDhcp": true,'."\n" .' "recoveryIpAddress": "",'."\n" .' "recoveryNetwork": "vsw-xxxxxxxxxxxxxxxxxx"'."\n" .' },'."\n" .' "testCleanupAction": {},'."\n" .' "changeRecoveryPointAction": {'."\n" .' "eipAddressId": "",'."\n" .' "recoveryPostScriptContent": "",'."\n" .' "recoveryPostScriptType": "POWERSHELL",'."\n" .' "recoveryInstanceName": "HDR_Recovery-sr-xxxxxxxxxxxxxxxxxx-cpr",'."\n" .' "recoveryCpu": 2,'."\n" .' "recoveryMemory": 4294967296,'."\n" .' "recoveryUseEssd": false,'."\n" .' "recoveryUseSsd": false,'."\n" .' "recoveryReserveIp": false,'."\n" .' "recoveryUseDhcp": true,'."\n" .' "recoveryIpAddress": "",'."\n" .' "recoveryNetwork": "vsw-xxxxxxxxxxxxxxxxxx"'."\n" .' },'."\n" .' "forcedFailoverAction": {'."\n" .' "eipAddressId": "",'."\n" .' "recoveryPostScriptContent": "",'."\n" .' "recoveryPostScriptType": "POWERSHELL",'."\n" .' "recoveryInstanceName": "HDR_Recovery-sr-xxxxxxxxxxxxxxxxxx-ffo",'."\n" .' "recoveryCpu": 2,'."\n" .' "recoveryMemory": 4294967296,'."\n" .' "recoveryUseEssd": false,'."\n" .' "recoveryUseSsd": false,'."\n" .' "recoveryReserveIp": false,'."\n" .' "recoveryUseDhcp": true,'."\n" .' "recoveryIpAddress": "",'."\n" .' "recoveryNetwork": "vsw-xxxxxxxxxxxxxxxxxx"'."\n" .' }'."\n" .' }'."\n" .' ]'."\n" .' }'."\n" .' ]'."\n" .'}', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'The return code.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'The return message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'FEC3D491-15BB-5C8F-902E-773794FF1B29', 'title' => ''], 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 't-00055g8sxr0ys0g99n83', 'title' => ''], 'Success' => ['description' => 'Indicates whether the operation succeeded.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"FEC3D491-15BB-5C8F-902E-773794FF1B29\\",\\n \\"TaskId\\": \\"t-00055g8sxr0ys0g99n83\\",\\n \\"Success\\": true\\n}","type":"json"}]', 'title' => 'Create a recovery plan', 'changeSet' => [ ['createdAt' => '2024-01-09T05:42:17.000Z', 'description' => 'Response parameters changed'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'hdr:CreateRecoveryPlan', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'CreateRecoveryPlan'], ], ], ], 'CreateSitePair' => [ 'summary' => 'Creates a disaster recovery site pair.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrEJMNXE', 'FEATUREhdrKVSJIZ', 'FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], ], 'parameters' => [ [ 'name' => 'SitePairType', 'in' => 'query', 'schema' => [ 'description' => 'The type of the site pair.', 'enumValueTitles' => ['cloud2cloud' => 'cloud2cloud', 'zone2zone' => 'zone2zone'], 'type' => 'string', 'required' => false, 'example' => 'cloud2cloud', 'title' => '', ], ], [ 'name' => 'PrimarySiteName', 'in' => 'query', 'schema' => ['description' => 'The name of the primary site.', 'type' => 'string', 'required' => false, 'example' => '杭州可用区G', 'title' => ''], ], [ 'name' => 'PrimarySiteType', 'in' => 'query', 'schema' => ['description' => 'The type of the primary site.', 'type' => 'string', 'required' => false, 'example' => 'cloud', 'title' => ''], ], [ 'name' => 'PrimarySiteRegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the primary site.', 'type' => 'string', 'required' => false, 'example' => 'cn-shanghai', 'title' => ''], ], [ 'name' => 'PrimarySiteVpcId', 'in' => 'query', 'schema' => ['description' => 'The virtual private cloud (VPC) ID of the primary site.', 'type' => 'string', 'required' => false, 'example' => 'vpc-uf6j3rao8wkr7hb4uopv2', 'title' => ''], ], [ 'name' => 'PrimarySiteZoneId', 'in' => 'query', 'schema' => ['description' => 'The zone ID of the primary site. This parameter is valid only when the site pair type is cross-zone disaster recovery.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-g', 'title' => ''], ], [ 'name' => 'SecondarySiteName', 'in' => 'query', 'schema' => ['description' => 'The name of the secondary site.', 'type' => 'string', 'required' => false, 'example' => '杭州可用区F', 'title' => ''], ], [ 'name' => 'SecondarySiteType', 'in' => 'query', 'schema' => ['description' => 'The type of the secondary site.', 'type' => 'string', 'required' => false, 'example' => 'cloud', 'title' => ''], ], [ 'name' => 'SecondarySiteRegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the secondary site.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'SecondarySiteVpcId', 'in' => 'query', 'schema' => ['description' => 'The VPC ID of the secondary site.', 'type' => 'string', 'required' => false, 'example' => 'vpc-bp1wu55gbyqd7gh3yu3ey', 'title' => ''], ], [ 'name' => 'SecondarySiteZoneId', 'in' => 'query', 'schema' => ['description' => 'The zone ID of the secondary site. This parameter is valid only when the site pair type is cross-zone disaster recovery.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-i', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'D14F1EB0-30B7-5A38-92E7-C2D11077D5CA', 'title' => ''], 'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], 'Code' => ['description' => 'The return code.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'The error message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'SitePairId' => ['description' => 'The site pair ID.', 'type' => 'string', 'example' => 's-000bvn4shsuhq4cph5i8', 'title' => ''], 'SecondarySiteId' => ['description' => 'The ID of the secondary site.', 'type' => 'string', 'example' => 'si-000imvpcegvbh6i5kd2u', 'title' => ''], 'PrimarySiteId' => ['description' => 'The ID of the primary site.', 'type' => 'string', 'example' => 'si-0001jntih0phb0i2w1ya', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"D14F1EB0-30B7-5A38-92E7-C2D11077D5CA\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"SitePairId\\": \\"s-000bvn4shsuhq4cph5i8\\",\\n \\"SecondarySiteId\\": \\"si-000imvpcegvbh6i5kd2u\\",\\n \\"PrimarySiteId\\": \\"si-0001jntih0phb0i2w1ya\\"\\n}","type":"json"}]', 'title' => 'Create a site pair', 'changeSet' => [ ['createdAt' => '2022-03-03T07:59:07.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2022-03-02T02:04:10.000Z', 'description' => 'Error codes changed'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'hdr:CreateSitePair', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'CreateSitePair'], ], ], ], 'DeleteRecoveryPlan' => [ 'summary' => 'Delete a recovery plan by its ID.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrEJMNXE', 'FEATUREhdrKVSJIZ', 'FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], ], 'parameters' => [ [ 'name' => 'RecoveryPlanId', 'in' => 'query', 'schema' => ['description' => 'The ID of the recovery plan.', 'type' => 'string', 'required' => false, 'example' => 'rp-xxxxxxxxxxxxxxxx', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'The return code.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '36C9E5CF-D575-5074-9A3E-79251448D708', 'title' => ''], 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 't-0006ezqwy1swxqgcrfvx', 'title' => ''], 'Success' => ['description' => 'Indicates whether the request succeeded.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"36C9E5CF-D575-5074-9A3E-79251448D708\\",\\n \\"TaskId\\": \\"t-0006ezqwy1swxqgcrfvx\\",\\n \\"Success\\": true\\n}","type":"json"}]', 'title' => 'Delete Recovery Plan', 'changeSet' => [ ['createdAt' => '2024-01-09T06:12:19.000Z', 'description' => 'Response parameters changed'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'hdr:DeleteRecoveryPlan', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DeleteRecoveryPlan'], ], ], ], 'DeleteSitePair' => [ 'summary' => 'Deletes a site pair.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrEJMNXE', 'FEATUREhdrKVSJIZ', 'FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], ], 'parameters' => [ [ 'name' => 'SitePairId', 'in' => 'query', 'schema' => ['description' => 'ID of the site pair.', 'type' => 'string', 'required' => true, 'example' => 's-0003obqyc8f8a6u3bfw4', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'Error code.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'Error message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'RequestId' => ['description' => 'Request ID.', 'type' => 'string', 'example' => '26365F46-16D9-5A56-B1EF-62D12C04E071', 'title' => ''], 'Success' => ['description' => 'Indicates whether the request succeeded.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"26365F46-16D9-5A56-B1EF-62D12C04E071\\",\\n \\"Success\\": true\\n}","type":"json"}]', 'title' => 'Delete a site pair', 'changeSet' => [ ['createdAt' => '2022-03-02T02:04:10.000Z', 'description' => 'Error codes changed'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'hdr:DeleteSitePair', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DeleteSitePair'], ], ], ], 'DescribeAvailableInstanceTypes' => [ 'summary' => 'Queries the available instance types for scenarios such as disaster recovery drills, failovers, and failbacks.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrEJMNXE', 'FEATUREhdrKVSJIZ', 'FEATUREhdrF01CKY', 'FEATUREhdrE49XN0'], ], 'parameters' => [ [ 'name' => 'Region', 'in' => 'query', 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai', 'title' => ''], ], [ 'name' => 'ZoneId', 'in' => 'query', 'schema' => ['description' => 'The zone ID.', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing-g', 'title' => ''], ], [ 'name' => 'DiskType', 'in' => 'query', 'schema' => [ 'description' => 'The disk type.', 'enumValueTitles' => ['cloud_efficiency,cloud_essd,cloud_ssd' => 'cloud\\_efficiency,cloud\\_essd,cloud\\_ssd'], 'type' => 'string', 'required' => true, 'example' => 'cloud_efficiency', 'title' => '', ], ], [ 'name' => 'ChargeType', 'in' => 'query', 'schema' => [ 'description' => 'The billing method.', 'enumValueTitles' => ['PostPaid' => 'PostPaid', 'PrePaid' => 'PrePaid'], 'type' => 'string', 'required' => false, 'default' => 'PostPaid', 'enum' => ['PostPaid', 'PrePaid'], 'example' => 'PostPaid', 'title' => '', ], ], [ 'name' => 'Network', 'in' => 'query', 'schema' => [ 'description' => 'The network type.', 'enumValueTitles' => ['classic' => 'classic', 'vpc' => 'vpc'], 'type' => 'string', 'required' => false, 'default' => 'vpc', 'example' => 'vpc', 'title' => '', ], ], [ 'name' => 'IoOptimized', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the instance is I/O optimized.', 'type' => 'boolean', 'required' => false, 'default' => 'true', 'example' => 'true', 'title' => ''], ], [ 'name' => 'SortBy', 'in' => 'query', 'schema' => [ 'description' => 'The field to sort by.', 'enumValueTitles' => ['memory' => 'memory', 'vcpu' => 'vcpu'], 'type' => 'string', 'required' => false, 'default' => 'network', 'example' => 'vcpu', 'title' => '', ], ], [ 'name' => 'Order', 'in' => 'query', 'schema' => [ 'description' => 'The sort order.', 'enumValueTitles' => ['asc' => 'asc', 'desc' => 'desc'], 'type' => 'string', 'required' => false, 'default' => 'desc', 'enum' => ['asc', 'desc'], 'example' => 'asc', 'title' => '', ], ], [ 'name' => 'Filter', 'in' => 'query', 'schema' => ['description' => 'The filter expression for the query. Separate multiple expressions with semicolons (;). An expression consists of a key, an operator, and a value.'."\n" ."\n" .'The supported keys are:'."\n" ."\n" .'- vcpu: The number of vCPUs of the instance type.'."\n" ."\n" .'- memory: The memory size of the instance type.'."\n" ."\n" .'The supported operators include <, <=, >, >=, and =. The value must be an integer.', 'type' => 'string', 'required' => false, 'example' => 'vcpu>=2;vcpu<16;memory>=4;', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '10', 'example' => '10', 'title' => ''], ], [ 'name' => 'UserClient', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to use your user role to query for available instance types. By default, the query is performed using the Hybrid Disaster Recovery service account. You must set this parameter to true to find certain instance types that are on a whitelist.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '1A7577E8-755A-5BF5-A6BA-B87286D0743F', 'title' => ''], 'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], 'Code' => ['description' => 'The response code.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of instances found.', 'type' => 'integer', 'format' => 'int32', 'example' => '11', 'title' => ''], 'InstanceTypes' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'instanceType' => [ 'description' => 'A list of available instance types.', 'type' => 'array', 'items' => ['description' => 'An available instance type.', 'type' => 'string', 'example' => 'ecs.g5ne.xlarge', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A7577E8-755A-5BF5-A6BA-B87286D0743F\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 11,\\n \\"InstanceTypes\\": {\\n \\"instanceType\\": [\\n \\"ecs.g5ne.xlarge\\"\\n ]\\n }\\n}","type":"json"}]', 'title' => 'Query Available Instance Types', 'changeSet' => [ ['createdAt' => '2022-03-03T07:59:07.000Z', 'description' => 'Request parameters changed'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'hdr:DescribeAvailableInstanceTypes', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeAvailableInstanceTypes'], ], ], ], 'DescribeInfrastructures' => [ 'summary' => 'Queries infrastructure information for a site. Hybrid Disaster Recovery supports disaster recovery across multiple scenarios, such as IDC-to-cloud, cross-region, and cross-zone disaster recovery. Infrastructure varies by scenario. For example, in IDC-to-cloud disaster recovery, the source site may use physical servers or VMware vCenter. In cross-region and cross-zone disaster recovery, Alibaba Cloud serves as the primary infrastructure.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrEJMNXE', 'FEATUREhdrKVSJIZ'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'Site ID', 'type' => 'string', 'required' => false, 'example' => 'si-0005btelnqjwguycypba', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'Page number of the current page', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'Number of entries per page', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '10', 'example' => '10', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'Request ID', 'type' => 'string', 'example' => '32AC7E7F-5484-548D-8D3F-905238B75080', 'title' => ''], 'Success' => ['description' => 'Indicates whether the call succeeded', 'type' => 'boolean', 'example' => 'True', 'title' => ''], 'Code' => ['description' => 'Status code', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'Error message', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'PageSize' => ['description' => 'Number of entries per page', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'PageNumber' => ['description' => 'Page number of the current page', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'TotalCount' => ['description' => 'Total number of entries', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Infrastructures' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'infrastructure' => [ 'description' => 'List of infrastructure entries', 'type' => 'array', 'items' => [ 'description' => 'Information about the infrastructure', 'type' => 'object', 'properties' => [ 'Type' => ['description' => 'Infrastructure type', 'type' => 'string', 'example' => 'aliyun', 'title' => ''], 'Status' => ['description' => 'Status', 'type' => 'string', 'example' => 'connected', 'title' => ''], 'IpAddress' => ['description' => 'IP address', 'type' => 'string', 'example' => '172.18.122.66', 'title' => ''], 'InfrastructureId' => ['description' => 'Infrastructure ID', 'type' => 'string', 'example' => 'is-0005qxusucbig0c42dlo', 'title' => ''], 'Errno' => ['description' => 'Reason for abnormal status', 'type' => 'string', 'example' => 'cdr.console.plugin.failed_to_connect', 'title' => ''], 'Name' => ['description' => 'Infrastructure name', 'type' => 'string', 'example' => 'si-0006w0mxd3w8jiifu77l-infrastructure1', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"32AC7E7F-5484-548D-8D3F-905238B75080\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 2,\\n \\"TotalCount\\": 1,\\n \\"Infrastructures\\": {\\n \\"infrastructure\\": [\\n {\\n \\"Type\\": \\"aliyun\\",\\n \\"Status\\": \\"connected\\",\\n \\"IpAddress\\": \\"172.18.122.66\\",\\n \\"InfrastructureId\\": \\"is-0005qxusucbig0c42dlo\\",\\n \\"Errno\\": \\"cdr.console.plugin.failed_to_connect\\",\\n \\"Name\\": \\"si-0006w0mxd3w8jiifu77l-infrastructure1\\"\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'Query site infrastructure ', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'hdr:DescribeInfrastructures', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeInfrastructures'], ], ], ], 'DescribeRecoveryPlan' => [ 'summary' => 'Query the details of a recovery plan.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrEJMNXE', 'FEATUREhdrKVSJIZ', 'FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], ], 'parameters' => [ [ 'name' => 'RecoveryPlanId', 'in' => 'query', 'schema' => ['description' => 'The ID of the recovery plan.', 'type' => 'string', 'required' => false, 'example' => 'rp-xxxxxxxxxxxxxxxxxx', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status of the recovery plan. Valid values:'."\n" ."\n" .'- **creating**: The plan is being created.'."\n" ."\n" .'- **updating**: The plan is being updated.'."\n" ."\n" .'- **deleting**: The plan is being deleted.'."\n" ."\n" .'- **failed**: The plan failed.'."\n" ."\n" .'- **init**: The plan is initialized.'."\n" ."\n" .'- **running**: The plan is running.', 'type' => 'string', 'example' => 'init', 'title' => ''], 'Direction' => ['description' => 'The direction of the recovery plan. Only **forward** is supported.', 'type' => 'string', 'example' => 'forward', 'title' => ''], 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '6F3884EC-AECB-52EF-AFE3-BC13A9688DEB', 'title' => ''], 'Success' => ['description' => 'Indicates whether the call succeeded.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], 'Code' => ['description' => 'The return code.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'Name' => ['description' => 'The name of the recovery plan.', 'type' => 'string', 'example' => 'test', 'title' => ''], 'Content' => ['description' => 'The details of the recovery plan.', 'type' => 'string', 'example' => '{'."\n" .' "groups": ['."\n" .' {'."\n" .' "name": "Group-1",'."\n" .' "id": "Group-1",'."\n" .' "servers": ['."\n" .' {'."\n" .' "name": "sr-xxxxxxxxxxxxxxxxxx",'."\n" .' "serverId": "sr-xxxxxxxxxxxxxxxxxx",'."\n" .' "testFailoverAction": {'."\n" .' "eipAddressId": "",'."\n" .' "recoveryPostScriptContent": "",'."\n" .' "recoveryPostScriptType": "POWERSHELL",'."\n" .' "recoveryInstanceName": "HDR_Recovery-sr-xxxxxxxxxxxxxxxxxx-tfo",'."\n" .' "recoveryCpu": 2,'."\n" .' "recoveryMemory": 4294967296,'."\n" .' "recoveryUseEssd": false,'."\n" .' "recoveryUseSsd": false,'."\n" .' "recoveryReserveIp": false,'."\n" .' "recoveryUseDhcp": true,'."\n" .' "recoveryIpAddress": "",'."\n" .' "recoveryNetwork": "vsw-xxxxxxxxxxxxxxxxxx"'."\n" .' },'."\n" .' "testCleanupAction": {},'."\n" .' "changeRecoveryPointAction": {'."\n" .' "eipAddressId": "",'."\n" .' "recoveryPostScriptContent": "",'."\n" .' "recoveryPostScriptType": "POWERSHELL",'."\n" .' "recoveryInstanceName": "HDR_Recovery-sr-xxxxxxxxxxxxxxxxxx-cpr",'."\n" .' "recoveryCpu": 2,'."\n" .' "recoveryMemory": 4294967296,'."\n" .' "recoveryUseEssd": false,'."\n" .' "recoveryUseSsd": false,'."\n" .' "recoveryReserveIp": false,'."\n" .' "recoveryUseDhcp": true,'."\n" .' "recoveryIpAddress": "",'."\n" .' "recoveryNetwork": "vsw-xxxxxxxxxxxxxxxxxx"'."\n" .' },'."\n" .' "forcedFailoverAction": {'."\n" .' "eipAddressId": "",'."\n" .' "recoveryPostScriptContent": "",'."\n" .' "recoveryPostScriptType": "POWERSHELL",'."\n" .' "recoveryInstanceName": "HDR_Recovery-sr-xxxxxxxxxxxxxxxxxx-ffo",'."\n" .' "recoveryCpu": 2,'."\n" .' "recoveryMemory": 4294967296,'."\n" .' "recoveryUseEssd": false,'."\n" .' "recoveryUseSsd": false,'."\n" .' "recoveryReserveIp": false,'."\n" .' "recoveryUseDhcp": true,'."\n" .' "recoveryIpAddress": "",'."\n" .' "recoveryNetwork": "vsw-xxxxxxxxxxxxxxxxxx"'."\n" .' }'."\n" .' }'."\n" .' ]'."\n" .' }'."\n" .' ]'."\n" .'}', 'title' => ''], 'RecoveryPlanId' => ['description' => 'The ID of the recovery plan.', 'type' => 'string', 'example' => 'rp-xxxxxxxxxxxxxxxxxx', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Status\\": \\"init\\",\\n \\"Direction\\": \\"forward\\",\\n \\"RequestId\\": \\"6F3884EC-AECB-52EF-AFE3-BC13A9688DEB\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"Name\\": \\"test\\",\\n \\"Content\\": \\"{\\\\n \\\\\\"groups\\\\\\": [\\\\n {\\\\n \\\\\\"name\\\\\\": \\\\\\"Group-1\\\\\\",\\\\n \\\\\\"id\\\\\\": \\\\\\"Group-1\\\\\\",\\\\n \\\\\\"servers\\\\\\": [\\\\n {\\\\n \\\\\\"name\\\\\\": \\\\\\"sr-xxxxxxxxxxxxxxxxxx\\\\\\",\\\\n \\\\\\"serverId\\\\\\": \\\\\\"sr-xxxxxxxxxxxxxxxxxx\\\\\\",\\\\n \\\\\\"testFailoverAction\\\\\\": {\\\\n \\\\\\"eipAddressId\\\\\\": \\\\\\"\\\\\\",\\\\n \\\\\\"recoveryPostScriptContent\\\\\\": \\\\\\"\\\\\\",\\\\n \\\\\\"recoveryPostScriptType\\\\\\": \\\\\\"POWERSHELL\\\\\\",\\\\n \\\\\\"recoveryInstanceName\\\\\\": \\\\\\"HDR_Recovery-sr-xxxxxxxxxxxxxxxxxx-tfo\\\\\\",\\\\n \\\\\\"recoveryCpu\\\\\\": 2,\\\\n \\\\\\"recoveryMemory\\\\\\": 4294967296,\\\\n \\\\\\"recoveryUseEssd\\\\\\": false,\\\\n \\\\\\"recoveryUseSsd\\\\\\": false,\\\\n \\\\\\"recoveryReserveIp\\\\\\": false,\\\\n \\\\\\"recoveryUseDhcp\\\\\\": true,\\\\n \\\\\\"recoveryIpAddress\\\\\\": \\\\\\"\\\\\\",\\\\n \\\\\\"recoveryNetwork\\\\\\": \\\\\\"vsw-xxxxxxxxxxxxxxxxxx\\\\\\"\\\\n },\\\\n \\\\\\"testCleanupAction\\\\\\": {},\\\\n \\\\\\"changeRecoveryPointAction\\\\\\": {\\\\n \\\\\\"eipAddressId\\\\\\": \\\\\\"\\\\\\",\\\\n \\\\\\"recoveryPostScriptContent\\\\\\": \\\\\\"\\\\\\",\\\\n \\\\\\"recoveryPostScriptType\\\\\\": \\\\\\"POWERSHELL\\\\\\",\\\\n \\\\\\"recoveryInstanceName\\\\\\": \\\\\\"HDR_Recovery-sr-xxxxxxxxxxxxxxxxxx-cpr\\\\\\",\\\\n \\\\\\"recoveryCpu\\\\\\": 2,\\\\n \\\\\\"recoveryMemory\\\\\\": 4294967296,\\\\n \\\\\\"recoveryUseEssd\\\\\\": false,\\\\n \\\\\\"recoveryUseSsd\\\\\\": false,\\\\n \\\\\\"recoveryReserveIp\\\\\\": false,\\\\n \\\\\\"recoveryUseDhcp\\\\\\": true,\\\\n \\\\\\"recoveryIpAddress\\\\\\": \\\\\\"\\\\\\",\\\\n \\\\\\"recoveryNetwork\\\\\\": \\\\\\"vsw-xxxxxxxxxxxxxxxxxx\\\\\\"\\\\n },\\\\n \\\\\\"forcedFailoverAction\\\\\\": {\\\\n \\\\\\"eipAddressId\\\\\\": \\\\\\"\\\\\\",\\\\n \\\\\\"recoveryPostScriptContent\\\\\\": \\\\\\"\\\\\\",\\\\n \\\\\\"recoveryPostScriptType\\\\\\": \\\\\\"POWERSHELL\\\\\\",\\\\n \\\\\\"recoveryInstanceName\\\\\\": \\\\\\"HDR_Recovery-sr-xxxxxxxxxxxxxxxxxx-ffo\\\\\\",\\\\n \\\\\\"recoveryCpu\\\\\\": 2,\\\\n \\\\\\"recoveryMemory\\\\\\": 4294967296,\\\\n \\\\\\"recoveryUseEssd\\\\\\": false,\\\\n \\\\\\"recoveryUseSsd\\\\\\": false,\\\\n \\\\\\"recoveryReserveIp\\\\\\": false,\\\\n \\\\\\"recoveryUseDhcp\\\\\\": true,\\\\n \\\\\\"recoveryIpAddress\\\\\\": \\\\\\"\\\\\\",\\\\n \\\\\\"recoveryNetwork\\\\\\": \\\\\\"vsw-xxxxxxxxxxxxxxxxxx\\\\\\"\\\\n }\\\\n }\\\\n ]\\\\n }\\\\n ]\\\\n}\\",\\n \\"RecoveryPlanId\\": \\"rp-xxxxxxxxxxxxxxxxxx\\"\\n}","type":"json"}]', 'title' => 'Query the details of a recovery plan', 'changeSet' => [ ['createdAt' => '2024-01-09T06:12:19.000Z', 'description' => 'Response parameters changed'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'hdr:DescribeRecoveryPlan', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeRecoveryPlan'], ], ], ], 'DescribeRecoveryPlans' => [ 'summary' => 'Lists recovery plans for a site pair.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], ], 'parameters' => [ [ 'name' => 'SitePairId', 'in' => 'query', 'schema' => ['description' => 'ID of the site pair.', 'type' => 'string', 'required' => false, 'example' => 's-0005qxusucbii5ab6wuj', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'Page number for the paged query. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'Number of entries per page for the paged query. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '10', 'example' => '10', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'ID of the request.', 'type' => 'string', 'example' => 'F2812CD7-03E7-5774-9EE5-827D8398A670', 'title' => ''], 'Success' => ['description' => 'Indicates whether the call succeeded.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], 'Code' => ['description' => 'Return code of the operation.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'Response message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'PageSize' => ['description' => 'Number of entries per page for the paged query. Maximum value: 100. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'PageNumber' => ['description' => 'Current page number for the paged query.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'Total number of recovery plans.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RecoveryPlans' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'recoveryPlan' => [ 'description' => 'List of recovery plans.', 'type' => 'array', 'items' => [ 'description' => 'Details of a recovery plan.', 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'Status of the recovery plan. Valid values:'."\n" ."\n" .'- **creating**: The recovery plan is being created.'."\n" ."\n" .'- **updating**: The recovery plan is being updated.'."\n" ."\n" .'- **deleting**: The recovery plan is being deleted.'."\n" ."\n" .'- **failed**: The recovery plan failed to be created, updated, or deleted.'."\n" ."\n" .'- **init**: The recovery plan has been initialized.'."\n" ."\n" .'- **running**: The recovery plan is being executed.', 'type' => 'string', 'example' => 'init', 'title' => ''], 'Direction' => ['description' => 'Direction of the recovery plan. Valid value: **forward**.', 'type' => 'string', 'example' => 'forward', 'title' => ''], 'Name' => ['description' => 'Name of the recovery plan.', 'type' => 'string', 'example' => 'test-1', 'title' => ''], 'RecoveryPlanId' => ['description' => 'ID of the recovery plan.', 'type' => 'string', 'example' => 'rp-xxxxxxxxxxxxxxxxxx', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F2812CD7-03E7-5774-9EE5-827D8398A670\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 1,\\n \\"RecoveryPlans\\": {\\n \\"recoveryPlan\\": [\\n {\\n \\"Status\\": \\"init\\",\\n \\"Direction\\": \\"forward\\",\\n \\"Name\\": \\"test-1\\",\\n \\"RecoveryPlanId\\": \\"rp-xxxxxxxxxxxxxxxxxx\\"\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'Query the recovery plan list', 'changeSet' => [ ['createdAt' => '2024-01-09T06:27:23.000Z', 'description' => 'Response parameters changed'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'hdr:DescribeRecoveryPlans', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeRecoveryPlans'], ], ], ], 'DescribeRecoveryPoints' => [ 'summary' => 'List the available recovery points.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrEJMNXE', 'FEATUREhdrKVSJIZ', 'FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], ], 'parameters' => [ [ 'name' => 'ServerId', 'in' => 'query', 'schema' => ['description' => 'ID of the protected server.', 'type' => 'string', 'required' => false, 'example' => 'sr-0008fj9dbe1xzlg6805i', 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'Start time for the query. List recovery points created on or after this time.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1633503912', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'Error code.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'Response message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'RequestId' => ['description' => 'Request ID.', 'type' => 'string', 'example' => '8260C928-1A54-545A-A3F2-51E6327D28E6', 'title' => ''], 'TotalCount' => ['description' => 'Total number of available recovery points.', 'type' => 'integer', 'format' => 'int32', 'example' => '15', 'title' => ''], 'Success' => ['description' => 'Indicates whether the request succeeded.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], 'RecoveryPoints' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'recoveryPoint' => [ 'description' => 'Information about each recovery point.', 'type' => 'array', 'items' => [ 'description' => 'Information about a recovery point.', 'type' => 'object', 'properties' => [ 'ApplicationConsistent' => ['description' => 'Indicates whether the recovery point meets application consistency requirements.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'RecoveryPointTime' => ['description' => 'Time when the recovery point was created.', 'type' => 'integer', 'format' => 'int64', 'example' => '1637118000', 'title' => ''], 'Disabled' => ['description' => 'Indicates whether the recovery point is disabled.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'RecoveryPointId' => ['description' => 'ID of the recovery point.', 'type' => 'string', 'example' => 'rp-0000syrdl2f8a7te4063', 'title' => ''], 'Used' => ['description' => 'Indicates whether the recovery point has been used.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'DisableReason' => ['description' => 'Reason the recovery point was disabled.', 'type' => 'string', 'example' => 'inconsistent', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"8260C928-1A54-545A-A3F2-51E6327D28E6\\",\\n \\"TotalCount\\": 15,\\n \\"Success\\": true,\\n \\"RecoveryPoints\\": {\\n \\"recoveryPoint\\": [\\n {\\n \\"ApplicationConsistent\\": false,\\n \\"RecoveryPointTime\\": 1637118000,\\n \\"Disabled\\": false,\\n \\"RecoveryPointId\\": \\"rp-0000syrdl2f8a7te4063\\",\\n \\"Used\\": false,\\n \\"DisableReason\\": \\"inconsistent\\"\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'Query active recovery points', 'changeSet' => [ ['createdAt' => '2024-01-09T06:27:24.000Z', 'description' => 'Error codes changed'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'hdr:DescribeRecoveryPoints', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeRecoveryPoints'], ], ], ], 'DescribeServer' => [ 'summary' => 'Query information about a protected server.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrEJMNXE', 'FEATUREhdrKVSJIZ', 'FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], ], 'parameters' => [ [ 'name' => 'ServerId', 'in' => 'query', 'schema' => ['description' => 'ID of the protected server.', 'type' => 'string', 'required' => false, 'example' => 'sr-0005qxusucbiga738e9s', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PrimarySiteId' => ['description' => 'ID of the primary site.', 'type' => 'string', 'example' => 'si-0001jntih0phb0i2w1ya', 'title' => ''], 'ServerId' => ['description' => 'ID of the protected server.', 'type' => 'string', 'example' => 'sr-0005qxusucbiip0g6t93', 'title' => ''], 'RecoveryUseDhcp' => ['description' => 'Whether to use DHCP to assign an IP address during failover.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'RequestId' => ['description' => 'ID of the request.', 'type' => 'string', 'example' => 'BBCC4082-98DF-5804-96C6-0E74C37C5867', 'title' => ''], 'RecoveryMemory' => ['description' => 'Memory size of the instance used for failover, in bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '4294967296', 'title' => ''], 'SourceGatewayVersion' => ['description' => 'Version of the gateway on the primary site.', 'type' => 'string', 'example' => '3.7.3', 'title' => ''], 'IncrementalSyncStartTime' => ['description' => 'Incremental replication start time', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''], 'CrashConsistentPointPolicy' => ['description' => 'Recovery point policy.', 'type' => 'string', 'example' => '{\\"scheduleType\\":\\"CRON\\",\\"expression\\":\\"0 0 */1 * * 0,1,2,3,4,5,6\\",\\"initialDelay\\":0}', 'title' => ''], 'Success' => ['description' => 'Indicates whether the request succeeded.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], 'RecoveryPostScriptContent' => ['description' => 'Script content to run after the failover instance starts.', 'type' => 'string', 'example' => 'echo \\"127.0.0.1 kubernetes.docker.internal\\" >> /etc/hosts', 'title' => ''], 'TestRecoveredInstanceId' => ['description' => 'ID of the instance created during disaster recovery drills.', 'type' => 'string', 'example' => 'i-bp13zgzv13am2n2z92lb', 'title' => ''], 'ReplicationNetwork' => ['description' => 'VSwitch ID of the replication network.', 'type' => 'string', 'example' => 'vsw-bp1g0s2u3b2kbn46kiy53', 'title' => ''], 'RecoveryUseEssd' => ['description' => 'Whether to use ESSD disks for the failover instance.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'TargetGatewayVersion' => ['description' => 'Version of the gateway on the secondary site.', 'type' => 'string', 'example' => 'i-bp13zgzv13am2n2z92lb', 'title' => ''], 'OsType' => ['description' => 'Operating system type.', 'type' => 'string', 'example' => 'linux', 'title' => ''], 'FullSyncStartTime' => ['description' => 'The start time of the full replication.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''], 'ReplicationUseSsd' => ['description' => 'Whether to use standard SSD disks for the replica instance.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'Rpo' => ['description' => 'Recovery Point Objective (RPO), in seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '45', 'title' => ''], 'Consistent' => ['description' => 'Indicates whether the server is in a consistent state.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'FullSyncTotalSize' => ['description' => 'Total size of full replication, in bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '365072220160', 'title' => ''], 'RecoveredIpAddress' => ['description' => 'IP address of the instance created during switchover.', 'type' => 'string', 'example' => '192.168.2.2', 'title' => ''], 'Alias' => ['description' => 'Alias of the server.', 'type' => 'string', 'example' => 'bsdewmpci_rz', 'title' => ''], 'Status' => ['description' => 'Status of the instance.', 'type' => 'string', 'example' => 'replicating', 'title' => ''], 'TestFailoverStatus' => ['description' => 'Status of the disaster recovery drill.', 'type' => 'string', 'example' => 'testFailovered', 'title' => ''], 'ReplicationUseEssd' => ['description' => 'Whether to use ESSD disks for the replica instance.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'OsDetail' => ['description' => 'Detailed operating system information.', 'type' => 'string', 'example' => 'CentOS;7.9.2009', 'title' => ''], 'Message' => ['description' => 'Response message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'TestRecoveredIpAddress' => ['description' => 'IP address of the instance created during disaster recovery drills.', 'type' => 'string', 'example' => '192.168.2.2', 'title' => ''], 'SecondarySiteId' => ['description' => 'ID of the secondary site.', 'type' => 'string', 'example' => 'si-000imvpcegvbh6i5kd2u', 'title' => ''], 'FullSyncProgress' => ['description' => 'Progress of full replication, as a percentage.', 'type' => 'integer', 'format' => 'int32', 'example' => '17', 'title' => ''], 'RecoveryInstanceType' => ['description' => 'Instance type used for failover.', 'type' => 'string', 'example' => 'ecs.c5.2xlarge', 'title' => ''], 'IpAddress' => ['description' => 'IP address of the protected server.', 'type' => 'string', 'example' => '30.42.105.6', 'title' => ''], 'RecoveryInstanceName' => ['description' => 'Name of the instance created during failover.', 'type' => 'string', 'example' => 'HDR_Recovery-sr-000bzkmmlwghq3soqry2', 'title' => ''], 'OriginalInstanceId' => ['description' => 'ID of the source instance.', 'type' => 'string', 'example' => 'i-bp19axn91irnsi9204xg', 'title' => ''], 'RecoveredInstanceId' => ['description' => 'ID of the instance created during switchover.', 'type' => 'string', 'example' => 'i-bp19axn91irnsi9204xg', 'title' => ''], 'RecoveryReserveIp' => ['description' => 'Whether the test instance retains the IP address of the source instance. This requires the VSwitch used for the test to include the corresponding CIDR block.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'Code' => ['description' => 'Status code.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Memory' => ['description' => 'Memory size, in bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '8589934591', 'title' => ''], 'RecoveryIpAddress' => ['description' => 'Manually assigned IP address for the failover instance.', 'type' => 'string', 'example' => '192.168.2.2', 'title' => ''], 'RecoveryNetwork' => ['description' => 'VSwitch ID of the failover instance.', 'type' => 'string', 'example' => 'vsw-uf61v3bg6r790ir22jqv4', 'title' => ''], 'Errno' => ['description' => 'Error reason.', 'type' => 'string', 'example' => 'cdr.console.plugin.failed_to_connect', 'title' => ''], 'ReplicationUseOriginalInstance' => ['description' => 'Whether reverse replication uses the source instance.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'Hostname' => ['description' => 'Hostname of the server.', 'type' => 'string', 'example' => 'iZ2ze0jazgwtuxettbk1ywZ', 'title' => ''], 'RecoveryCpu' => ['description' => 'Number of vCPUs for the failover instance.', 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'title' => ''], 'AgentPort' => ['description' => 'Port number of the client agent.', 'type' => 'integer', 'format' => 'int32', 'example' => '9080', 'title' => ''], 'ReplicationUseDhcp' => ['description' => 'Whether to use DHCP for replication.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'TestRecoveredInstanceName' => ['description' => 'Name of the instance created during disaster recovery drills.', 'type' => 'string', 'example' => 'HDR_Recovery-sr-000c2rz7q8tak59pt6sw', 'title' => ''], 'AgentVersion' => ['description' => 'Client agent version.', 'type' => 'string', 'example' => '3.7.3', 'title' => ''], 'FullSyncCurrentSize' => ['description' => 'Size of completed full replication, in bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '3285276688384', 'title' => ''], 'ReplicationInfrastructureType' => ['description' => 'Type of infrastructure used for replication.', 'type' => 'string', 'example' => 'aliyun', 'title' => ''], 'Cpu' => ['description' => 'Number of vCPUs.', 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'title' => ''], 'RecoveryPostScriptType' => ['description' => 'Script type to run after the test instance starts. Valid values: SHELL.', 'type' => 'string', 'example' => 'SHELL', 'title' => ''], 'ReplicationInfrastructureId' => ['description' => 'Infrastructure ID of the target site.', 'type' => 'string', 'example' => 'is-000bzkmmlwgibbduuoff', 'title' => ''], 'ConnectionStatus' => ['description' => 'Connection status.', 'type' => 'string', 'example' => 'connected', 'title' => ''], 'Operations' => ['description' => 'Supported operations.', 'type' => 'string', 'example' => '"{\\"Resynchronize\\":true,\\"TestFailover\\":true,\\"TestCleanup\\":true,\\"ChangeRecoveryPoint\\":true,\\"UnregisterServer\\":true,\\"ReversedEnableReplication\\":true,\\"ReversedDisableReplication\\":true,\\"DisableReplication\\":true,\\"CommitFailover\\":true,\\"RestartServer\\":true,\\"UpgradeServer\\":true,\\"ForcedFailover\\":true,\\"RepairReplication\\":true,\\"EnableReplication\\":true,\\"TriggerReversedRegister\\":true,\\"SetupAgent\\":true,\\"TriggerRegister\\":true,\\"CollectSupportBundle\\":true,\\"Failback\\":true}"', 'title' => ''], 'TaskId' => ['description' => 'ID of the task.', 'type' => 'string', 'example' => 't-0004ka624vrza82g46ne', 'title' => ''], 'RecoveryUseSsd' => ['description' => 'Whether to use standard SSD disks for the failover instance.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'Disks' => ['description' => 'List of disk information.', 'type' => 'string', 'example' => '[{\\"id\\":\\"0\\",\\"boot\\":true,\\"size\\":500363689984}]', 'title' => ''], 'RecoveryEssdPerformanceLevel' => ['description' => 'PL level selected for ESSD disks used in test or switchover instances.', 'type' => 'string', 'example' => 'PL1', 'title' => ''], 'LatestRecoveryPointTime' => ['description' => 'The time when the most recent recovery point was created.', 'type' => 'string', 'example' => '1661419052', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PrimarySiteId\\": \\"si-0001jntih0phb0i2w1ya\\",\\n \\"ServerId\\": \\"sr-0005qxusucbiip0g6t93\\",\\n \\"RecoveryUseDhcp\\": false,\\n \\"RequestId\\": \\"BBCC4082-98DF-5804-96C6-0E74C37C5867\\",\\n \\"RecoveryMemory\\": 4294967296,\\n \\"SourceGatewayVersion\\": \\"3.7.3\\",\\n \\"IncrementalSyncStartTime\\": 0,\\n \\"CrashConsistentPointPolicy\\": \\"{\\\\\\\\\\\\\\"scheduleType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"CRON\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"expression\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"0 0 */1 * * 0,1,2,3,4,5,6\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"initialDelay\\\\\\\\\\\\\\":0}\\",\\n \\"Success\\": true,\\n \\"RecoveryPostScriptContent\\": \\"echo \\\\\\\\\\\\\\"127.0.0.1 kubernetes.docker.internal\\\\\\\\\\\\\\" >> /etc/hosts\\",\\n \\"TestRecoveredInstanceId\\": \\"i-bp13zgzv13am2n2z92lb\\",\\n \\"ReplicationNetwork\\": \\"vsw-bp1g0s2u3b2kbn46kiy53\\",\\n \\"RecoveryUseEssd\\": false,\\n \\"TargetGatewayVersion\\": \\"i-bp13zgzv13am2n2z92lb\\",\\n \\"OsType\\": \\"linux\\",\\n \\"FullSyncStartTime\\": 0,\\n \\"ReplicationUseSsd\\": false,\\n \\"Rpo\\": 45,\\n \\"Consistent\\": false,\\n \\"FullSyncTotalSize\\": 365072220160,\\n \\"RecoveredIpAddress\\": \\"192.168.2.2\\",\\n \\"Alias\\": \\"bsdewmpci_rz\\",\\n \\"Status\\": \\"replicating\\",\\n \\"TestFailoverStatus\\": \\"testFailovered\\",\\n \\"ReplicationUseEssd\\": false,\\n \\"OsDetail\\": \\"CentOS;7.9.2009\\",\\n \\"Message\\": \\"successful\\",\\n \\"TestRecoveredIpAddress\\": \\"192.168.2.2\\",\\n \\"SecondarySiteId\\": \\"si-000imvpcegvbh6i5kd2u\\",\\n \\"FullSyncProgress\\": 17,\\n \\"RecoveryInstanceType\\": \\"ecs.c5.2xlarge\\",\\n \\"IpAddress\\": \\"30.42.105.6\\",\\n \\"RecoveryInstanceName\\": \\"HDR_Recovery-sr-000bzkmmlwghq3soqry2\\",\\n \\"OriginalInstanceId\\": \\"i-bp19axn91irnsi9204xg\\",\\n \\"RecoveredInstanceId\\": \\"i-bp19axn91irnsi9204xg\\",\\n \\"RecoveryReserveIp\\": false,\\n \\"Code\\": \\"200\\",\\n \\"Memory\\": 8589934591,\\n \\"RecoveryIpAddress\\": \\"192.168.2.2\\",\\n \\"RecoveryNetwork\\": \\"vsw-uf61v3bg6r790ir22jqv4\\",\\n \\"Errno\\": \\"cdr.console.plugin.failed_to_connect\\",\\n \\"ReplicationUseOriginalInstance\\": false,\\n \\"Hostname\\": \\"iZ2ze0jazgwtuxettbk1ywZ\\",\\n \\"RecoveryCpu\\": 4,\\n \\"AgentPort\\": 9080,\\n \\"ReplicationUseDhcp\\": false,\\n \\"TestRecoveredInstanceName\\": \\"HDR_Recovery-sr-000c2rz7q8tak59pt6sw\\",\\n \\"AgentVersion\\": \\"3.7.3\\",\\n \\"FullSyncCurrentSize\\": 3285276688384,\\n \\"ReplicationInfrastructureType\\": \\"aliyun\\",\\n \\"Cpu\\": 4,\\n \\"RecoveryPostScriptType\\": \\"SHELL\\",\\n \\"ReplicationInfrastructureId\\": \\"is-000bzkmmlwgibbduuoff\\",\\n \\"ConnectionStatus\\": \\"connected\\",\\n \\"Operations\\": \\"\\\\\\"{\\\\\\\\\\\\\\"Resynchronize\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"TestFailover\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"TestCleanup\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"ChangeRecoveryPoint\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"UnregisterServer\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"ReversedEnableReplication\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"ReversedDisableReplication\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"DisableReplication\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"CommitFailover\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"RestartServer\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"UpgradeServer\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"ForcedFailover\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"RepairReplication\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"EnableReplication\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"TriggerReversedRegister\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"SetupAgent\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"TriggerRegister\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"CollectSupportBundle\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"Failback\\\\\\\\\\\\\\":true}\\\\\\"\\",\\n \\"TaskId\\": \\"t-0004ka624vrza82g46ne\\",\\n \\"RecoveryUseSsd\\": false,\\n \\"Disks\\": \\"[{\\\\\\\\\\\\\\"id\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"0\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"boot\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"size\\\\\\\\\\\\\\":500363689984}]\\",\\n \\"RecoveryEssdPerformanceLevel\\": \\"PL1\\",\\n \\"LatestRecoveryPointTime\\": \\"1661419052\\"\\n}","type":"json"}]', 'title' => 'Query protected servers', 'changeSet' => [ ['createdAt' => '2024-01-09T06:27:22.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-01-09T07:04:54.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-03-03T07:59:07.000Z', 'description' => 'Request parameters changed, Response parameters changed, Error codes changed'], ['createdAt' => '2022-03-03T07:59:07.000Z', 'description' => 'Response parameters changed'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'hdr:DescribeServer', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeServer'], ], ], ], 'DescribeServers' => [ 'summary' => 'Queries protected servers.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrEJMNXE', 'FEATUREhdrKVSJIZ', 'FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], ], 'parameters' => [ [ 'name' => 'SitePairId', 'in' => 'query', 'schema' => ['description' => 'Site pair ID', 'type' => 'string', 'required' => false, 'example' => 's-0007rvzart0u501t4e5r', 'title' => ''], ], [ 'name' => 'ServerIds', 'in' => 'query', 'schema' => ['description' => 'List of protected server IDs', 'type' => 'string', 'required' => false, 'example' => '"[\\"sr-0005qxusucbi38lqfc2q\\",\\"sr-0005qxusucbi38lqfc2r\\"]"', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'Page number', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'Number of entries per page', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '10', 'example' => '10', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'Request ID', 'type' => 'string', 'example' => 'D2B255D3-9736-5169-B488-C735A8BBCD79', 'title' => ''], 'Success' => ['description' => 'Indicates whether the request succeeded', 'type' => 'boolean', 'example' => 'True', 'title' => ''], 'Code' => ['description' => 'Status code', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'Response message', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'PageSize' => ['description' => 'Number of entries per page for paged queries', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'PageNumber' => ['description' => 'Page number', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'TotalCount' => ['description' => 'Total number of entries', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'Servers' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'server' => [ 'description' => 'Protected server information', 'type' => 'array', 'items' => [ 'description' => 'Protected server information', 'type' => 'object', 'properties' => [ 'RecoveredInstanceName' => ['description' => 'Switchover instance name', 'type' => 'string', 'example' => 'recovered_server', 'title' => ''], 'PrimarySiteId' => ['description' => 'Primary site ID', 'type' => 'string', 'example' => 'si-000cm9ax8sgplgye2vc4', 'title' => ''], 'ServerId' => ['description' => 'Protected server ID', 'type' => 'string', 'example' => 'sr-000cm9ax8sh2381wa7kv', 'title' => ''], 'RecoveryUseDhcp' => ['description' => 'Indicates whether the switchover instance uses DHCP to assign IP addresses', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'RecoveryMemory' => ['description' => 'Memory size of the switchover instance', 'type' => 'integer', 'format' => 'int64', 'example' => '8589934592', 'title' => ''], 'SourceGatewayVersion' => ['description' => 'Primary site gateway version', 'type' => 'string', 'example' => '3.7.3', 'title' => ''], 'IncrementalSyncStartTime' => ['description' => 'Start time of incremental replication', 'type' => 'integer', 'format' => 'int64', 'example' => '1646049677', 'title' => ''], 'CrashConsistentPointPolicy' => ['description' => 'Recovery point policy', 'type' => 'string', 'example' => '"{\\"scheduleType\\":\\"CRON\\",\\"expression\\":\\"0 0 */1 * * 0,1,2,3,4,5,6\\",\\"initialDelay\\":0}"', 'title' => ''], 'RecoveryPostScriptContent' => ['description' => 'Script content to run after disaster recovery drills or switchover', 'type' => 'string', 'example' => '"echo \\"127.0.0.1 kubernetes.docker.internal\\" >> /etc/hosts"', 'title' => ''], 'TestRecoveredInstanceId' => ['description' => 'Instance ID for disaster recovery drills', 'type' => 'string', 'example' => 'i-bp13zgzv13am2n2z92lb', 'title' => ''], 'ReplicationNetwork' => ['description' => 'VSwitch ID of the replica server', 'type' => 'string', 'example' => 'vsw-2zey7xe0m8dbqrks2jb9h', 'title' => ''], 'RecoveryUseEssd' => ['description' => 'Indicates whether the disaster recovery drill or switchover instance uses ESSD', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'TargetGatewayVersion' => ['description' => 'Secondary site gateway version', 'type' => 'string', 'example' => '3.7.3', 'title' => ''], 'OsType' => ['description' => 'Operating system type', 'type' => 'string', 'example' => 'linux', 'title' => ''], 'FullSyncStartTime' => ['description' => 'Start time of full replication', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''], 'ReplicationUseSsd' => ['description' => 'Indicates whether the replica server uses SSD', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Rpo' => ['description' => 'Recovery time objective in seconds', 'type' => 'integer', 'format' => 'int32', 'example' => '30', 'title' => ''], 'Consistent' => ['description' => 'Indicates whether the server is in a consistent state', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'FullSyncTotalSize' => ['description' => 'Full replication size in bytes', 'type' => 'integer', 'format' => 'int64', 'example' => '150202220544', 'title' => ''], 'RecoveredIpAddress' => ['description' => 'IP address of the switchover instance', 'type' => 'string', 'example' => '192.168.2.2', 'title' => ''], 'Alias' => ['description' => 'Alias', 'type' => 'string', 'example' => 'test-ecs', 'title' => ''], 'Status' => ['description' => 'Status', 'type' => 'string', 'example' => 'replicating', 'title' => ''], 'TestFailoverStatus' => ['description' => 'Disaster recovery drill status', 'type' => 'string', 'example' => 'testFailovered', 'title' => ''], 'ReplicationUseEssd' => ['description' => 'Indicates whether the replica server uses ESSD', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'OsDetail' => ['description' => 'Operating system details', 'type' => 'string', 'example' => 'CentOS;7.9.2009', 'title' => ''], 'TestRecoveredIpAddress' => ['description' => 'IP address of the disaster recovery drill instance', 'type' => 'string', 'example' => '192.168.2.2', 'title' => ''], 'SecondarySiteId' => ['description' => 'Secondary site ID', 'type' => 'string', 'example' => 'si-0007o5em8n6mhm8hee1l', 'title' => ''], 'FullSyncProgress' => ['description' => 'Full replication progress as a percentage', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'RecoveryInstanceType' => ['description' => 'Instance type for switchover', 'type' => 'string', 'example' => 'ecs.r6.3xlarge', 'title' => ''], 'IpAddress' => ['description' => 'Private IP address', 'type' => 'string', 'example' => '30.42.105.6', 'title' => ''], 'RecoveryInstanceName' => ['description' => 'Switchover instance name', 'type' => 'string', 'example' => 'HDR_Recovery-sr-000c2rz7q8tak59pt6sw', 'title' => ''], 'OriginalInstanceId' => ['description' => 'Source instance ID', 'type' => 'string', 'example' => 'i-bp19axn91irnsi9204xg', 'title' => ''], 'InstanceId' => ['description' => 'ECS instance ID', 'type' => 'string', 'example' => 'i-bp19axn91irnsi9204xg', 'title' => ''], 'RecoveredInstanceId' => ['description' => 'Switchover instance ID', 'type' => 'string', 'example' => 'i-bp19axn91irnsi9204xg', 'title' => ''], 'RecoveryReserveIp' => ['description' => 'Indicates whether the switchover instance retains the source IP address', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Memory' => ['description' => 'Memory size in bytes', 'type' => 'integer', 'format' => 'int64', 'example' => '4294967295', 'title' => ''], 'RecoveryIpAddress' => ['description' => 'Manually assigned IP address for switchover', 'type' => 'string', 'example' => '192.168.2.2', 'title' => ''], 'RecoveryNetwork' => ['description' => 'VSwitch ID of the replica server', 'type' => 'string', 'example' => 'vsw-uf63qu8ocjcly44tai570', 'title' => ''], 'Errno' => ['description' => 'Error reason', 'type' => 'string', 'example' => 'cdr.console.plugin.alicloud.agent_deploy_already_installed', 'title' => ''], 'ReplicationUseOriginalInstance' => ['description' => 'Indicates whether the replica server uses the source instance. This setting applies only during reverse replication', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'Hostname' => ['description' => 'Hostname', 'type' => 'string', 'example' => 'test', 'title' => ''], 'RecoveryCpu' => ['description' => 'Number of CPU cores for the switchover instance', 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'title' => ''], 'AgentPort' => ['description' => 'Client agent port', 'type' => 'integer', 'format' => 'int32', 'example' => '9080', 'title' => ''], 'ReplicationUseDhcp' => ['description' => 'Indicates whether the replica server uses DHCP to assign IP addresses', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'TestRecoveredInstanceName' => ['description' => 'Instance name for disaster recovery drills', 'type' => 'string', 'example' => 'HDR_Recovery-sr-000c2rz7q8tak59pt6sw', 'title' => ''], 'AgentVersion' => ['description' => 'Client version', 'type' => 'string', 'example' => '3.7.3', 'title' => ''], 'FullSyncCurrentSize' => ['description' => 'Completed size of full replication in bytes', 'type' => 'integer', 'format' => 'int64', 'example' => '1603469836288', 'title' => ''], 'ReplicationInfrastructureType' => ['description' => 'Infrastructure type used for replication', 'type' => 'string', 'example' => 'aliyun', 'title' => ''], 'Cpu' => ['description' => 'Number of CPU cores', 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'title' => ''], 'RecoveryPostScriptType' => ['description' => 'Script type to run after the switchover instance starts', 'type' => 'string', 'example' => 'SHELL', 'title' => ''], 'ReplicationInfrastructureId' => ['description' => 'Infrastructure ID used for replication', 'type' => 'string', 'example' => 'is-0004ka624vrxd9xsvs4f', 'title' => ''], 'ConnectionStatus' => ['description' => 'Connection status', 'type' => 'string', 'example' => 'connected', 'title' => ''], 'Operations' => ['description' => 'List of supported and disabled operations for this instance', 'type' => 'string', 'example' => '"{\\"Resynchronize\\":true,\\"TestFailover\\":true,\\"TestCleanup\\":true,\\"ChangeRecoveryPoint\\":true,\\"UnregisterServer\\":true,\\"ReversedEnableReplication\\":true,\\"ReversedDisableReplication\\":true,\\"DisableReplication\\":true,\\"CommitFailover\\":true,\\"RestartServer\\":true,\\"UpgradeServer\\":true,\\"ForcedFailover\\":true,\\"RepairReplication\\":true,\\"EnableReplication\\":true,\\"TriggerReversedRegister\\":true,\\"SetupAgent\\":true,\\"TriggerRegister\\":true,\\"CollectSupportBundle\\":true,\\"Failback\\":true}"', 'title' => ''], 'TaskId' => ['description' => 'ID of the running task', 'type' => 'string', 'example' => 't-0007rvzart0v31c0x93q', 'title' => ''], 'RecoveryUseSsd' => ['description' => 'Indicates whether the switchover instance uses SSD', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Disks' => ['description' => 'List of disk information', 'type' => 'string', 'example' => '[{\\"id\\":\\"0\\",\\"boot\\":true,\\"size\\":500363689984}]', 'title' => ''], 'RecoveryEssdPerformanceLevel' => ['description' => 'PL level selected for ESSD used in disaster recovery drills or switchover', 'type' => 'string', 'example' => 'PL3', 'title' => ''], 'LatestRecoveryPointTime' => ['description' => 'Timestamp of the most recent recovery point creation', 'type' => 'integer', 'format' => 'int64', 'example' => '1661419052', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"D2B255D3-9736-5169-B488-C735A8BBCD79\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 2,\\n \\"TotalCount\\": 10,\\n \\"Servers\\": {\\n \\"server\\": [\\n {\\n \\"RecoveredInstanceName\\": \\"recovered_server\\",\\n \\"PrimarySiteId\\": \\"si-000cm9ax8sgplgye2vc4\\",\\n \\"ServerId\\": \\"sr-000cm9ax8sh2381wa7kv\\",\\n \\"RecoveryUseDhcp\\": true,\\n \\"RecoveryMemory\\": 8589934592,\\n \\"SourceGatewayVersion\\": \\"3.7.3\\",\\n \\"IncrementalSyncStartTime\\": 1646049677,\\n \\"CrashConsistentPointPolicy\\": \\"\\\\\\"{\\\\\\\\\\\\\\"scheduleType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"CRON\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"expression\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"0 0 */1 * * 0,1,2,3,4,5,6\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"initialDelay\\\\\\\\\\\\\\":0}\\\\\\"\\",\\n \\"RecoveryPostScriptContent\\": \\"\\\\\\"echo \\\\\\\\\\\\\\"127.0.0.1 kubernetes.docker.internal\\\\\\\\\\\\\\" >> /etc/hosts\\\\\\"\\",\\n \\"TestRecoveredInstanceId\\": \\"i-bp13zgzv13am2n2z92lb\\",\\n \\"ReplicationNetwork\\": \\"vsw-2zey7xe0m8dbqrks2jb9h\\",\\n \\"RecoveryUseEssd\\": false,\\n \\"TargetGatewayVersion\\": \\"3.7.3\\",\\n \\"OsType\\": \\"linux\\",\\n \\"FullSyncStartTime\\": 0,\\n \\"ReplicationUseSsd\\": true,\\n \\"Rpo\\": 30,\\n \\"Consistent\\": true,\\n \\"FullSyncTotalSize\\": 150202220544,\\n \\"RecoveredIpAddress\\": \\"192.168.2.2\\",\\n \\"Alias\\": \\"test-ecs\\",\\n \\"Status\\": \\"replicating\\",\\n \\"TestFailoverStatus\\": \\"testFailovered\\",\\n \\"ReplicationUseEssd\\": false,\\n \\"OsDetail\\": \\"CentOS;7.9.2009\\",\\n \\"TestRecoveredIpAddress\\": \\"192.168.2.2\\",\\n \\"SecondarySiteId\\": \\"si-0007o5em8n6mhm8hee1l\\",\\n \\"FullSyncProgress\\": 0,\\n \\"RecoveryInstanceType\\": \\"ecs.r6.3xlarge\\",\\n \\"IpAddress\\": \\"30.42.105.6\\",\\n \\"RecoveryInstanceName\\": \\"HDR_Recovery-sr-000c2rz7q8tak59pt6sw\\",\\n \\"OriginalInstanceId\\": \\"i-bp19axn91irnsi9204xg\\",\\n \\"InstanceId\\": \\"i-bp19axn91irnsi9204xg\\",\\n \\"RecoveredInstanceId\\": \\"i-bp19axn91irnsi9204xg\\",\\n \\"RecoveryReserveIp\\": true,\\n \\"Memory\\": 4294967295,\\n \\"RecoveryIpAddress\\": \\"192.168.2.2\\",\\n \\"RecoveryNetwork\\": \\"vsw-uf63qu8ocjcly44tai570\\",\\n \\"Errno\\": \\"cdr.console.plugin.alicloud.agent_deploy_already_installed\\",\\n \\"ReplicationUseOriginalInstance\\": false,\\n \\"Hostname\\": \\"test\\",\\n \\"RecoveryCpu\\": 4,\\n \\"AgentPort\\": 9080,\\n \\"ReplicationUseDhcp\\": false,\\n \\"TestRecoveredInstanceName\\": \\"HDR_Recovery-sr-000c2rz7q8tak59pt6sw\\",\\n \\"AgentVersion\\": \\"3.7.3\\",\\n \\"FullSyncCurrentSize\\": 1603469836288,\\n \\"ReplicationInfrastructureType\\": \\"aliyun\\",\\n \\"Cpu\\": 4,\\n \\"RecoveryPostScriptType\\": \\"SHELL\\",\\n \\"ReplicationInfrastructureId\\": \\"is-0004ka624vrxd9xsvs4f\\",\\n \\"ConnectionStatus\\": \\"connected\\",\\n \\"Operations\\": \\"\\\\\\"{\\\\\\\\\\\\\\"Resynchronize\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"TestFailover\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"TestCleanup\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"ChangeRecoveryPoint\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"UnregisterServer\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"ReversedEnableReplication\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"ReversedDisableReplication\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"DisableReplication\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"CommitFailover\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"RestartServer\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"UpgradeServer\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"ForcedFailover\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"RepairReplication\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"EnableReplication\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"TriggerReversedRegister\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"SetupAgent\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"TriggerRegister\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"CollectSupportBundle\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"Failback\\\\\\\\\\\\\\":true}\\\\\\"\\",\\n \\"TaskId\\": \\"t-0007rvzart0v31c0x93q\\",\\n \\"RecoveryUseSsd\\": true,\\n \\"Disks\\": \\"[{\\\\\\\\\\\\\\"id\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"0\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"boot\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"size\\\\\\\\\\\\\\":500363689984}]\\",\\n \\"RecoveryEssdPerformanceLevel\\": \\"PL3\\",\\n \\"LatestRecoveryPointTime\\": 1661419052\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'Query protected servers', 'changeSet' => [ ['createdAt' => '2024-01-09T06:27:22.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-01-09T07:04:54.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-03-03T07:59:07.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-03-03T07:59:07.000Z', 'description' => 'Response parameters changed'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'hdr:DescribeServers', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeServers'], ], ], ], 'DescribeSite' => [ 'summary' => 'Queries information about a site.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrKVSJIZ', 'FEATUREhdrEJMNXE', 'FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], ], 'parameters' => [ [ 'name' => 'SiteId', 'in' => 'query', 'schema' => ['description' => 'The ID of the site.', 'type' => 'string', 'required' => true, 'example' => 'si-000bzkmmlwh01trrecuw', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'VpcId' => ['description' => 'The ID of the virtual private cloud (VPC).', 'type' => 'string', 'example' => 'vpc-bp1c3byhnaoj3u96sgk12', 'title' => ''], 'Type' => ['description' => 'The type of the site.', 'type' => 'string', 'example' => 'cloud', 'title' => ''], 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'B30A844D-E4CF-5382-A0D4-3DE76A8AD2AE', 'title' => ''], 'SiteId' => ['description' => 'The ID of the site.', 'type' => 'string', 'example' => 'si-000bzkmmlwh01trrecuw', 'title' => ''], 'UserSecurityGroupId' => ['description' => 'The ID of the user security group.', 'type' => 'string', 'example' => 'sg-bp1466glrmpqfsq4zpjs', 'title' => ''], 'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], 'ZoneId' => ['description' => 'The ID of the zone.', 'type' => 'string', 'example' => 'cn-shanghai-l', 'title' => ''], 'Code' => ['description' => 'The return code.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'The error message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'Name' => ['description' => 'The name of the site.', 'type' => 'string', 'example' => 'SH', 'title' => ''], 'RegionId' => ['description' => 'The ID of the region where the site is located.', 'type' => 'string', 'example' => 'cn-shanghai', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"VpcId\\": \\"vpc-bp1c3byhnaoj3u96sgk12\\",\\n \\"Type\\": \\"cloud\\",\\n \\"RequestId\\": \\"B30A844D-E4CF-5382-A0D4-3DE76A8AD2AE\\",\\n \\"SiteId\\": \\"si-000bzkmmlwh01trrecuw\\",\\n \\"UserSecurityGroupId\\": \\"sg-bp1466glrmpqfsq4zpjs\\",\\n \\"Success\\": true,\\n \\"ZoneId\\": \\"cn-shanghai-l\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"Name\\": \\"SH\\",\\n \\"RegionId\\": \\"cn-shanghai\\"\\n}","type":"json"}]', 'title' => 'Query site information', 'changeSet' => [ ['createdAt' => '2022-03-03T07:59:07.000Z', 'description' => 'Request parameters changed, Error codes changed'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'hdr:DescribeSite', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeSite'], ], ], ], 'DescribeSitePair' => [ 'summary' => 'Query information about a site pair.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrEJMNXE', 'FEATUREhdrKVSJIZ', 'FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], ], 'parameters' => [ [ 'name' => 'SitePairId', 'in' => 'query', 'schema' => ['description' => 'ID of the site pair.', 'type' => 'string', 'required' => true, 'example' => 's-0007rvzart0c4cn130df', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'SitePairType' => ['description' => 'Type of the site pair.', 'type' => 'string', 'example' => 'cloud2cloud', 'title' => ''], 'Success' => ['description' => 'Indicates whether the request succeeded.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], 'Message' => ['description' => 'Error message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'SecondarySiteId' => ['description' => 'ID of the secondary site.', 'type' => 'string', 'example' => 'si-0007rvzart0a2wpup82m', 'title' => ''], 'PrimarySiteId' => ['description' => 'ID of the primary site.', 'type' => 'string', 'example' => 'si-0001jntih0phb0i2w1ya', 'title' => ''], 'RequestId' => ['description' => 'ID of the request.', 'type' => 'string', 'example' => '700F1972-16A2-5639-A937-D2A6D61557B8', 'title' => ''], 'Version' => ['description' => 'Version number.', 'type' => 'string', 'example' => '3.7.3', 'title' => ''], 'Code' => ['description' => 'Status code.', 'type' => 'string', 'example' => '200', 'title' => ''], 'SitePairId' => ['description' => 'ID of the site pair.', 'type' => 'string', 'example' => 's-000j6lhiuvdqakqa6k7l', 'title' => ''], 'SecondarySiteName' => ['description' => 'Name of the secondary site.', 'type' => 'string', 'example' => '杭州D区', 'title' => ''], 'CreatedTime' => ['description' => 'Time when the site pair was created.', 'type' => 'integer', 'format' => 'int64', 'example' => '1637293095', 'title' => ''], 'PrimarySiteName' => ['description' => 'Name of the primary site.', 'type' => 'string', 'example' => '杭州F区', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SitePairType\\": \\"cloud2cloud\\",\\n \\"Success\\": true,\\n \\"Message\\": \\"successful\\",\\n \\"SecondarySiteId\\": \\"si-0007rvzart0a2wpup82m\\",\\n \\"PrimarySiteId\\": \\"si-0001jntih0phb0i2w1ya\\",\\n \\"RequestId\\": \\"700F1972-16A2-5639-A937-D2A6D61557B8\\",\\n \\"Version\\": \\"3.7.3\\",\\n \\"Code\\": \\"200\\",\\n \\"SitePairId\\": \\"s-000j6lhiuvdqakqa6k7l\\",\\n \\"SecondarySiteName\\": \\"杭州D区\\",\\n \\"CreatedTime\\": 1637293095,\\n \\"PrimarySiteName\\": \\"杭州F区\\"\\n}","type":"json"}]', 'title' => 'Query site pair information', 'changeSet' => [ ['createdAt' => '2022-03-03T07:59:07.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-02-28T07:54:28.000Z', 'description' => 'Error codes changed'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'hdr:DescribeSitePair', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeSitePair'], ], ], ], 'DescribeSitePairStatistics' => [ 'summary' => 'Query performance statistics for a site.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrEJMNXE', 'FEATUREhdrKVSJIZ', 'FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], ], 'parameters' => [ [ 'name' => 'SitePairId', 'in' => 'query', 'schema' => ['description' => 'ID of the site pair.', 'type' => 'string', 'required' => false, 'example' => 's-0005qxusucbp8acutbrv', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'Status code.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'Response message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'RequestId' => ['description' => 'Request ID.', 'type' => 'string', 'example' => 'C0D9AAEE-8A21-5693-BCBD-8548914E4F3B', 'title' => ''], 'Success' => ['description' => 'Indicates whether the request succeeded.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], 'PrimarySiteGatewayInfo' => [ 'description' => 'Information about the primary site gateway.', 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'Gateway status.', 'type' => 'string', 'example' => 'connected', 'title' => ''], 'GatewayId' => ['description' => 'Gateway ID.', 'type' => 'string', 'example' => 'gw-000bzkmmlwgzptnzsdnh', 'title' => ''], 'Version' => ['description' => 'Gateway version.', 'type' => 'string', 'example' => '3.7.3', 'title' => ''], 'HeartbeatedTime' => ['description' => 'Timestamp of the last gateway heartbeat.', 'type' => 'integer', 'format' => 'int64', 'example' => '1642562996', 'title' => ''], ], 'title' => '', 'example' => '', ], 'SecondarySiteGatewayInfo' => [ 'description' => 'Information about the secondary site gateway.', 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'Gateway status.', 'type' => 'string', 'example' => 'connected', 'title' => ''], 'GatewayId' => ['description' => 'Gateway ID.', 'type' => 'string', 'example' => 'gw-0005qxusucbigzug9wpe', 'title' => ''], 'Version' => ['description' => 'Gateway version.', 'type' => 'string', 'example' => '3.7.3', 'title' => ''], 'HeartbeatedTime' => ['description' => 'Timestamp of the last gateway heartbeat.', 'type' => 'integer', 'format' => 'int64', 'example' => '1642562996', 'title' => ''], ], 'title' => '', 'example' => '', ], 'PrimarySiteServers' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'server' => [ 'description' => 'List of protected servers on the primary site.', 'type' => 'array', 'items' => [ 'description' => 'Protected server on the primary site.', 'type' => 'object', 'properties' => [ 'AgentVersion' => ['description' => 'Client version number.', 'type' => 'string', 'example' => '3.7.3', 'title' => ''], 'ConnectionStatus' => ['description' => 'Connection status of the protected server.', 'type' => 'string', 'example' => 'connected', 'title' => ''], 'IpAddress' => ['description' => 'IP address of the protected server.', 'type' => 'string', 'example' => '30.42.105.6', 'title' => ''], 'ServerId' => ['description' => 'ID of the protected server.', 'type' => 'string', 'example' => 'sr-000c2rz7q8tkc0g4xgao', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'SecondarySiteServers' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'server' => [ 'description' => 'List of protected servers on the secondary site.', 'type' => 'array', 'items' => [ 'description' => 'Protected server on the secondary site.', 'type' => 'object', 'properties' => [ 'AgentVersion' => ['description' => 'Client version number.', 'type' => 'string', 'example' => '3.7.3', 'title' => ''], 'ConnectionStatus' => ['description' => 'Connection status of the protected server.', 'type' => 'string', 'example' => 'connected', 'title' => ''], 'IpAddress' => ['description' => 'IP address of the protected server.', 'type' => 'string', 'example' => '192.168.1.4', 'title' => ''], 'ServerId' => ['description' => 'ID of the protected server.', 'type' => 'string', 'example' => 'sr-000ikcyl8ucxtxl5f7pi', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"C0D9AAEE-8A21-5693-BCBD-8548914E4F3B\\",\\n \\"Success\\": true,\\n \\"PrimarySiteGatewayInfo\\": {\\n \\"Status\\": \\"connected\\",\\n \\"GatewayId\\": \\"gw-000bzkmmlwgzptnzsdnh\\",\\n \\"Version\\": \\"3.7.3\\",\\n \\"HeartbeatedTime\\": 1642562996\\n },\\n \\"SecondarySiteGatewayInfo\\": {\\n \\"Status\\": \\"connected\\",\\n \\"GatewayId\\": \\"gw-0005qxusucbigzug9wpe\\",\\n \\"Version\\": \\"3.7.3\\",\\n \\"HeartbeatedTime\\": 1642562996\\n },\\n \\"PrimarySiteServers\\": {\\n \\"server\\": [\\n {\\n \\"AgentVersion\\": \\"3.7.3\\",\\n \\"ConnectionStatus\\": \\"connected\\",\\n \\"IpAddress\\": \\"30.42.105.6\\",\\n \\"ServerId\\": \\"sr-000c2rz7q8tkc0g4xgao\\"\\n }\\n ]\\n },\\n \\"SecondarySiteServers\\": {\\n \\"server\\": [\\n {\\n \\"AgentVersion\\": \\"3.7.3\\",\\n \\"ConnectionStatus\\": \\"connected\\",\\n \\"IpAddress\\": \\"192.168.1.4\\",\\n \\"ServerId\\": \\"sr-000ikcyl8ucxtxl5f7pi\\"\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'Query site pair statistics information', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'hdr:DescribeSitePairStatistics', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeSitePairStatistics'], ], ], ], 'DescribeSitePairs' => [ 'summary' => 'Query site pair information.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrEJMNXE', 'FEATUREhdrKVSJIZ', 'FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], ], 'parameters' => [ [ 'name' => 'SitePairType', 'in' => 'query', 'schema' => ['description' => 'Site pair type ', 'type' => 'string', 'required' => false, 'example' => 'cloud2cloud', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'Current page number. ', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'Number of entries per page for paged query. Default value is 10. ', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'Request ID', 'type' => 'string', 'example' => '24CFBF97-EAD7-5D53-8D50-7F9E9D20C3A3', 'title' => ''], 'Success' => ['description' => 'Indicates whether the operation succeeded.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], 'Code' => ['description' => 'Status code.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'Error message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'PageSize' => ['description' => 'Number of entries per page for paged query. Default value is 10.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'PageNumber' => ['description' => 'Current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], 'TotalCount' => ['description' => 'Total quantity.', 'type' => 'integer', 'format' => 'int32', 'example' => '28', 'title' => ''], 'SitePairs' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'sitePair' => [ 'description' => 'Site pair information', 'type' => 'array', 'items' => [ 'description' => 'Site pair information', 'type' => 'object', 'properties' => [ 'SitePairType' => ['description' => 'Site pair type ', 'type' => 'string', 'example' => 'cloud2cloud', 'title' => ''], 'LocalSiteName' => ['description' => 'Local site name ', 'type' => 'string', 'example' => 'local-site', 'title' => ''], 'SecondarySiteId' => ['description' => 'Secondary site ID ', 'type' => 'string', 'example' => 'si-0007nrkb2riv9yalg8s8', 'title' => ''], 'PrimarySiteId' => ['description' => 'Primary site ID', 'type' => 'string', 'example' => 'si-000as7kbj0cmlp3tt60m', 'title' => ''], 'Version' => ['description' => 'Gateway version number', 'type' => 'string', 'example' => '3.7.3', 'title' => ''], 'ServerCount' => ['description' => 'Number of protected servers ', 'type' => 'integer', 'format' => 'int32', 'example' => '14', 'title' => ''], 'CloudSiteName' => ['description' => 'Cloud site name ', 'type' => 'string', 'example' => 'cloud-site', 'title' => ''], 'SitePairId' => ['description' => 'Site pair ID', 'type' => 'string', 'example' => 's-0003obqyc8f8lx2pf6m9', 'title' => ''], 'SecondarySiteName' => ['description' => 'Secondary site name', 'type' => 'string', 'example' => 'SH', 'title' => ''], 'PrimarySiteName' => ['description' => 'Primary site name', 'type' => 'string', 'example' => 'HZ', 'title' => ''], 'CreatedTime' => ['description' => 'Creation Time', 'type' => 'integer', 'format' => 'int64', 'example' => '1636092147', 'title' => ''], 'ReplicationStatistics' => [ 'description' => 'Replication status statistics', 'type' => 'object', 'properties' => [ 'Healthy' => ['description' => 'The quantity of protected servers in a healthy state (full replication, real-time replication).', 'type' => 'integer', 'format' => 'int64', 'example' => '4', 'title' => ''], 'Warning' => ['description' => 'Quantity of protected servers in warning status (for example, RPO exceeding 20 minutes, temporary disconnection, etc.)', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''], 'Critical' => ['description' => 'The quantity of protected servers in a critical state (such as replication failed).', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''], 'NotApplicable' => ['description' => 'The quantity of protected servers in other states.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"24CFBF97-EAD7-5D53-8D50-7F9E9D20C3A3\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 5,\\n \\"TotalCount\\": 28,\\n \\"SitePairs\\": {\\n \\"sitePair\\": [\\n {\\n \\"SitePairType\\": \\"cloud2cloud\\",\\n \\"LocalSiteName\\": \\"local-site\\",\\n \\"SecondarySiteId\\": \\"si-0007nrkb2riv9yalg8s8\\",\\n \\"PrimarySiteId\\": \\"si-000as7kbj0cmlp3tt60m\\",\\n \\"Version\\": \\"3.7.3\\",\\n \\"ServerCount\\": 14,\\n \\"CloudSiteName\\": \\"cloud-site\\",\\n \\"SitePairId\\": \\"s-0003obqyc8f8lx2pf6m9\\",\\n \\"SecondarySiteName\\": \\"SH\\",\\n \\"PrimarySiteName\\": \\"HZ\\",\\n \\"CreatedTime\\": 1636092147,\\n \\"ReplicationStatistics\\": {\\n \\"Healthy\\": 4,\\n \\"Warning\\": 0,\\n \\"Critical\\": 0,\\n \\"NotApplicable\\": 0\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'Query site pair information ', 'changeSet' => [ ['createdAt' => '2022-03-03T07:59:07.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2021-11-16T02:41:16.000Z', 'description' => 'Response parameters changed, Error codes changed'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'hdr:DescribeSitePairs', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeSitePairs'], ], ], ], 'DescribeSummary' => [ 'summary' => 'Queries overview information.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrKVSJIZ', 'FEATUREhdrEJMNXE', 'FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'Request ID.', 'type' => 'string', 'example' => 'DE78056B-E82A-52FD-BF5E-F737D8B63845', 'title' => ''], 'Success' => ['description' => 'Indicates whether the request succeeded.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], 'ServerCount' => ['description' => 'Total number of protected servers.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''], 'TotalSize' => ['description' => 'Total number of site pairs.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''], 'Code' => ['description' => 'Status code.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'Response message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'DbServerCount' => ['description' => 'Number of database servers.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''], 'SiteCount' => ['description' => 'Number of sites.', 'type' => 'integer', 'format' => 'int64', 'example' => '4', 'title' => ''], 'ReplicationDetails' => [ 'description' => 'Replication status statistics.', 'type' => 'object', 'properties' => [ 'WarningServers' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'warningServer' => [ 'description' => 'Information about protected servers in warning status.', 'type' => 'array', 'items' => [ 'description' => 'Information about a protected server in warning status.', 'type' => 'object', 'properties' => [ 'ServerId' => ['description' => 'Protected server ID.', 'type' => 'string', 'example' => 'sr-000fzufp79icz33l4pak', 'title' => ''], 'InstanceId' => ['description' => 'Protected server instance ID.', 'type' => 'string', 'example' => 'i-bp1a4374akk4527gbt9x', 'title' => ''], 'SitePairId' => ['description' => 'Protected server site pair ID.', 'type' => 'string', 'example' => 's-000bzkmmlwh5riquud19', 'title' => ''], 'Rpo' => ['description' => 'RPO value.', 'type' => 'integer', 'format' => 'int64', 'example' => '30', 'title' => ''], 'Status' => ['description' => 'Status.', 'type' => 'string', 'example' => 'replicating', 'title' => ''], 'ConnectionStatus' => ['description' => 'Connection status.', 'type' => 'string', 'example' => 'connected', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'CriticalServers' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'criticalServer' => [ 'description' => 'Information about protected servers in critical status.', 'type' => 'array', 'items' => [ 'description' => 'Information about a protected server in critical status.', 'type' => 'object', 'properties' => [ 'ServerId' => ['description' => 'Protected server ID.', 'type' => 'string', 'example' => 'sr-0005qxusucb0fqqdf4ba', 'title' => ''], 'InstanceId' => ['description' => 'Protected server instance ID.', 'type' => 'string', 'example' => 'i-bp1a4374akk4527gbt9x', 'title' => ''], 'SitePairId' => ['description' => 'Protected server site pair ID.', 'type' => 'string', 'example' => 's-0005qxusucbii3ba2uve', 'title' => ''], 'Rpo' => ['description' => 'Recovery Point Objective (RPO)', 'type' => 'integer', 'format' => 'int64', 'example' => '30', 'title' => ''], 'Status' => ['description' => 'Status.', 'type' => 'string', 'example' => 'replicating', 'title' => ''], 'ConnectionStatus' => ['description' => 'Connection status.', 'type' => 'string', 'example' => 'connected', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'NotApplicableServers' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'notApplicableServer' => [ 'description' => 'Information about protected servers not in replication status.', 'type' => 'array', 'items' => [ 'description' => 'Information about a protected server not in replication status.', 'type' => 'object', 'properties' => [ 'ServerId' => ['description' => 'Protected server ID.', 'type' => 'string', 'example' => 'sr-000iji78mxxc93yldd2e', 'title' => ''], 'InstanceId' => ['description' => 'Protected server instance ID.', 'type' => 'string', 'example' => 'i-bp1a4374akk4527gbt9x', 'title' => ''], 'SitePairId' => ['description' => 'Protected server site pair ID.', 'type' => 'string', 'example' => 's-000bzkmmlwh5riquud19', 'title' => ''], 'Rpo' => ['description' => 'RPO', 'type' => 'integer', 'format' => 'int64', 'example' => '40', 'title' => ''], 'Status' => ['description' => 'Status.', 'type' => 'string', 'example' => 'replicating', 'title' => ''], 'ConnectionStatus' => ['description' => 'Connection status.', 'type' => 'string', 'example' => 'connected', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"DE78056B-E82A-52FD-BF5E-F737D8B63845\\",\\n \\"Success\\": true,\\n \\"ServerCount\\": 2,\\n \\"TotalSize\\": 10,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"DbServerCount\\": 0,\\n \\"SiteCount\\": 4,\\n \\"ReplicationDetails\\": {\\n \\"WarningServers\\": {\\n \\"warningServer\\": [\\n {\\n \\"ServerId\\": \\"sr-000fzufp79icz33l4pak\\",\\n \\"InstanceId\\": \\"i-bp1a4374akk4527gbt9x\\",\\n \\"SitePairId\\": \\"s-000bzkmmlwh5riquud19\\",\\n \\"Rpo\\": 30,\\n \\"Status\\": \\"replicating\\",\\n \\"ConnectionStatus\\": \\"connected\\"\\n }\\n ]\\n },\\n \\"CriticalServers\\": {\\n \\"criticalServer\\": [\\n {\\n \\"ServerId\\": \\"sr-0005qxusucb0fqqdf4ba\\",\\n \\"InstanceId\\": \\"i-bp1a4374akk4527gbt9x\\",\\n \\"SitePairId\\": \\"s-0005qxusucbii3ba2uve\\",\\n \\"Rpo\\": 30,\\n \\"Status\\": \\"replicating\\",\\n \\"ConnectionStatus\\": \\"connected\\"\\n }\\n ]\\n },\\n \\"NotApplicableServers\\": {\\n \\"notApplicableServer\\": [\\n {\\n \\"ServerId\\": \\"sr-000iji78mxxc93yldd2e\\",\\n \\"InstanceId\\": \\"i-bp1a4374akk4527gbt9x\\",\\n \\"SitePairId\\": \\"s-000bzkmmlwh5riquud19\\",\\n \\"Rpo\\": 40,\\n \\"Status\\": \\"replicating\\",\\n \\"ConnectionStatus\\": \\"connected\\"\\n }\\n ]\\n }\\n }\\n}","type":"json"}]', 'title' => 'Query overview information', 'changeSet' => [ ['createdAt' => '2021-11-16T02:41:16.000Z', 'description' => 'Response parameters changed, Error codes changed'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'hdr:DescribeSummary', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeSummary'], ], ], ], 'DescribeTask' => [ 'summary' => 'Queries the details of a task.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrEJMNXE', 'FEATUREhdrKVSJIZ', 'FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], ], 'parameters' => [ [ 'name' => 'TaskId', 'in' => 'query', 'schema' => ['description' => 'The task ID.', 'type' => 'string', 'required' => true, 'example' => 't-0005qxusucbnl5efovq9', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Progress' => ['description' => 'The task progress, in percent.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], 'Success' => ['description' => 'Indicates whether the task is successful.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], 'Message' => ['description' => 'The error message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '8F8A2274-F2A5-5782-89A0-7FA442BFA16B', 'title' => ''], 'UpdatedTime' => ['description' => 'The time when the task was last updated.', 'type' => 'integer', 'format' => 'int64', 'example' => '1636452195', 'title' => ''], 'StatusCode' => ['description' => 'The status of the task.', 'type' => 'string', 'example' => 'hdr.task.TestFailoverTask.waitStartFailover', 'title' => ''], 'Code' => ['description' => 'The return code.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Name' => ['description' => 'The name of the task.', 'type' => 'string', 'example' => 'hdr.task.name.TestFailoverTask', 'title' => ''], 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 't-000bzkmmlwh57miq4mwh', 'title' => ''], 'Content' => ['description' => 'The content of the task.', 'type' => 'string', 'example' => '-', 'title' => ''], 'CreatedTime' => ['description' => 'The time when the task was created.', 'type' => 'integer', 'format' => 'int64', 'example' => '1646100927', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Progress\\": 100,\\n \\"Success\\": true,\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"8F8A2274-F2A5-5782-89A0-7FA442BFA16B\\",\\n \\"UpdatedTime\\": 1636452195,\\n \\"StatusCode\\": \\"hdr.task.TestFailoverTask.waitStartFailover\\",\\n \\"Code\\": \\"200\\",\\n \\"Name\\": \\"hdr.task.name.TestFailoverTask\\",\\n \\"TaskId\\": \\"t-000bzkmmlwh57miq4mwh\\",\\n \\"Content\\": \\"-\\",\\n \\"CreatedTime\\": 1646100927\\n}","type":"json"}]', 'title' => 'Query Job', 'changeSet' => [ ['createdAt' => '2022-03-03T07:59:07.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'hdr:DescribeTask', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeTask'], ], ], ], 'DescribeTasks' => [ 'summary' => 'Lists tasks.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrKVSJIZ', 'FEATUREhdrEJMNXE', 'FEATUREhdrF01CKY', 'FEATUREhdrE49XN0'], ], 'parameters' => [ [ 'name' => 'SitePairId', 'in' => 'query', 'schema' => ['description' => 'ID of the site pair.', 'type' => 'string', 'required' => false, 'example' => 's-000cm9ax8sh22u8r9gs0', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'Page number of the paged query.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'Number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '10', 'example' => '10', 'title' => ''], ], [ 'name' => 'SortBy', 'in' => 'query', 'schema' => [ 'description' => 'Sort by creation time or update time.', 'enumValueTitles' => ['updatedTime' => 'updatedTime', 'createdTime' => 'createdTime'], 'type' => 'string', 'required' => false, 'example' => 'createdTime', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'ID of the request.', 'type' => 'string', 'example' => '86FFBA6E-D087-53E0-8593-4575925CB9DC', 'title' => ''], 'Success' => ['description' => 'Indicates whether the call succeeded.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], 'Code' => ['description' => 'Error code.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'Error message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'PageSize' => ['description' => 'Number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'PageNumber' => ['description' => 'Page number of the paged query.', 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''], 'TotalCount' => ['description' => 'Total number of entries.', 'type' => 'integer', 'format' => 'int64', 'example' => '53', 'title' => ''], 'Tasks' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'task' => [ 'description' => 'List of tasks.', 'type' => 'array', 'items' => [ 'description' => 'Task list', 'type' => 'object', 'properties' => [ 'Progress' => ['description' => 'Task progress, as a percentage.', 'type' => 'integer', 'format' => 'int32', 'example' => '90', 'title' => ''], 'UpdatedTime' => ['description' => 'The time when the task was last modified.', 'type' => 'integer', 'format' => 'int64', 'example' => '1637292645', 'title' => ''], 'StatusCode' => ['description' => 'Status of the task.', 'type' => 'string', 'example' => 'hdr.task.completed', 'title' => ''], 'TargetName' => ['description' => 'Target of the task.', 'type' => 'string', 'example' => 'sr-000ftuch27gfuv8wvpyj', 'title' => ''], 'Name' => ['description' => 'Name of the task.', 'type' => 'string', 'example' => 'CommitFailoverTask', 'title' => ''], 'CreatedTime' => ['description' => 'The time when the task was created.', 'type' => 'integer', 'format' => 'int64', 'example' => '1636092147', 'title' => ''], 'TaskId' => ['description' => 'ID of the task.', 'type' => 'string', 'example' => 't-0007wl5r0hvxrp3c3x8z', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"86FFBA6E-D087-53E0-8593-4575925CB9DC\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 3,\\n \\"TotalCount\\": 53,\\n \\"Tasks\\": {\\n \\"task\\": [\\n {\\n \\"Progress\\": 90,\\n \\"UpdatedTime\\": 1637292645,\\n \\"StatusCode\\": \\"hdr.task.completed\\",\\n \\"TargetName\\": \\"sr-000ftuch27gfuv8wvpyj\\",\\n \\"Name\\": \\"CommitFailoverTask\\",\\n \\"CreatedTime\\": 1636092147,\\n \\"TaskId\\": \\"t-0007wl5r0hvxrp3c3x8z\\"\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'Query Job List ', 'changeSet' => [ ['createdAt' => '2022-03-03T07:59:07.000Z', 'description' => 'Response parameters changed, Error codes changed'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'hdr:DescribeTasks', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeTasks'], ], ], ], 'DisableReplication' => [ 'summary' => 'Stop replication.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrEJMNXE', 'FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], ], 'parameters' => [ [ 'name' => 'ServerId', 'in' => 'query', 'schema' => ['description' => 'Protected server ID.', 'type' => 'string', 'required' => false, 'example' => 'sr-000cvyfewfi6fzi9zoql', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'Interface status or POP error code. Value descriptions are as follows: 2xx: Success. 3xx: Redirection. 4xx: Request error. 5xx: Server error.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'Error message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'B7F69F73-51C4-5D3F-B2BE-E1BD99022C15', 'title' => ''], 'Success' => ['description' => 'Indicates whether the operation succeeded.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"B7F69F73-51C4-5D3F-B2BE-E1BD99022C15\\",\\n \\"Success\\": true\\n}","type":"json"}]', 'title' => 'Stop copy', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:DisableReplication', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DisableReplication'], ], ], ], 'EnableReplication' => [ 'summary' => 'Enables replication.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrEJMNXE', 'FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], ], 'parameters' => [ [ 'name' => 'ServerId', 'in' => 'query', 'schema' => ['description' => 'The ID of the protected server.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'sr-0005qxusucbo6yomzb9x'], ], [ 'name' => 'ReplicationUseSsd', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the replication instance uses standard SSDs.', 'type' => 'boolean', 'required' => false, 'title' => '', 'example' => 'false'], ], [ 'name' => 'ReplicationUseEssd', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the replication instance uses ESSDs.', 'type' => 'boolean', 'required' => false, 'title' => '', 'example' => 'false'], ], [ 'name' => 'ReplicationNetwork', 'in' => 'query', 'schema' => ['description' => 'The ID of the VSwitch for the replication network.', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp1g0s2u3b2kbn46kiy53', 'title' => ''], ], [ 'name' => 'RecoveryNetwork', 'in' => 'query', 'schema' => ['description' => 'The ID of the VSwitch for the recovery network.', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp1g0s2u3b2kbn46kiy53', 'title' => ''], ], [ 'name' => 'CrashConsistentPointPolicy', 'in' => 'query', 'schema' => ['description' => 'The recovery point policy.', 'type' => 'string', 'required' => false, 'example' => '{"scheduleType":"CRON","expression":"0 0 */1 * * 0,1,2,3,4,5,6","initialDelay":0}', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'The API status or a POP error code. Valid values: 2xx: success. 3xx: redirection. 4xx: client error. 5xx: server error.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'The response message. A value of \'success\' is returned if the request is successful.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'RequestId' => ['description' => 'The unique ID of the request.', 'type' => 'string', 'example' => 'E50FE4A6-C876-5D6F-8A09-93442308AA7B', 'title' => ''], 'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"E50FE4A6-C876-5D6F-8A09-93442308AA7B\\",\\n \\"Success\\": true\\n}","type":"json"}]', 'title' => 'Start replication', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:EnableReplication', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'EnableReplication'], ], ], ], 'Failback' => [ 'summary' => 'Failback.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrKVSJIZ', 'FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], ], 'parameters' => [ [ 'name' => 'ServerId', 'in' => 'query', 'schema' => ['description' => 'Protected server ID', 'type' => 'string', 'required' => false, 'example' => 'sr-000bzkmmlwghj95tnx15', 'title' => ''], ], [ 'name' => 'RecoveryInfrastructureId', 'in' => 'query', 'schema' => ['description' => 'Recovery site infrastructure ID', 'type' => 'string', 'required' => false, 'example' => 'is-0007rvzart0rz2byr2x0', 'title' => ''], ], [ 'name' => 'RecoveryInstanceName', 'in' => 'query', 'schema' => ['description' => 'Instance name for disaster recovery', 'type' => 'string', 'required' => false, 'example' => 'HDR_Recovery-sr-0007rvzart0rz2bv9fzm', 'title' => ''], ], [ 'name' => 'RecoveryCpu', 'in' => 'query', 'schema' => ['description' => 'Number of CPU cores for the disaster recovery instance', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '4', 'title' => ''], ], [ 'name' => 'RecoveryMemory', 'in' => 'query', 'schema' => ['description' => 'Memory size for the disaster recovery instance, in MB', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '4294967296', 'title' => ''], ], [ 'name' => 'RecoveryInstanceType', 'in' => 'query', 'schema' => ['description' => 'Instance type for disaster recovery. If not specified, the system automatically selects an available instance type based on the number of CPU cores and memory size.', 'type' => 'string', 'required' => false, 'example' => 'ecs.c5.2xlarge', 'title' => ''], ], [ 'name' => 'RecoveryNetwork', 'in' => 'query', 'schema' => ['description' => 'VSwitch ID of the failback instance', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp1xmea0mkjtxqoubk7q8', 'title' => ''], ], [ 'name' => 'RecoveryReserveIp', 'in' => 'query', 'schema' => ['description' => 'Retain the original IP address for the failback instance', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'RecoveryUseDhcp', 'in' => 'query', 'schema' => ['description' => 'Use DHCP to assign an IP address to the failback instance', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'RecoveryIpAddress', 'in' => 'query', 'schema' => ['description' => 'Manually set the IP address for the failback instance', 'type' => 'string', 'required' => false, 'example' => '192.168.2.2', 'title' => ''], ], [ 'name' => 'RecoveryPostScriptType', 'in' => 'query', 'schema' => ['description' => 'Script type to run after the failback instance starts', 'type' => 'string', 'required' => false, 'example' => 'SHELL', 'title' => ''], ], [ 'name' => 'RecoveryPostScriptContent', 'in' => 'query', 'schema' => ['description' => 'Script content to run after the failback instance starts', 'type' => 'string', 'required' => false, 'example' => '"echo \\"127.0.0.1 kubernetes.docker.internal\\" >> /etc/hosts"', 'title' => ''], ], [ 'name' => 'RecoveryPointId', 'in' => 'query', 'schema' => ['description' => 'Recovery point ID', 'type' => 'string', 'required' => false, 'example' => 'rp-0001625ljmig7ahibe0y', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'Error code', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'Error message', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'RequestId' => ['description' => 'Request ID.', 'type' => 'string', 'example' => '56CF7F68-C07B-5BE2-BE82-09D8E9719076', 'title' => ''], 'TaskId' => ['description' => 'Task ID.', 'type' => 'string', 'example' => 't-0004ka624vrza82g46ne', 'title' => ''], 'Success' => ['description' => 'Indicates whether the request succeeded.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"56CF7F68-C07B-5BE2-BE82-09D8E9719076\\",\\n \\"TaskId\\": \\"t-0004ka624vrza82g46ne\\",\\n \\"Success\\": true\\n}","type":"json"}]', 'title' => 'Fault recovery', 'changeSet' => [ ['createdAt' => '2022-03-03T07:59:07.000Z', 'description' => 'Request parameters changed, Error codes changed'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:Failback', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'Failback'], ], ], ], 'ForcedFailover' => [ 'summary' => 'Performs a forced failover.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrKVSJIZ', 'FEATUREhdrEJMNXE', 'FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], ], 'parameters' => [ [ 'name' => 'ServerId', 'in' => 'query', 'schema' => ['description' => 'The ID of the protected server.', 'type' => 'string', 'required' => false, 'example' => 'sr-000ih1rl47q6hksc910d', 'title' => ''], ], [ 'name' => 'RecoveryInstanceName', 'in' => 'query', 'schema' => ['description' => 'The name of the failover instance.', 'type' => 'string', 'required' => false, 'example' => 'HDR_Recovery-sr-000bzkmmlwghq3soqry2', 'title' => ''], ], [ 'name' => 'RecoveryCpu', 'in' => 'query', 'schema' => ['description' => 'The number of vCPUs for the failover instance.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '4', 'title' => ''], ], [ 'name' => 'RecoveryMemory', 'in' => 'query', 'schema' => ['description' => 'The memory size of the failover instance.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '4294967296', 'title' => ''], ], [ 'name' => 'RecoveryInstanceType', 'in' => 'query', 'schema' => ['description' => 'The instance type of the failover instance.', 'type' => 'string', 'required' => false, 'example' => 'ecs.r5.3xlarge', 'title' => ''], ], [ 'name' => 'RecoveryUseSsd', 'in' => 'query', 'schema' => ['description' => 'Indicates whether the cloud disks of the failover instance are solid-state drives (SSDs).', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'RecoveryUseEssd', 'in' => 'query', 'schema' => ['description' => 'Indicates whether the cloud disks of the failover instance are Enhanced SSDs (ESSDs).', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'RecoveryNetwork', 'in' => 'query', 'schema' => ['description' => 'The ID of the vSwitch where the failover instance is located.', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp1fh05y7ybq9kep6rtwu', 'title' => ''], ], [ 'name' => 'RecoveryReserveIp', 'in' => 'query', 'schema' => ['description' => 'Indicates whether the failover instance retains the IP address of the source server.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'RecoveryUseDhcp', 'in' => 'query', 'schema' => ['description' => 'Indicates whether the failover instance uses Dynamic Host Configuration Protocol (DHCP) to assign an IP address.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'RecoveryIpAddress', 'in' => 'query', 'schema' => ['description' => 'The IP address that is manually specified for the failover instance.', 'type' => 'string', 'required' => false, 'example' => '192.168.2.2', 'title' => ''], ], [ 'name' => 'RecoveryPostScriptType', 'in' => 'query', 'schema' => ['description' => 'The type of the script to execute after the failover instance starts.', 'type' => 'string', 'required' => false, 'example' => 'SHELL', 'title' => ''], ], [ 'name' => 'RecoveryPostScriptContent', 'in' => 'query', 'schema' => ['description' => 'The content of the script to execute after the failover instance starts.', 'type' => 'string', 'required' => false, 'example' => 'echo \\"127.0.0.1 kubernetes.docker.internal\\" >> /etc/hosts', 'title' => ''], ], [ 'name' => 'RecoveryPointId', 'in' => 'query', 'schema' => ['description' => 'The recovery point ID.', 'type' => 'string', 'required' => false, 'example' => 'rp-000184qxs690bth6jyqn', 'title' => ''], ], [ 'name' => 'RecoveryPointTime', 'in' => 'query', 'schema' => ['description' => 'The time of the recovery point.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1636526948', 'title' => ''], ], [ 'name' => 'EipAddressId', 'in' => 'query', 'schema' => ['description' => 'The ID of the elastic network interface (ENI) that is attached to the instance for failover.', 'type' => 'string', 'required' => false, 'example' => 'eip-bp1x7nua6eab8m4vsis9k', 'title' => ''], ], [ 'name' => 'RecoveryEssdPerformanceLevel', 'in' => 'query', 'schema' => [ 'description' => 'The performance level (PL) of the ESSD. The supported PL is determined by the minimum cloud disk size.', 'type' => 'string', 'default' => 'PL1', 'enum' => ['PL0', 'PL1', 'PL2', 'PL3'], 'required' => false, 'example' => 'PL2', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'The error code.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'The error message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '26DF0E81-08E2-5AE3-96AA-05F5F826261C', 'title' => ''], 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 't-000ios55mggw4ifiy3nc', 'title' => ''], 'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"26DF0E81-08E2-5AE3-96AA-05F5F826261C\\",\\n \\"TaskId\\": \\"t-000ios55mggw4ifiy3nc\\",\\n \\"Success\\": true\\n}","type":"json"}]', 'title' => 'Failover', 'changeSet' => [ ['createdAt' => '2024-01-09T06:44:32.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-01-09T06:59:39.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-03-03T07:59:07.000Z', 'description' => 'Request parameters changed, Error codes changed'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:ForcedFailover', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'ForcedFailover'], ], ], ], 'RegisterServers' => [ 'summary' => 'Add servers to protection.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrEJMNXE', 'FEATUREhdrE49XN0'], ], 'parameters' => [ [ 'name' => 'SitePairId', 'in' => 'query', 'schema' => ['description' => 'Site pair ID', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 's-000cm9ax8sgzwujrzdwt'], ], [ 'name' => 'ServerInstancesInfo', 'in' => 'query', 'schema' => ['description' => 'Server registration information', 'type' => 'string', 'required' => false, 'example' => '"[{\\"instanceId\\":\\"i-uf60ngpe9sseu5gsgu45\\",\\"privateIpAddress\\":\\"192.168.1.198\\",\\"osType\\":\\"linux\\",\\"osName\\":\\"CentOS 7.8 64位\\",\\"cpu\\":2,\\"memory\\":4294967296,\\"hostName\\":\\"hdr-test\\"}]"', 'title' => ''], ], [ 'name' => 'AgentPort', 'in' => 'query', 'schema' => ['description' => 'Agent service port. Default is 9080.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '9080', 'default' => '9080', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'Response code', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'Error message', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'RequestId' => ['description' => 'Request ID', 'type' => 'string', 'example' => 'D76E741C-68B7-5281-8C5B-698AD06B0D89', 'title' => ''], 'TaskId' => ['description' => 'Task ID', 'type' => 'string', 'example' => 't-0001nlbcl4bynbb67x4w', 'title' => ''], 'Success' => ['description' => 'Indicates whether the operation succeeded', 'type' => 'boolean', 'example' => 'True', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"D76E741C-68B7-5281-8C5B-698AD06B0D89\\",\\n \\"TaskId\\": \\"t-0001nlbcl4bynbb67x4w\\",\\n \\"Success\\": true\\n}","type":"json"}]', 'title' => 'Add a protected server', 'changeSet' => [ ['createdAt' => '2022-03-02T02:04:09.000Z', 'description' => 'Request parameters changed'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:RegisterServers', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'RegisterServers'], ], ], ], 'ReversedDisableReplication' => [ 'summary' => 'Stops reverse replication.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrKVSJIZ', 'FEATUREhdrF01CKY', 'FEATUREhdrEJMNXE'], ], 'parameters' => [ [ 'name' => 'ServerId', 'in' => 'query', 'schema' => ['description' => 'ID of the protected server.', 'type' => 'string', 'required' => false, 'example' => 'sr-000cm9ax8sh2i6pc16u9', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'Return code.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'Error message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'RequestId' => ['description' => 'Request ID.', 'type' => 'string', 'example' => '5904D638-152A-5F1F-8652-E535EABF3ABA', 'title' => ''], 'Success' => ['description' => 'Indicates whether the operation succeeded.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"5904D638-152A-5F1F-8652-E535EABF3ABA\\",\\n \\"Success\\": true\\n}","type":"json"}]', 'title' => 'Stop reverse replication', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:ReversedDisableReplication', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'ReversedDisableReplication'], ], ], ], 'ReversedEnableReplication' => [ 'summary' => 'Start reverse replication.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrE49XN0', 'FEATUREhdrF01CKY', 'FEATUREhdrEJMNXE', 'FEATUREhdrKVSJIZ'], ], 'parameters' => [ [ 'name' => 'ServerId', 'in' => 'query', 'schema' => ['description' => 'Protected server ID.', 'type' => 'string', 'required' => false, 'example' => 'sr-000cm9ax8sh2381wa7kv', 'title' => ''], ], [ 'name' => 'ReplicationUseOriginalInstance', 'in' => 'query', 'schema' => ['description' => 'Use the source instance for reverse replication.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'default' => 'false', 'title' => ''], ], [ 'name' => 'ReplicationInfrastructureId', 'in' => 'query', 'schema' => ['description' => 'Target site infrastructure ID.', 'type' => 'string', 'required' => false, 'example' => 'is-000bzkmmlwgibbduuoff', 'title' => ''], ], [ 'name' => 'ReplicationLocation', 'in' => 'query', 'schema' => ['description' => '-', 'type' => 'string', 'required' => false, 'example' => '{'."\n" .' "type": "Datacenter",'."\n" .' "name": "Datacenter",'."\n" .' "moId": "datacenter-3",'."\n" .' "path": "Datacenter",'."\n" .' "properties": {'."\n" .' "folderId": "group-v4"'."\n" .' },'."\n" .' "__level": 0'."\n" .'}', 'title' => ''], ], [ 'name' => 'ReplicationComputeResource', 'in' => 'query', 'schema' => ['description' => '-', 'type' => 'string', 'required' => false, 'example' => '{'."\n" .' "type": "ComputeResource",'."\n" .' "name": "*",'."\n" .' "moId": "*",'."\n" .' "path": "Datacenter/host/*",'."\n" .' "properties": {'."\n" .' "resourcePoolId": "resgroup-33135",'."\n" .' "hasHost": true'."\n" .' },'."\n" .' "__level": 0'."\n" .'}', 'title' => ''], ], [ 'name' => 'ReplicationDatastore', 'in' => 'query', 'schema' => ['description' => '-', 'type' => 'string', 'required' => false, 'example' => '{'."\n" .' "type": "Datastore",'."\n" .' "name": "NTNX_storage",'."\n" .' "moId": "datastore-*",'."\n" .' "path": "*",'."\n" .' "properties": {'."\n" .' "freeSpace": "2406020349952",'."\n" .' "capacity": "14817637171200"'."\n" .' },'."\n" .' "__level": 0'."\n" .'}', 'title' => ''], ], [ 'name' => 'ReplicationNetwork', 'in' => 'query', 'schema' => ['description' => 'VSwitch ID of the replication network for reverse replication.', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp1ii4x07tey6sisg4blp', 'title' => ''], ], [ 'name' => 'ReplicationUseDhcp', 'in' => 'query', 'schema' => ['description' => '-', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'ReplicationIpAddress', 'in' => 'query', 'schema' => ['description' => '-', 'type' => 'string', 'required' => false, 'example' => '192.168.0.12', 'title' => ''], ], [ 'name' => 'ReplicationNetMask', 'in' => 'query', 'schema' => ['description' => '-', 'type' => 'string', 'required' => false, 'example' => '192.168.0.0/16', 'title' => ''], ], [ 'name' => 'ReplicationDns', 'in' => 'query', 'schema' => ['description' => '-', 'type' => 'string', 'required' => false, 'example' => '10.11.0.10', 'title' => ''], ], [ 'name' => 'ReplicationGateway', 'in' => 'query', 'schema' => ['description' => '-', 'type' => 'string', 'required' => false, 'example' => '10.11.0.1', 'title' => ''], ], [ 'name' => 'RecoveryNetwork', 'in' => 'query', 'schema' => ['description' => 'VSwitch ID of the recovery network for reverse replication.', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp1xmea0mkjtxqoubk7q8', 'title' => ''], ], [ 'name' => 'CrashConsistentPointPolicy', 'in' => 'query', 'schema' => ['description' => '-', 'type' => 'string', 'required' => false, 'example' => '{"scheduleType":"CRON","expression":"0 0 */1 * * 0,1,2,3,4,5,6","initialDelay":0}', 'title' => ''], ], [ 'name' => 'AppConsistentPointPolicy', 'in' => 'query', 'schema' => ['description' => '-', 'type' => 'string', 'required' => false, 'example' => '{"scheduleType":"CRON","expression":"0 0 */1 * * 0,1,2,3,4,5,6","initialDelay":0}', 'title' => ''], ], [ 'name' => 'ShadowInstanceType', 'in' => 'query', 'schema' => ['description' => '-', 'type' => 'string', 'required' => false, 'example' => 'ecs.g6.xlarge', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'API return code.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'Error message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'RequestId' => ['description' => 'Request ID.', 'type' => 'string', 'example' => 'D5CF3A51-1F39-5B16-AC0C-AD9B632D100D', 'title' => ''], 'TaskId' => ['description' => 'Job ID.', 'type' => 'string', 'example' => 't-0004ka624vrxwublmqw6', 'title' => ''], 'Success' => ['description' => 'Indicates whether the operation succeeded.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"D5CF3A51-1F39-5B16-AC0C-AD9B632D100D\\",\\n \\"TaskId\\": \\"t-0004ka624vrxwublmqw6\\",\\n \\"Success\\": true\\n}","type":"json"}]', 'title' => 'Start reverse replication', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:ReversedEnableReplication', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'ReversedEnableReplication'], ], ], ], 'TestCleanup' => [ 'summary' => 'Cleans up the disaster recovery drills environment.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrEJMNXE', 'FEATUREhdrKVSJIZ', 'FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], ], 'parameters' => [ [ 'name' => 'ServerId', 'in' => 'query', 'schema' => ['description' => 'Protected server ID', 'type' => 'string', 'required' => false, 'example' => 'sr-000cvyfewfi6fzi9zoql', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'Error code', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'Error message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'RequestId' => ['description' => 'Request ID', 'type' => 'string', 'example' => '531E3DB9-3ED6-5F06-A09A-721F279CB64B', 'title' => ''], 'TaskId' => ['description' => 'Task ID.', 'type' => 'string', 'example' => 't-000bzkmmlwh6tpzhitdz', 'title' => ''], 'Success' => ['description' => 'Is the operation successful.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"531E3DB9-3ED6-5F06-A09A-721F279CB64B\\",\\n \\"TaskId\\": \\"t-000bzkmmlwh6tpzhitdz\\",\\n \\"Success\\": true\\n}","type":"json"}]', 'title' => 'Clean up the disaster recovery drills environment', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:TestCleanup', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'TestCleanup'], ], ], ], 'TestFailover' => [ 'summary' => 'Performs a disaster recovery drill.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrEJMNXE', 'FEATUREhdrKVSJIZ', 'FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], ], 'parameters' => [ [ 'name' => 'ServerId', 'in' => 'query', 'schema' => ['description' => 'Protected server ID', 'type' => 'string', 'required' => false, 'example' => 'sr-000cvyfewfi7eudxml1a', 'title' => ''], ], [ 'name' => 'RecoveryInstanceName', 'in' => 'query', 'schema' => ['description' => 'Instance name for the drill', 'type' => 'string', 'required' => false, 'example' => 'test-failover-instance', 'title' => ''], ], [ 'name' => 'RecoveryCpu', 'in' => 'query', 'schema' => ['description' => 'Number of CPU cores for the drill instance', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '2', 'title' => '', 'example' => '2'], ], [ 'name' => 'RecoveryMemory', 'in' => 'query', 'schema' => ['description' => 'Memory size of the drill instance, in MB', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '4294967296', 'title' => ''], ], [ 'name' => 'RecoveryInstanceType', 'in' => 'query', 'schema' => ['description' => 'Instance type for the drill. If not specified, the system automatically finds an available instance type based on the specified number of CPU cores and memory size.', 'type' => 'string', 'required' => false, 'default' => 'null', 'title' => '', 'example' => 'ecs.c5.large '], ], [ 'name' => 'RecoveryUseSsd', 'in' => 'query', 'schema' => ['description' => 'Whether the drill instance uses SSD cloud disks', 'type' => 'boolean', 'required' => false, 'default' => 'false', 'title' => '', 'example' => 'false'], ], [ 'name' => 'RecoveryUseEssd', 'in' => 'query', 'schema' => ['description' => 'Whether the drill instance uses ESSD cloud disks', 'type' => 'boolean', 'required' => false, 'default' => 'false', 'title' => '', 'example' => 'false'], ], [ 'name' => 'RecoveryNetwork', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'VSwitch ID where the drill instance resides', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp1g0s2u3b2kbn46kiy53', 'title' => ''], ], [ 'name' => 'RecoveryReserveIp', 'in' => 'query', 'schema' => ['description' => 'Whether the drill instance retains the source machine\'s IP address (requires the VSwitch where the drill runs to include the corresponding CIDR block)', 'type' => 'boolean', 'required' => false, 'default' => 'false', 'title' => '', 'example' => 'false'], ], [ 'name' => 'RecoveryUseDhcp', 'in' => 'query', 'schema' => ['description' => 'Whether the drill instance uses DHCP to assign an IP address', 'type' => 'boolean', 'required' => false, 'default' => 'false', 'title' => '', 'example' => 'false'], ], [ 'name' => 'RecoveryIpAddress', 'in' => 'query', 'schema' => ['description' => 'IP address of the drill instance', 'type' => 'string', 'required' => false, 'example' => '10.10.10.10', 'title' => ''], ], [ 'name' => 'RecoveryPostScriptType', 'in' => 'query', 'schema' => ['description' => 'Script type to execute after the drill instance starts. Options: SHELL', 'type' => 'string', 'required' => false, 'example' => 'SHELL', 'title' => ''], ], [ 'name' => 'RecoveryPostScriptContent', 'in' => 'query', 'schema' => ['description' => 'Script to execute after the drill instance starts', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'echo \\"127.0.0.1 kubernetes.docker.internal\\" >> /etc/hosts'], ], [ 'name' => 'RecoveryPointId', 'in' => 'query', 'schema' => ['description' => 'Recovery point ID used by the drill instance', 'type' => 'string', 'required' => false, 'example' => 'rp-0001cgurtbrvrkj2p2pp', 'title' => ''], ], [ 'name' => 'RecoveryPointTime', 'in' => 'query', 'schema' => ['description' => 'Recovery point time. If the recovery point ID is not specified, query available recovery points based on the recovery point time.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1646046000', 'title' => ''], ], [ 'name' => 'EipAddressId', 'in' => 'query', 'schema' => ['description' => 'Elastic IP Address ID bound to the drill instance', 'type' => 'string', 'required' => false, 'example' => 'eip-bp1nf283u9p060q4gim7m', 'title' => ''], ], [ 'name' => 'RecoveryEssdPerformanceLevel', 'in' => 'query', 'schema' => [ 'description' => 'PL level of the ESSD disk. Supported PL levels are determined by the minimum cloud disk size.', 'type' => 'string', 'default' => 'PL1', 'enum' => ['PL0', 'PL1', 'PL2', 'PL3'], 'required' => false, 'example' => 'PL3', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'Error code', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'Error message', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'RequestId' => ['description' => 'Unique request ID.', 'type' => 'string', 'example' => '6758891B-CF5A-5CA6-BF59-633573B91140', 'title' => ''], 'TaskId' => ['description' => 'Task ID.', 'type' => 'string', 'example' => 't-000h3k00ckeknbukn5a5', 'title' => ''], 'Success' => ['description' => 'Whether the call was successful.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"6758891B-CF5A-5CA6-BF59-633573B91140\\",\\n \\"TaskId\\": \\"t-000h3k00ckeknbukn5a5\\",\\n \\"Success\\": true\\n}","type":"json"}]', 'title' => 'Disaster recovery drills', 'changeSet' => [ ['createdAt' => '2024-01-09T07:12:48.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-01-09T06:59:39.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-02-28T11:04:29.000Z', 'description' => 'Request parameters changed, Error codes changed'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:TestFailover', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'TestFailover'], ], ], ], 'TriggerReversedRegister' => [ 'summary' => 'Reverse register the instance that completed failover. This operation registers the instance from the destination site back to the source site to prepare the system for reverse replication and failback.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrEJMNXE', 'FEATUREhdrKVSJIZ', 'FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], ], 'parameters' => [ [ 'name' => 'ServerId', 'in' => 'query', 'schema' => ['description' => 'ID of the protected server', 'type' => 'string', 'required' => false, 'example' => 'sr-0007rvzart0bneyhl4q1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'Error code', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'Error message', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'RequestId' => ['description' => 'Request ID', 'type' => 'string', 'example' => '1D39F0BE-B3F9-5AA9-AD49-BE8CD7B4BF7B', 'title' => ''], 'TaskId' => ['description' => 'Task ID', 'type' => 'string', 'example' => 't-000fzufp79idzl6bniso', 'title' => ''], 'Success' => ['description' => 'Indicates whether the operation succeeded', 'type' => 'boolean', 'example' => 'True', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"1D39F0BE-B3F9-5AA9-AD49-BE8CD7B4BF7B\\",\\n \\"TaskId\\": \\"t-000fzufp79idzl6bniso\\",\\n \\"Success\\": true\\n}","type":"json"}]', 'title' => 'Reverse Registration ', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:TriggerReversedRegister', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'TriggerReversedRegister'], ], ], ], 'UnregisterServer' => [ 'summary' => 'Removes a protected server from the backup service.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrEJMNXE', 'FEATUREhdrKVSJIZ', 'FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], ], 'parameters' => [ [ 'name' => 'ServerId', 'in' => 'query', 'schema' => ['description' => 'The ID of the protected server.', 'type' => 'string', 'required' => true, 'example' => 'sr-000jf20efavec47ucq5g', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'The error code.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'The error message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'D2E81EC9-B206-54EA-BBCF-9D4D6AFE7AA8', 'title' => ''], 'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"D2E81EC9-B206-54EA-BBCF-9D4D6AFE7AA8\\",\\n \\"Success\\": true\\n}","type":"json"}]', 'title' => 'Log off a protected server', 'changeSet' => [ ['createdAt' => '2022-03-02T02:04:10.000Z', 'description' => 'Error codes changed'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:UnregisterServer', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'UnregisterServer'], ], ], ], 'UpdateRecoveryPlan' => [ 'summary' => 'Modifies the content of a recovery plan.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREhdrE49XN0', 'FEATUREhdrF01CKY'], ], 'parameters' => [ [ 'name' => 'RecoveryPlanId', 'in' => 'query', 'schema' => ['description' => 'The ID of the recovery plan.', 'type' => 'string', 'required' => false, 'example' => 'rp-xxxxxxxxxxxxxxxx', 'title' => ''], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The name of the recovery plan.', 'type' => 'string', 'required' => false, 'example' => 'test-1', 'title' => ''], ], [ 'name' => 'Content', 'in' => 'query', 'schema' => ['description' => 'The details of the recovery plan.', 'type' => 'string', 'required' => false, 'example' => '{'."\n" .' "groups": ['."\n" .' {'."\n" .' "name": "Group-1",'."\n" .' "id": "Group-1",'."\n" .' "servers": ['."\n" .' {'."\n" .' "name": "sr-xxxxxxxxxxxxxxxxxx",'."\n" .' "serverId": "sr-xxxxxxxxxxxxxxxxxx",'."\n" .' "testFailoverAction": {'."\n" .' "eipAddressId": "",'."\n" .' "recoveryPostScriptContent": "",'."\n" .' "recoveryPostScriptType": "POWERSHELL",'."\n" .' "recoveryInstanceName": "HDR_Recovery-sr-xxxxxxxxxxxxxxxxxx-tfo",'."\n" .' "recoveryCpu": 2,'."\n" .' "recoveryMemory": 4294967296,'."\n" .' "recoveryUseEssd": false,'."\n" .' "recoveryUseSsd": false,'."\n" .' "recoveryReserveIp": false,'."\n" .' "recoveryUseDhcp": true,'."\n" .' "recoveryIpAddress": "",'."\n" .' "recoveryNetwork": "vsw-xxxxxxxxxxxxxxxxxx"'."\n" .' },'."\n" .' "testCleanupAction": {},'."\n" .' "changeRecoveryPointAction": {'."\n" .' "eipAddressId": "",'."\n" .' "recoveryPostScriptContent": "",'."\n" .' "recoveryPostScriptType": "POWERSHELL",'."\n" .' "recoveryInstanceName": "HDR_Recovery-sr-xxxxxxxxxxxxxxxxxx-cpr",'."\n" .' "recoveryCpu": 2,'."\n" .' "recoveryMemory": 4294967296,'."\n" .' "recoveryUseEssd": false,'."\n" .' "recoveryUseSsd": false,'."\n" .' "recoveryReserveIp": false,'."\n" .' "recoveryUseDhcp": true,'."\n" .' "recoveryIpAddress": "",'."\n" .' "recoveryNetwork": "vsw-xxxxxxxxxxxxxxxxxx"'."\n" .' },'."\n" .' "forcedFailoverAction": {'."\n" .' "eipAddressId": "",'."\n" .' "recoveryPostScriptContent": "",'."\n" .' "recoveryPostScriptType": "POWERSHELL",'."\n" .' "recoveryInstanceName": "HDR_Recovery-sr-xxxxxxxxxxxxxxxxxx-ffo",'."\n" .' "recoveryCpu": 2,'."\n" .' "recoveryMemory": 4294967296,'."\n" .' "recoveryUseEssd": false,'."\n" .' "recoveryUseSsd": false,'."\n" .' "recoveryReserveIp": false,'."\n" .' "recoveryUseDhcp": true,'."\n" .' "recoveryIpAddress": "",'."\n" .' "recoveryNetwork": "vsw-xxxxxxxxxxxxxxxxxx"'."\n" .' }'."\n" .' }'."\n" .' ]'."\n" .' }'."\n" .' ]'."\n" .'}', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'The return code.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'The returned message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'F1B86896-AB3E-5861-9E33-10486F056BB3', 'title' => ''], 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 't-000ir69ra7neqp2p4qdv', 'title' => ''], 'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"F1B86896-AB3E-5861-9E33-10486F056BB3\\",\\n \\"TaskId\\": \\"t-000ir69ra7neqp2p4qdv\\",\\n \\"Success\\": true\\n}","type":"json"}]', 'title' => 'Edit Recovery Plan', 'changeSet' => [ ['createdAt' => '2024-01-09T07:12:48.000Z', 'description' => 'Response parameters changed'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:UpdateRecoveryPlan', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'UpdateRecoveryPlan'], ], ], ], ], 'endpoints' => [ ['regionId' => 'cn-shanghai', 'regionName' => 'China (Shanghai)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'hdr.cn-shanghai.aliyuncs.com', 'endpoint' => 'hdr.cn-shanghai.aliyuncs.com', 'vpc' => ''], ['regionId' => 'cn-zhangjiakou', 'regionName' => 'China (Zhangjiakou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'hdr.cn-zhangjiakou.aliyuncs.com', 'endpoint' => 'hdr.cn-zhangjiakou.aliyuncs.com', 'vpc' => ''], ], 'errorCodes' => [ ['code' => 'DrillVpcInUse', 'message' => 'The VPC for drill is used for drill groups.', 'http_code' => 400, 'description' => 'The VPC for drill is used for drill groups.'], ['code' => 'Forbidden.NoPermission', 'message' => 'You are not authorized to do this operation.', 'http_code' => 403, 'description' => 'You do not have permission to operate.'], ['code' => 'InvalidImageSize', 'message' => 'The image size exceeds the system disk capacity.', 'http_code' => 400, 'description' => 'The image size exceeds the system disk capacity.'], ['code' => 'InvalidParameter', 'message' => 'The parameter is invalid.', 'http_code' => 400, 'description' => 'The parameter is invalid.'], ['code' => 'ORDER.OPEND', 'message' => 'You have already enabled, please go to the console to use it.', 'http_code' => 400, 'description' => 'You have already opened it, please go directly to the console to start using it.'], ['code' => 'ORDER.OPENED', 'message' => 'You have already enabled, please go to the console to use it.', 'http_code' => 400, 'description' => 'You have already enabled, please go to the console to use it.'], ['code' => 'PERMISSION_DENIED', 'message' => 'No permission.', 'http_code' => 403, 'description' => 'Call without permission'], ['code' => 'ServiceReadOnly', 'message' => 'The service is read-only right now, check the service endpoint please.', 'http_code' => 400, 'description' => 'The service is currently read-only. Please use the correct service Endpoint.'], ['code' => 'ServiceReadyOnly', 'message' => 'The service is read only right now, check the service endpoint please.', 'http_code' => 500, 'description' => 'The service is currently read-only. Check whether the service Endpoint is correct.'], ['code' => 'SitePairIsNotEmpty', 'message' => 'The site pair may contains protection group, network mapping or security group mapping.', 'http_code' => 400, 'description' => 'The site pair may contains protection group, network mapping or security group mapping.'], ], 'changeSet' => [ [ 'apis' => [ ['description' => 'Response parameters changed', 'api' => 'TestFailover'], ['description' => 'Response parameters changed', 'api' => 'UpdateRecoveryPlan'], ], 'createdAt' => '2024-01-09T07:12:53.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Response parameters changed', 'api' => 'ForcedFailover'], ], 'createdAt' => '2024-01-09T06:44:36.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Response parameters changed', 'api' => 'DescribeRecoveryPlans'], ['description' => 'Error codes changed', 'api' => 'DescribeRecoveryPoints'], ['description' => 'Response parameters changed', 'api' => 'DescribeServer'], ['description' => 'Response parameters changed', 'api' => 'DescribeServers'], ], 'createdAt' => '2024-01-09T06:27:42.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Response parameters changed', 'api' => 'DeleteRecoveryPlan'], ['description' => 'Response parameters changed', 'api' => 'DescribeRecoveryPlan'], ], 'createdAt' => '2024-01-09T06:12:37.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Response parameters changed', 'api' => 'ChangeRecoveryPoint'], ['description' => 'Error codes changed', 'api' => 'CommitFailover'], ['description' => 'Response parameters changed', 'api' => 'CreateRecoveryPlan'], ], 'createdAt' => '2024-01-09T05:42:37.000Z', 'description' => '', ], [ 'apis' => [ ['description' => 'Response parameters changed', 'api' => 'DescribeServer'], ['description' => 'Response parameters changed', 'api' => 'DescribeServers'], ], 'createdAt' => '2023-01-09T07:06:00.000Z', 'description' => 'DescribeServer和DescribeServers返回RecoveryHostName', ], [ 'apis' => [ ['description' => 'Response parameters changed', 'api' => 'ChangeRecoveryPoint'], ['description' => 'Response parameters changed', 'api' => 'ForcedFailover'], ['description' => 'Response parameters changed', 'api' => 'TestFailover'], ], 'createdAt' => '2023-01-09T07:01:14.000Z', 'description' => 'ForcedFailover、TestFailover、ChangeRecoveryPoint支持指定HostName', ], [ 'apis' => [ ['description' => 'Response parameters changed', 'api' => 'DescribeServer'], ['description' => 'Response parameters changed', 'api' => 'DescribeServers'], ], 'createdAt' => '2022-04-20T06:14:02.000Z', 'description' => 'DescribeServer与DescribeServers接口出参新增最近恢复点时间', ], [ 'apis' => [ ['description' => 'Request parameters changed, Error codes changed', 'api' => 'ChangeRecoveryPoint'], ['description' => 'Request parameters changed, Response parameters changed', 'api' => 'CreateSitePair'], ['description' => 'Request parameters changed', 'api' => 'DescribeAvailableInstanceTypes'], ['description' => 'Request parameters changed, Response parameters changed, Error codes changed', 'api' => 'DescribeServer'], ['description' => 'Response parameters changed', 'api' => 'DescribeServers'], ['description' => 'Request parameters changed, Error codes changed', 'api' => 'DescribeSite'], ['description' => 'Response parameters changed', 'api' => 'DescribeSitePair'], ['description' => 'Request parameters changed, Response parameters changed', 'api' => 'DescribeSitePairs'], ['description' => 'Request parameters changed, Response parameters changed', 'api' => 'DescribeTask'], ['description' => 'Response parameters changed, Error codes changed', 'api' => 'DescribeTasks'], ], 'createdAt' => '2022-03-08T02:42:53.000Z', 'description' => '文档更新', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'CreateSitePair'], ['description' => 'Error codes changed', 'api' => 'DeleteSitePair'], ['description' => 'Request parameters changed', 'api' => 'RegisterServers'], ['description' => 'Error codes changed', 'api' => 'UnregisterServer'], ], 'createdAt' => '2022-03-02T03:19:29.000Z', 'description' => '更新部分接口的可见性', ], [ 'apis' => [ ['description' => 'Request parameters changed, Error codes changed', 'api' => 'TestFailover'], ], 'createdAt' => '2022-03-01T16:05:29.000Z', 'description' => '更新TestFailover描述与示例值', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'DeployGateway'], ], 'createdAt' => '2022-02-28T08:27:22.000Z', 'description' => '将内部使用的API转为私有,为发布文档和SDK做准备', ], [ 'apis' => [ ['description' => 'Error codes changed', 'api' => 'DescribeSitePair'], ], 'createdAt' => '2022-02-28T08:00:43.000Z', 'description' => '将非必要公开的API转为私有,为发布文档和SDK做准备', ], [ 'apis' => [ ['description' => 'Response parameters changed, Error codes changed', 'api' => 'DescribeServerInstances'], ], 'createdAt' => '2022-02-26T06:35:05.000Z', 'description' => 'DescribeServerInstance接口增加主机名HostName参数', ], [ 'apis' => [ ['description' => 'Response parameters changed, Error codes changed', 'api' => 'DescribeSitePairs'], ['description' => 'Response parameters changed, Error codes changed', 'api' => 'DescribeSummary'], ], 'createdAt' => '2021-11-18T05:34:38.000Z', 'description' => 'DescribeSummary和DescribeSitePairs接口返回服务器复制状态', ], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeServer'], ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'CreateRecoveryPlan'], ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeTasks'], ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'TestCleanup'], ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'ChangeRecoveryPoint'], ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DeleteSitePair'], ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'ReversedDisableReplication'], ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'UnregisterServer'], ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'CommitFailover'], ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DisableReplication'], ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeRecoveryPlan'], ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeRecoveryPlans'], ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'ForcedFailover'], ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeTask'], ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeSitePairStatistics'], ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeSite'], ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'EnableReplication'], ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'TriggerReversedRegister'], ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeAvailableInstanceTypes'], ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'UpdateRecoveryPlan'], ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'TestFailover'], ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeInfrastructures'], ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'ReversedEnableReplication'], ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeSummary'], ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeSitePairs'], ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'RegisterServers'], ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeServers'], ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DeleteRecoveryPlan'], ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeSitePair'], ['threshold' => '200', 'countWindow' => 10, 'regionId' => '*', 'api' => 'DescribeRecoveryPoints'], ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'CreateSitePair'], ['threshold' => '100', 'countWindow' => 10, 'regionId' => '*', 'api' => 'Failback'], ], ], 'ram' => [ 'productCode' => 'HDR', 'productName' => 'Hybrid Disaster Recovery', 'ramCodes' => ['hdr'], 'ramLevel' => 'OPERATION', 'ramConditions' => [], 'ramActions' => [ [ 'apiName' => 'DescribeRecoveryPoints', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'hdr:DescribeRecoveryPoints', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DeleteSitePair', 'description' => '', 'operationType' => 'delete', 'ramAction' => [ 'action' => 'hdr:DeleteSitePair', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DescribeSitePairStatistics', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'hdr:DescribeSitePairStatistics', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'RegisterServers', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:RegisterServers', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DescribeSite', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'hdr:DescribeSite', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DescribeSitePair', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'hdr:DescribeSitePair', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'TestCleanup', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:TestCleanup', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DescribeTask', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'hdr:DescribeTask', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DescribeTasks', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'hdr:DescribeTasks', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DescribeAvailableInstanceTypes', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'hdr:DescribeAvailableInstanceTypes', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DisableReplication', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:DisableReplication', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'CreateRecoveryPlan', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'hdr:CreateRecoveryPlan', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'UpdateRecoveryPlan', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:UpdateRecoveryPlan', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'TestFailover', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:TestFailover', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'ForcedFailover', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:ForcedFailover', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'TriggerReversedRegister', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:TriggerReversedRegister', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'UnregisterServer', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:UnregisterServer', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'ReversedEnableReplication', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:ReversedEnableReplication', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'CommitFailover', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:CommitFailover', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DescribeSummary', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'hdr:DescribeSummary', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DescribeRecoveryPlans', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'hdr:DescribeRecoveryPlans', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'EnableReplication', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:EnableReplication', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DescribeInfrastructures', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'hdr:DescribeInfrastructures', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'CreateSitePair', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'hdr:CreateSitePair', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DeleteRecoveryPlan', 'description' => '', 'operationType' => 'delete', 'ramAction' => [ 'action' => 'hdr:DeleteRecoveryPlan', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DescribeSitePairs', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'hdr:DescribeSitePairs', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'Failback', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:Failback', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DescribeServers', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'hdr:DescribeServers', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DescribeServer', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'hdr:DescribeServer', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'ReversedDisableReplication', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:ReversedDisableReplication', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DescribeRecoveryPlan', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'hdr:DescribeRecoveryPlan', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'ChangeRecoveryPoint', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'hdr:ChangeRecoveryPoint', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'HDR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'resourceTypes' => [], ], ];