diff options
| author | Zhineng Li <im@zhineng.li> | 2026-07-12 17:11:17 +0800 |
|---|---|---|
| committer | Zhineng Li <im@zhineng.li> | 2026-07-12 17:11:17 +0800 |
| commit | 1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634 (patch) | |
| tree | 5f0857666365b7e40cdaa3733ebe1f3ba9e13c67 /data/en_us/hbr/2017-09-08/api-docs.php | |
| parent | 7347bac4ab7e136157fc94777e6cf87ef9e08599 (diff) | |
| download | afterglow-metadata-full-1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634.tar.gz afterglow-metadata-full-1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634.zip | |
update APIs 20260712
Diffstat (limited to 'data/en_us/hbr/2017-09-08/api-docs.php')
| -rw-r--r-- | data/en_us/hbr/2017-09-08/api-docs.php | 25063 |
1 files changed, 10567 insertions, 14496 deletions
diff --git a/data/en_us/hbr/2017-09-08/api-docs.php b/data/en_us/hbr/2017-09-08/api-docs.php index b8a3b5d..c743f3f 100644 --- a/data/en_us/hbr/2017-09-08/api-docs.php +++ b/data/en_us/hbr/2017-09-08/api-docs.php @@ -1,174 +1,61 @@ <?php return [ 'version' => '1.0', - 'info' => [ - 'style' => 'RPC', - 'product' => 'hbr', - 'version' => '2017-09-08', - ], + 'info' => ['style' => 'RPC', 'product' => 'hbr', 'version' => '2017-09-08'], 'directories' => [ [ - 'id' => 129544, - 'title' => 'Backup vaults', + 'children' => ['CreateVault', 'DescribeVaults'], 'type' => 'directory', - 'children' => [ - 'CreateVault', - 'CreateReplicationVault', - 'DeleteVault', - 'UpdateVault', - 'DescribeVaults', - ], + 'title' => 'Backup vault', ], [ - 'id' => 129550, - 'title' => 'Backup plans', + 'children' => ['CreateBackupPlan', 'DeleteBackupPlan', 'DisableBackupPlan', 'EnableBackupPlan', 'UpdateBackupPlan', 'DescribeBackupPlans', 'ExecuteBackupPlan'], 'type' => 'directory', - 'children' => [ - 'CreateBackupPlan', - 'DeleteBackupPlan', - 'DisableBackupPlan', - 'EnableBackupPlan', - 'UpdateBackupPlan', - 'DescribeBackupPlans', - 'ExecuteBackupPlan', - ], + 'title' => 'Backup plan', ], [ - 'id' => 176845, - 'title' => 'Backup policies', + 'children' => ['CreatePolicyV2', 'DeletePolicyV2', 'UpdatePolicyV2', 'DescribePoliciesV2', 'CreatePolicyBindings', 'DeletePolicyBinding', 'UpdatePolicyBinding', 'DescribePolicyBindings'], 'type' => 'directory', - 'children' => [ - 'CreatePolicyV2', - 'DeletePolicyV2', - 'UpdatePolicyV2', - 'DescribePoliciesV2', - 'CreatePolicyBindings', - 'DeletePolicyBinding', - 'UpdatePolicyBinding', - 'DescribePolicyBindings', - 'ExecutePolicyV2', - ], + 'title' => 'Backup policy', ], [ - 'id' => 129558, - 'title' => 'Backup clients', + 'children' => ['DeleteBackupClient', 'DeleteBackupClientResource', 'UpdateClientSettings', 'InstallBackupClients'], 'type' => 'directory', - 'children' => [ - 'DeleteBackupClient', - 'DeleteBackupClientResource', - 'UpdateClientSettings', - 'DescribeBackupClients', - 'InstallBackupClients', - 'UninstallBackupClients', - 'UpgradeBackupClients', - ], + 'title' => 'Backup client', ], [ - 'id' => 129566, - 'title' => 'Backup files', + 'children' => ['SearchHistoricalSnapshots', 'DescribeUdmSnapshots'], 'type' => 'directory', - 'children' => [ - 'DeleteSnapshot', - 'DescribeOtsTableSnapshots', - 'DescribeRecoverableOtsInstances', - 'SearchHistoricalSnapshots', - 'DescribeUdmSnapshots', - ], + 'title' => 'Backup snapshot', ], [ - 'id' => 129571, - 'title' => 'Restore jobs', + 'children' => ['CancelRestoreJob', 'DescribeRestoreJobs2'], 'type' => 'directory', - 'children' => [ - 'CreateRestoreJob', - 'CancelRestoreJob', - 'DescribeRestoreJobs2', - ], + 'title' => 'Restore job', ], [ - 'id' => 129575, - 'title' => 'Backup jobs', + 'children' => ['CancelBackupJob', 'DescribeBackupJobs2'], 'type' => 'directory', - 'children' => [ - 'CancelBackupJob', - 'CreateBackupJob', - 'DescribeBackupJobs2', - ], + 'title' => 'Backup job', ], [ - 'id' => 166794, - 'title' => 'Backup of SAP HANA ', + 'children' => ['DeleteClient', 'UpgradeClient', 'DescribeHanaBackupPlans'], 'type' => 'directory', - 'children' => [ - 'CreateHanaBackupPlan', - 'CreateHanaInstance', - 'CreateClients', - 'DeleteClient', - 'CreateHanaRestore', - 'DeleteHanaBackupPlan', - 'DeleteHanaInstance', - 'UninstallClient', - 'UpdateHanaBackupPlan', - 'EnableHanaBackupPlan', - 'DisableHanaBackupPlan', - 'UpdateHanaInstance', - 'UpgradeClient', - 'StartHanaDatabaseAsync', - 'StopHanaDatabaseAsync', - 'UpdateHanaRetentionSetting', - 'UpdateHanaBackupSetting', - 'DescribeHanaBackupPlans', - 'DescribeHanaInstances', - 'DescribeClients', - 'DescribeHanaDatabases', - 'DescribeHanaRetentionSetting', - 'DescribeHanaBackupSetting', - 'DescribeHanaBackupsAsync', - 'DescribeHanaRestores', - ], + 'title' => 'SAP HANA backup', ], [ - 'id' => 199966, - 'title' => 'ECS Backup Basic Edition', + 'children' => ['DescribeContainerResource', 'DeleteContainerCluster', 'DescribeContainerCluster'], 'type' => 'directory', - 'children' => [ - 'DeleteAirEcsInstance', - ], + 'title' => 'Container backup', ], [ - 'id' => 170460, - 'title' => 'Others', - 'type' => 'directory', 'children' => [ - 'OpenHbrService', - 'AddContainerCluster', - 'UpdateContainerCluster', - 'DescribeRegions', - 'DescribeTask', - 'DescribeVaultReplicationRegions', - 'DescribeContainerCluster', - 'DetachNasFileSystem', - 'GenerateRamPolicy', - 'ChangeResourceGroup', - 'CreateTempFileUploadUrl', - 'GetTempFileDownloadLink', - 'CheckRole', - 'DescribeCrossAccounts', - 'DescribeCrossAccounts', - 'DeleteUdmEcsInstance', - 'DeleteUdmDisk', + 'OpenHbrService', 'DetachNasFileSystem', 'DescribeCrossAccounts', 'AddCrossAccount', 'BrowseFiles', 'CreateVaultReplication', 'DeleteCrossAccount', 'DeleteVaultReplication', 'DescribeDataSources', 'GetBasicStatistics', 'ListProtectedResources', 'RemoveDataSource', 'AddContainerCluster', 'AddDataSource', 'ChangeResourceGroup', 'CheckRole', 'CreateBackupJob', 'CreateClients', 'CreateHanaBackupPlan', 'CreateHanaInstance', + 'CreateHanaRestore', 'CreateReplicationVault', 'CreateRestoreJob', 'CreateTempFileUploadUrl', 'DeleteAirEcsInstance', 'DeleteHanaBackupPlan', 'DeleteHanaInstance', 'DeleteSnapshot', 'DeleteUdmDisk', 'DeleteUdmEcsInstance', 'DeleteVault', 'DescribeBackupClients', 'DescribeClients', 'DescribeHanaBackupSetting', 'DescribeHanaBackupsAsync', 'DescribeHanaDatabases', 'DescribeHanaInstances', 'DescribeHanaRestores', 'DescribeHanaRetentionSetting', 'DescribeOtsTableSnapshots', + 'DescribeRecoverableOtsInstances', 'DescribeRegions', 'DescribeTask', 'DescribeVaultReplicationRegions', 'DisableHanaBackupPlan', 'EnableHanaBackupPlan', 'ExecutePolicyV2', 'GenerateRamPolicy', 'GetTempFileDownloadLink', 'StartHanaDatabaseAsync', 'StopHanaDatabaseAsync', 'UninstallBackupClients', 'UninstallClient', 'UpdateContainerCluster', 'UpdateDataSource', 'UpdateHanaBackupPlan', 'UpdateHanaBackupSetting', 'UpdateHanaInstance', 'UpdateHanaRetentionSetting', 'UpdateVault', + 'UpgradeBackupClients', ], - ], - [ - 'id' => 0, - 'title' => '其它', 'type' => 'directory', - 'children' => [ - 'AddCrossAccount', - 'DeleteCrossAccount', - 'ListProtectedResources', - 'CreateVaultReplication', - 'DeleteVaultReplication', - ], + 'title' => 'Others', ], ], 'components' => [ @@ -184,13 +71,7 @@ 'description' => 'public', 'visibility' => 'Public', 'type' => 'array', - 'items' => [ - 'description' => 'The name of the Tablestore table.', - 'visibility' => 'Public', - 'type' => 'string', - 'example' => '["table1", "table2", "table3"]', - 'extendType' => 'true', - ], + 'items' => ['description' => 'The name of the Tablestore table.', 'visibility' => 'Public', 'type' => 'string', 'example' => '["table1", "table2", "table3"]', 'extendType' => 'true'], 'backendName' => 'tableNames', ], ], @@ -198,106 +79,28 @@ 'OtsTableRestoreDetail' => [ 'title' => 'A short description of struct', 'description' => 'The information about the restoration of the Tablestore instance.'."\n", - 'visibility' => 'public', + 'visibility' => 'Public', 'type' => 'object', 'properties' => [ - 'OverwriteExisting' => [ - 'title' => 'Overwrite existing table or not', - 'description' => 'Specifies whether to overwrite existing tables.'."\n", - 'visibility' => 'public', - 'type' => 'boolean', - 'example' => 'true', - 'backendName' => 'overwriteExisting', - ], - 'RestoreIndex' => [ - 'title' => 'Restore index or not', - 'description' => 'Specifies whether to restore indexes.'."\n", - 'visibility' => 'public', - 'type' => 'boolean', - 'example' => 'true', - 'backendName' => 'restoreIndex', - ], - 'IndexNameSuffix' => [ - 'title' => 'Specify a suffix to restored index name', - 'description' => 'The name prefixes of the indexes that you want to restore.'."\n", - 'visibility' => 'public', - 'type' => 'string', - 'example' => '2022xxxx143933', - 'backendName' => 'indexNameSuffix', - ], - 'RestoreSearchIndex' => [ - 'title' => 'Restore search index or not', - 'description' => 'Specifies whether to restore search indexes.'."\n", - 'visibility' => 'public', - 'type' => 'boolean', - 'example' => 'true', - 'backendName' => 'restoreSearchIndex', - ], - 'SearchIndexNameSuffix' => [ - 'title' => 'Specify a suffix to restored search index name', - 'description' => 'The name prefixes of the search indexes that you want to restore.'."\n", - 'visibility' => 'public', - 'type' => 'string', - 'example' => '2022xxxx143933', - 'backendName' => 'searchIndexNameSuffix', - ], - 'ReGenerateAutoIncrementPK' => [ - 'title' => 'Re-generate auto incrmental primary key or not', - 'description' => 'Specifies whether to regenerate auto-increment primary keys.'."\n", - 'visibility' => 'public', - 'type' => 'boolean', - 'example' => 'true', - 'backendName' => 'reGenerateAutoIncrementPK', - ], - 'BatchChannelCount' => [ - 'title' => 'Concurrent processing channel count for each restore task', - 'description' => 'The number of concurrent processes for each restore job.'."\n", - 'visibility' => 'public', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - 'backendName' => 'batchChannelCount', - ], + 'OverwriteExisting' => ['title' => 'Overwrite existing table or not', 'description' => 'Specifies whether to overwrite existing tables.'."\n", 'visibility' => 'Public', 'type' => 'boolean', 'example' => 'true', 'backendName' => 'overwriteExisting'], + 'RestoreIndex' => ['title' => 'Restore index or not', 'description' => 'Specifies whether to restore indexes.'."\n", 'visibility' => 'Public', 'type' => 'boolean', 'example' => 'true', 'backendName' => 'restoreIndex'], + 'IndexNameSuffix' => ['title' => 'Specify a suffix to restored index name', 'description' => 'The name prefixes of the indexes that you want to restore.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => '2022xxxx143933', 'backendName' => 'indexNameSuffix'], + 'RestoreSearchIndex' => ['title' => 'Restore search index or not', 'description' => 'Specifies whether to restore search indexes.'."\n", 'visibility' => 'Public', 'type' => 'boolean', 'example' => 'true', 'backendName' => 'restoreSearchIndex'], + 'SearchIndexNameSuffix' => ['title' => 'Specify a suffix to restored search index name', 'description' => 'The name prefixes of the search indexes that you want to restore.'."\n", 'visibility' => 'Public', 'type' => 'string', 'example' => '2022xxxx143933', 'backendName' => 'searchIndexNameSuffix'], + 'ReGenerateAutoIncrementPK' => ['title' => 'Re-generate auto incrmental primary key or not', 'description' => 'Specifies whether to regenerate auto-increment primary keys.'."\n", 'visibility' => 'Public', 'type' => 'boolean', 'example' => 'true', 'backendName' => 'reGenerateAutoIncrementPK'], + 'BatchChannelCount' => ['title' => 'Concurrent processing channel count for each restore task', 'description' => 'The number of concurrent processes for each restore job.'."\n", 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'backendName' => 'batchChannelCount'], ], ], 'Report' => [ - 'title' => '', + 'title' => '任务报告信息', 'description' => 'The report.', 'visibility' => 'Public', 'type' => 'object', 'properties' => [ - 'TotalFiles' => [ - 'title' => '', - 'description' => 'The report path of total files.', - 'visibility' => 'Public', - 'type' => 'string', - 'example' => 'temp/report/r-0000dnz7p4pk31u6madf_total.csv', - 'backendName' => 'totalFiles', - ], - 'SuccessFiles' => [ - 'title' => '', - 'description' => 'The report path of success files.', - 'visibility' => 'Public', - 'type' => 'string', - 'example' => 'temp/report/r-0000dnz7p4pk31u6madf_success.csv', - 'backendName' => 'successFiles', - ], - 'FailedFiles' => [ - 'title' => '', - 'description' => 'The report path of failed files.', - 'visibility' => 'Public', - 'type' => 'string', - 'example' => 'temp/report/r-0000dnz7p4pk31u6madf_failed.csv', - 'backendName' => 'failedFiles', - ], - 'SkippedFiles' => [ - 'title' => '', - 'description' => 'The report path of skipped files.', - 'visibility' => 'Public', - 'type' => 'string', - 'example' => 'temp/report/r-0000dnz7p4pk31u6madf_skipped.csv', - 'backendName' => 'skippedFiles', - ], + 'TotalFiles' => ['title' => '待取回的全部文件列表', 'description' => 'The report path of total files.', 'visibility' => 'Public', 'type' => 'string', 'example' => 'temp/report/r-0000dnz7p4pk31u6madf_total.csv', 'backendName' => 'totalFiles'], + 'SuccessFiles' => ['title' => '成功的文件列表', 'description' => 'The report path of success files.', 'visibility' => 'Public', 'type' => 'string', 'example' => 'temp/report/r-0000dnz7p4pk31u6madf_success.csv', 'backendName' => 'successFiles'], + 'FailedFiles' => ['title' => '失败的文件列表', 'description' => 'The report path of failed files.', 'visibility' => 'Public', 'type' => 'string', 'example' => 'temp/report/r-0000dnz7p4pk31u6madf_failed.csv', 'backendName' => 'failedFiles'], + 'SkippedFiles' => ['title' => '跳过的文件列表', 'description' => 'The report path of skipped files.', 'visibility' => 'Public', 'type' => 'string', 'example' => 'temp/report/r-0000dnz7p4pk31u6madf_skipped.csv', 'backendName' => 'skippedFiles'], ], ], 'Rule' => [ @@ -306,94 +109,29 @@ 'visibility' => 'Public', 'type' => 'object', 'properties' => [ - 'DestinationRetention' => [ - 'title' => 'retention for remote replication', - 'description' => 'The retention period of remote backups. Minimum value: 1. Unit: days.', - 'visibility' => 'Public', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '7', - 'backendName' => 'destinationRetention', - ], - 'Schedule' => [ - 'title' => 'schedule setting', - 'description' => 'This parameter is returned only if the value of the **RuleType** parameter is **BACKUP**. This parameter indicates the backup schedule settings. Format: `I|{startTime}|{interval}`. The system runs the first backup job at a point in time that is specified in the {startTime} parameter and the subsequent backup jobs at an interval that is specified in the {interval} parameter. The system does not run a backup job before the specified point in time. Each backup job, except the first one, starts only after the previous backup job is completed. For example, `I|1631685600|P1D` indicates that the system runs the first backup job at 14:00:00 on September 15, 2021 and the subsequent backup jobs once a day.'."\n" - ."\n" - .'* startTime: the time at which the system starts to run a backup job. The time follows the UNIX time format. Unit: seconds.'."\n" - .'* interval: the interval at which the system runs a backup job. The interval follows the ISO 8601 standard. For example, PT1H indicates an interval of 1 hour. P1D indicates an interval of one day.', - 'visibility' => 'Public', - 'type' => 'string', - 'example' => 'I|1631685600|P1D', - 'backendName' => 'schedule', - ], - 'Retention' => [ - 'title' => 'retention of backup', - 'description' => 'This parameter indicates the retention period of the backup data. Minimum value: 1. Unit: days.', - 'visibility' => 'Public', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '7', - 'backendName' => 'retention', - ], - 'Disabled' => [ - 'title' => 'disable the rule or not', - 'description' => 'Whether the plan is disbaled for this data source.'."\n" - .'- **true**: disabled'."\n" - .'- **false**: Not disabled', - 'visibility' => 'Public', - 'type' => 'boolean', - 'example' => 'false', - 'backendName' => 'disabled', - ], - 'DoCopy' => [ - 'title' => 'copy to other region', - 'description' => 'Whether do copy.', - 'visibility' => 'Public', - 'type' => 'boolean', - 'example' => 'true', - 'backendName' => 'doCopy', - ], - 'DestinationRegionId' => [ - 'title' => 'copy target region id', - 'description' => 'The replication region id.', - 'visibility' => 'Public', - 'type' => 'string', - 'example' => 'cn-shenzhen', - 'backendName' => 'destinationRegionId', - ], - 'RuleName' => [ - 'title' => 'rule name', - 'description' => 'The rule name.', - 'visibility' => 'Public', - 'type' => 'string', - 'example' => 'rule-com-backup-20241023-163113', - 'backendName' => 'ruleName', - ], - 'BackupType' => [ - 'title' => 'backup type', - 'description' => 'The backup type.'."\n" - .'* COMPLETE:Full backup.'."\n" - .'* INCREMENTAL:Incremental backup.', - 'visibility' => 'Public', - 'type' => 'string', - 'example' => 'COMPLETE', - 'backendName' => 'backupType', - ], + 'DestinationRetention' => ['title' => 'retention for remote replication', 'description' => 'The retention period of remote backups. Minimum value: 1. Unit: days.', 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int64', 'example' => '7', 'backendName' => 'destinationRetention'], + 'Schedule' => ['title' => 'schedule setting', 'description' => 'This parameter is returned only if the value of the **RuleType** parameter is **BACKUP**. This parameter indicates the backup schedule settings. Format: `I|{startTime}|{interval}`. The system runs the first backup job at a point in time that is specified in the {startTime} parameter and the subsequent backup jobs at an interval that is specified in the {interval} parameter. The system does not run a backup job before the specified point in time. Each backup job, except the first one, starts only after the previous backup job is completed. For example, `I|1631685600|P1D` indicates that the system runs the first backup job at 14:00:00 on September 15, 2021 and the subsequent backup jobs once a day.'."\n" + ."\n" + .'* startTime: the time at which the system starts to run a backup job. The time follows the UNIX time format. Unit: seconds.'."\n" + .'* interval: the interval at which the system runs a backup job. The interval follows the ISO 8601 standard. For example, PT1H indicates an interval of 1 hour. P1D indicates an interval of one day.', 'visibility' => 'Public', 'type' => 'string', 'example' => 'I|1631685600|P1D', 'backendName' => 'schedule'], + 'Retention' => ['title' => 'retention of backup', 'description' => 'This parameter indicates the retention period of the backup data. Minimum value: 1. Unit: days.', 'visibility' => 'Public', 'type' => 'integer', 'format' => 'int64', 'example' => '7', 'backendName' => 'retention'], + 'Disabled' => ['title' => 'disable the rule or not', 'description' => 'Whether the plan is disbaled for this data source.'."\n" + .'- **true**: disabled'."\n" + .'- **false**: Not disabled', 'visibility' => 'Public', 'type' => 'boolean', 'example' => 'false', 'backendName' => 'disabled'], + 'DoCopy' => ['title' => 'copy to other region', 'description' => 'Whether do copy.', 'visibility' => 'Public', 'type' => 'boolean', 'example' => 'true', 'backendName' => 'doCopy'], + 'DestinationRegionId' => ['title' => 'copy target region id', 'description' => 'The replication region id.', 'visibility' => 'Public', 'type' => 'string', 'example' => 'cn-shenzhen', 'backendName' => 'destinationRegionId'], + 'RuleName' => ['title' => 'rule name', 'description' => 'The rule name.', 'visibility' => 'Public', 'type' => 'string', 'example' => 'rule-com-backup-20241023-163113', 'backendName' => 'ruleName'], + 'BackupType' => ['title' => 'backup type', 'description' => 'The backup type.'."\n" + .'* COMPLETE:Full backup.'."\n" + .'* INCREMENTAL:Incremental backup.', 'visibility' => 'Public', 'type' => 'string', 'example' => 'COMPLETE', 'backendName' => 'backupType'], ], ], ], ], 'apis' => [ - 'CreateVault' => [ - 'summary' => 'Creates a backup vault.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'AddContainerCluster' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -403,137 +141,128 @@ 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', - 'riskType' => 'none', - 'chargeType' => 'paid', - 'abilityTreeCode' => '95458', - 'abilityTreeNodes' => [ - 'FEATUREhbr56LH1C', - 'FEATUREhbrFWIWBG', - 'FEATUREhbr3BJQCT', - 'FEATUREhbrIA0YQI', - 'FEATUREhbrI97IXK', - 'FEATUREhbrTH4MM4', - 'FEATUREhbrAL60OZ', - 'FEATUREhbr9ZUQY7', - ], - 'tenantRelevance' => 'tenant', + 'abilityTreeCode' => '95396', + 'abilityTreeNodes' => ['FEATUREhbrFWIWBG'], + 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ - 'name' => 'VaultRegionId', + 'name' => 'Identifier', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the region where the backup vault resides.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-shanghai', - ], + 'schema' => ['description' => 'The ID of the cluster that you want to register.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cca8f35f0e0d84540b49d994511c2c87a'], ], [ - 'name' => 'VaultName', + 'name' => 'Name', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the backup vault. The name must be 1 to 64 characters in length.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'backupvaultname', - ], + 'schema' => ['description' => 'The name of the cluster.'."\n", 'type' => 'string', 'required' => false, 'example' => 'ack_pv_backup_location'], ], [ 'name' => 'Description', 'in' => 'query', - 'schema' => [ - 'description' => 'The description of the backup vault. The description must be 0 to 255 characters in length.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'description', - ], + 'schema' => ['description' => 'The description of the cluster.'."\n", 'type' => 'string', 'required' => false, 'example' => 'description ack pv backup'], ], [ - 'name' => 'VaultType', + 'name' => 'ClusterType', 'in' => 'query', + 'schema' => ['description' => 'The type of the cluster. Only Container Service for Kubernetes (ACK) clusters are supported.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'ACK'], + ], + [ + 'name' => 'NetworkType', + 'in' => 'query', + 'schema' => ['description' => 'The network type of the cluster. Valid values:'."\n" + ."\n" + .'* **CLASSIC**: the classic network'."\n" + .'* **VPC**: a virtual private cloud (VPC)'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'VPC'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The type of the backup vault. Valid values:'."\n" - ."\n" - .'* **STANDARD**: standard backup vault'."\n" - .'* **OTS_BACKUP**: backup vault for Tablestore'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'OTS_BACKUP' => '', - 'STANDARD' => '', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => '1FCBC078-FFCB-542A-8555-566477679720'], + 'Token' => ['description' => 'The token that is used to register the Hybrid Backup Recovery (HBR) client in the cluster.'."\n", 'type' => 'string', 'example' => 'eyJhY2NvdW*****VnZpgXQC5A=='], + 'Success' => ['description' => 'Indicates whether the request is successful.'."\n" + ."\n" + .'* true: The request is successful.'."\n" + .'* false: The request fails.'."\n", 'type' => 'boolean', 'example' => 'true'], + 'Code' => ['description' => 'The HTTP status code. The status code 200 indicates that the request is successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The message that is returned. If the request is successful, a value of successful is returned. If the request fails, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'ClusterId' => ['description' => 'The ID of the cluster.'."\n", 'type' => 'string', 'example' => 'cc-00049slr9iuvvv6pp134'], ], - 'example' => 'STANDARD', - 'default' => 'STANDARD', ], ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'title' => 'AddContainerCluster', + 'summary' => 'Registers a Container Service for Kubernetes (ACK) cluster.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'AddContainerCluster'], + ], + ], + 'ramActions' => [ [ - 'name' => 'VaultStorageClass', - 'in' => 'query', - 'schema' => [ - 'description' => 'The storage type of the backup vault.'."\n" - ."\n" - .'* **STANDARD**: standard storage.'."\n" - .'* **ARCHIVE**: This parameter is deprecated.'."\n" - .'* **COLD_ARCHIVE**: This parameter is deprecated.'."\n" - .'* **IA**: This parameter is deprecated.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'STANDARD', - 'default' => 'STANDARD', - 'enum' => [ - 'STANDARD', - 'IA', - 'ARCHIVE', - 'COLD_ARCHIVE', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:AddContainerCluster', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"1FCBC078-FFCB-542A-8555-566477679720\\",\\n \\"Token\\": \\"eyJhY2NvdW*****VnZpgXQC5A==\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"ClusterId\\": \\"cc-00049slr9iuvvv6pp134\\"\\n}","errorExample":""},{"type":"xml","example":"<AddContainerClusterResponse>\\n <RequestId>1FCBC078-FFCB-542A-8555-566477679720</RequestId>\\n <Token>eyJhY2NvdW*****VnZpgXQC5A==</Token>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <ClusterId>cc-00049slr9iuvvv6pp134</ClusterId>\\n</AddContainerClusterResponse>","errorExample":""}]', + ], + 'AddCrossAccount' => [ + 'summary' => 'Create a cross-account management relationship.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'WormEnabled', + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREhbrB08D1M'], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'CrossAccountUserId', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to enable the immutable backup feature.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => 'The UID of the account to back up.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1589753xxxxxx625', 'title' => ''], ], [ - 'name' => 'EncryptType', + 'name' => 'CrossAccountRoleName', 'in' => 'query', - 'schema' => [ - 'description' => 'The method that is used to encrypt the source data. This parameter is valid only if you set the VaultType parameter to STANDARD or OTS_BACKUP. Valid values:'."\n" - ."\n" - .'* **HBR_PRIVATE**: The source data is encrypted by using the built-in encryption method of Hybrid Backup Recovery (HBR).'."\n" - .'* **KMS**: The source data is encrypted by using Key Management Service (KMS).'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'KMS' => '', - 'HBR_PRIVATE' => '', - ], - 'example' => 'KMS', - ], + 'schema' => ['description' => 'The name of the RAM role for the account to back up. This parameter is used when you configure a cross-account backup by assuming a RAM role.', 'type' => 'string', 'required' => false, 'example' => 'hbrcrossrole', 'title' => ''], ], [ - 'name' => 'KmsKeyId', + 'name' => 'CrossAccountType', 'in' => 'query', - 'schema' => [ - 'description' => 'The customer master key (CMK) created in KMS or the alias of the key. This parameter is required only if you set the EncryptType parameter to KMS.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'alias/yzs-hhht', - ], + 'schema' => ['description' => 'The type of cross-account backup. Valid values:'."\n" + ."\n" + .'- **CROSS\\_ACCOUNT**: Configures a cross-account backup by assuming a RAM role.'."\n" + ."\n" + .'- **CROSS\\_ACCOUNT\\_BY\\_RD**: Configures a cross-account backup based on a resource directory.', 'type' => 'string', 'required' => false, 'example' => 'CROSS_ACCOUNT', 'title' => ''], ], [ - 'name' => 'Replication', + 'name' => 'Alias', 'in' => 'query', - 'schema' => [ - 'type' => 'boolean', - ], + 'allowEmptyValue' => false, + 'schema' => ['description' => 'The alias. The maximum length is 32 characters. This parameter is not required for cross-account backups that are configured based on a resource directory.', 'type' => 'string', 'example' => 'Source account 1', 'required' => false, 'title' => ''], ], ], 'responses' => [ @@ -541,182 +270,311 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'VaultId' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'example' => 'v-*********************', - ], - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'TaskId' => [ - 'description' => 'The ID of the initialization task used to initialize the backup vault. You can call the DescribeTask operation to query the status of an initialization task.'."\n", - 'type' => 'string', - 'example' => 't-*********************', - ], + 'Code' => ['description' => 'The return code. A value of 200 indicates success.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The message returned. If the call is successful, \\`successful\\` is returned. If the call fails, an error message is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"VaultId\\": \\"v-*********************\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"TaskId\\": \\"t-*********************\\"\\n}","type":"json"}]', - 'title' => 'CreateVault', - 'description' => '* Each Alibaba Cloud account can create up to 100 backup vaults.'."\n" - ."\n" - .'* After a backup vault is created, the backup vault is in the INITIALIZING state, and the system automatically runs an initialization task to initialize the backup vault. After the initialization task is completed, the backup vault is in the CREATED state. A backup job can use a backup vault to store backup data only if the backup vault is in the CREATED state.'."\n" - ."\n" - .' **'."\n" - ."\n" - .' **Note** Before you call this operation, make sure that you fully understand the billing of Cloud Backup.'."\n", - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'CreateReplicationVault' => [ - 'methods' => [ - 'post', - 'get', + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], ], - 'schemes' => [ - 'http', - 'https', + 'title' => 'AddCrossAccount', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:AddCrossAccount', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'translator' => 'machine', + ], + 'AddDataSource' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', - 'abilityTreeCode' => '95445', - 'abilityTreeNodes' => [ - 'FEATUREhbrGSUVI2', - ], + 'abilityTreeCode' => '95397', + 'abilityTreeNodes' => ['FEATUREhbr9ZUQY7'], + 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ - 'name' => 'VaultRegionId', + 'name' => 'DataSourceType', + 'in' => 'query', + 'schema' => ['description' => 'The type of the data source.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'COMMON_NAS', 'title' => ''], + ], + [ + 'name' => 'DataSourceName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the data source.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'MyLocalNas', 'title' => ''], + ], + [ + 'name' => 'Credential', + 'in' => 'query', + 'schema' => ['description' => 'The access credential for the data source. This parameter is required for local NAS (SMB) data sources and for OSS- or S3-compatible data sources. Examples:'."\n" + ."\n" + .'- Local NAS data source (SMB protocol):'."\n" + .' {'."\n" + .' "mountUsername": "\\*\\*\\*\\*\\*",'."\n" + .' "mountPassword": "\\*\\*\\*\\*\\*"'."\n" + .' }'."\n" + ."\n" + .'- OSS-compatible or S3-compatible data source:'."\n" + .' {'."\n" + .' "accessKeyId": "\\*\\*\\*\\*\\*",'."\n" + .' "accessKeySecret": "\\*\\*\\*\\*\\*"'."\n" + .' }', 'type' => 'string', 'required' => false, 'example' => '{'."\n" + .' "mountUsername": "*****",'."\n" + .' "mountPassword": "*****"'."\n" + .'}', 'title' => ''], + ], + [ + 'name' => 'ConnectionInfo', + 'in' => 'query', + 'schema' => ['description' => 'The connection information for the data source. Examples:'."\n" + ."\n" + .'- Local NAS data source:'."\n" + .' {'."\n" + .' "dataServerAddresses": \\['."\n" + .' {'."\n" + .' "host": "123.123.123.123",'."\n" + .' "port": "8080"'."\n" + .' }'."\n" + .' ],'."\n" + .' "sharePath": "/share",'."\n" + .' "mountOptions": "vers=3",'."\n" + .' "fileSystemType": "nfs"'."\n" + .' }'."\n" + ."\n" + .'- CPFS AI-Computing Edition data source:'."\n" + .' {"vpcMountTarget":"cpfs-010wn\\*\\*\\*wy-vpc-ta\\*\\*\\*8.cn-shanghai.cpfs.aliyuncs.com","sharePath":"/"}'."\n" + ."\n" + .'- Other large-scale file system data source:'."\n" + .' {"path":"/mnt"}', 'type' => 'string', 'required' => false, 'example' => '{'."\n" + .' "dataServerAddresses": ['."\n" + .' {'."\n" + .' "host": "123.123.123.123",'."\n" + .' "port": "8080"'."\n" + .' }'."\n" + .' ],'."\n" + .' "sharePath": "/share",'."\n" + .' "mountOptions": "vers=3",'."\n" + .' "fileSystemType": "nfs"'."\n" + .'}', 'title' => ''], + ], + [ + 'name' => 'IndexLevel', + 'in' => 'query', + 'schema' => ['description' => 'The index level. This parameter applies only to data source analysis with the archive feature.'."\n" + ."\n" + .'- `OFF`: No index is created.'."\n" + ."\n" + .'- `META`: A metadata index is created.'."\n" + ."\n" + .'- `ALL`: A full-text index is created. (Deprecated)', 'type' => 'string', 'required' => false, 'example' => 'META', 'title' => ''], + ], + [ + 'name' => 'ClusterId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the region where the backup vault resides.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-shanghai', - ], + 'schema' => ['description' => 'The ID of the client group used to access the data source.', 'type' => 'string', 'required' => false, 'example' => 'cl-0004i0nlngorvgjpl7ck', 'title' => ''], ], [ - 'name' => 'VaultName', + 'name' => 'Schedule', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the backup vault. The name must be 1 to 64 characters in length.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'mirrorvaultname', - ], + 'schema' => ['description' => 'The execution schedule. This parameter applies only to data source analysis with the archive feature. The format `I|{startTime}|{interval}` specifies a task that runs at a defined interval starting from `{startTime}`. `{interval}` is an ISO 8601 duration. For example, `PT1H` specifies a one-hour interval, and `P1D` specifies a one-day interval.', 'type' => 'string', 'required' => false, 'example' => 'I|1729493847|P1D', 'title' => ''], ], [ - 'name' => 'Description', + 'name' => 'SpeedLimit', 'in' => 'query', - 'schema' => [ - 'description' => 'The description of the backup vault. The description must be 0 to 255 characters in length.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'description', - ], + 'schema' => ['description' => 'The rate limiting settings. This parameter applies only to data source analysis with the archive feature.', 'type' => 'string', 'required' => false, 'example' => '6:21:10240', 'title' => ''], ], [ - 'name' => 'VaultStorageClass', + 'name' => 'Options', 'in' => 'query', + 'schema' => ['description' => 'The options for data source analysis. This parameter applies only to data source analysis with the archive feature.', 'type' => 'string', 'required' => false, 'example' => '{}', 'title' => ''], + ], + [ + 'name' => 'Include', + 'in' => 'query', + 'schema' => ['description' => 'A filter that specifies the files to include. This parameter applies only to data source analysis with the archive feature.', 'type' => 'string', 'required' => false, 'example' => '["/home/alice", "/home/bob"]', 'title' => ''], + ], + [ + 'name' => 'Exclude', + 'in' => 'query', + 'schema' => ['description' => 'A filter that specifies the files to exclude. This parameter applies only to data source analysis with the archive feature.', 'type' => 'string', 'required' => false, 'example' => '["/home/alice/log"]', 'title' => ''], + ], + [ + 'name' => 'Path', + 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The storage type of the backup vault. Valid value: **STANDARD**, which indicates standard storage.'."\n", - 'type' => 'string', + 'type' => 'array', + 'items' => ['description' => 'A path for data source analysis. This parameter applies only to data source analysis with the archive feature.', 'type' => 'string', 'required' => false, 'example' => '/home', 'title' => ''], 'required' => false, - 'example' => 'STANDARD', - 'default' => 'STANDARD', - 'enum' => [ - 'STANDARD', - 'IA', - 'ARCHIVE', + 'maxItems' => 8, + 'description' => 'A list of paths for data source analysis. This parameter applies only to data source analysis with the archive feature.', + 'title' => '', + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => 'The HTTP status code.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '53167AD3-****-****-92C7-CF69A000BA45', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request is successful.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'DataSourceId' => ['description' => 'The data source ID.', 'type' => 'string', 'example' => 'ds-000*******xzj', 'title' => ''], ], + 'description' => 'The response body.', + 'title' => '', + 'example' => '', ], ], + ], + 'title' => 'AddDataSource', + 'summary' => 'Creates a data source.', + 'description' => '- The local NAS backup feature supports the local NAS (`COMMON_NAS`) data source type.'."\n" + ."\n" + .'- The CPFS backup feature supports the following data source types: CPFS (`CPFS`), CPFS AI-Computing Edition (`BMCPFS`), and other large-scale file system (`COMMON_FILE_SYSTEM`).'."\n" + ."\n" + .'- The archive feature supports the following data source types: local NAS (`COMMON_NAS`), HDFS (`HDFS`), and S3 (`S3`).', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"53167AD3-****-****-92C7-CF69A000BA45\\",\\n \\"Success\\": true,\\n \\"DataSourceId\\": \\"ds-000*******xzj\\"\\n}","type":"json"}]', + ], + 'BrowseFiles' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'ReplicationSourceVaultId', + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '95403', + 'abilityTreeNodes' => ['FEATUREhbrS7MI6C', 'FEATUREhbr3BJQCT', 'FEATUREhbr56LH1C', 'FEATUREhbrFWIWBG'], + ], + 'parameters' => [ + [ + 'name' => 'Token', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the source vault.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'v-*********************', - ], + 'schema' => ['description' => 'Deprecated. Do not use.', 'type' => 'string', 'required' => false, 'example' => '***', 'title' => ''], ], [ - 'name' => 'ReplicationSourceRegionId', + 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the region where the source vault resides.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The backup vault ID.', 'type' => 'string', 'required' => false, 'example' => 'v-000***jtz', 'title' => ''], ], [ - 'name' => 'RedundancyType', + 'name' => 'ClientId', 'in' => 'query', - 'schema' => [ - 'description' => 'The data redundancy type of the backup vault. Valid values:'."\n" - ."\n" - .'* LRS: standard locally redundant storage (LRS). Cloud Backup stores the copies of each object on multiple devices of different facilities in the same zone. This way, Cloud Backup ensures data durability and availability even if hardware failures occur.'."\n" - .'* ZRS: standard zone-redundant storage (ZRS). Cloud Backup uses the multi-zone mechanism to distribute data across three zones within the same region. If a zone fails, the data that is stored in the other two zones is still accessible.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'LRS', - ], + 'schema' => ['description' => 'The backup client ID.', 'type' => 'string', 'required' => false, 'example' => 'c-000***o48', 'title' => ''], ], [ - 'name' => 'EncryptType', + 'name' => 'SnapshotHash', 'in' => 'query', - 'schema' => [ - 'description' => 'The method that is used to encrypt the source data. This parameter is valid only if you set the VaultType parameter to STANDARD or OTS_BACKUP. Valid values:'."\n" - ."\n" - .'* **HBR_PRIVATE**: The source data is encrypted by using the built-in encryption method of Hybrid Backup Recovery (HBR).'."\n" - .'* **KMS**: The source data is encrypted by using Key Management Service (KMS).'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'HBR_PRIVATE', - ], + 'schema' => ['description' => 'The hash value of the backup snapshot.', 'type' => 'string', 'required' => false, 'example' => '971***e9d', 'title' => ''], ], [ - 'name' => 'KmsKeyId', + 'name' => 'Path', + 'in' => 'query', + 'schema' => ['description' => 'The hash value of the directory. If this parameter is not specified, the root directory of the backup is browsed.', 'type' => 'string', 'required' => false, 'example' => 'ef6***46a', 'title' => ''], + ], + [ + 'name' => 'AbsolutePath', + 'in' => 'query', + 'schema' => ['description' => 'The absolute path of the directory. Specify `/` to browse the root directory of the backup.', 'type' => 'string', 'required' => false, 'example' => '/data/', 'title' => ''], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => ['description' => 'Deprecated. Use MaxResults and NextToken for pagination instead.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => ['description' => 'Deprecated. Use MaxResults and NextToken for pagination instead.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '1000', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], + ], + [ + 'name' => 'RestoreId', + 'in' => 'query', + 'schema' => ['description' => 'Deprecated.', 'type' => 'string', 'required' => false, 'example' => 'r-000***oy9', 'title' => ''], + ], + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => ['description' => 'The token that is required to retrieve the next page of results. If this parameter is not specified, the first page of results is returned.', 'type' => 'string', 'required' => false, 'example' => 'eyJ***Q==', 'title' => ''], + ], + [ + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => ['description' => 'The maximum number of results to return per request.'."\n" + ."\n" + .'Valid values: 10 to 100. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], + ], + [ + 'name' => 'StorageClass', + 'in' => 'query', + 'schema' => ['description' => 'The storage class of the backup data. Valid values:'."\n" + ."\n" + .'- **STANDARD**: Standard.'."\n" + ."\n" + .'- **ARCHIVE**: Archive.', 'type' => 'string', 'required' => false, 'example' => 'STANDARD', 'title' => ''], + ], + [ + 'name' => 'Edition', 'in' => 'query', 'schema' => [ - 'description' => 'The customer master key (CMK) created in KMS or the alias of the key. This parameter is required only if you set the EncryptType parameter to KMS.'."\n", + 'description' => 'The Cloud Backup edition. Valid values:'."\n" + ."\n" + .'- **STANDARD**: Standard Edition. This is the default value.'."\n" + ."\n" + .'- **BASIC**: Basic Edition. Only ECS file backup is supported in Basic Edition.', + 'enumValueTitles' => ['STANDARD' => 'Standard Edition', 'BASIC' => 'ECS file backup Basic Edition'], 'type' => 'string', 'required' => false, - 'example' => 'alias/test', + 'example' => 'STANDARD', + 'title' => '', ], ], ], @@ -725,100 +583,101 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'VaultId' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'example' => 'v-*********************', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'TaskId' => [ - 'description' => 'The ID of the job that is used to initialize the backup vault. You can call the DescribeTask operation to query the job status.'."\n", - 'type' => 'string', - 'example' => 't-*********************', + 'NextToken' => ['description' => 'The pagination token for the next page of results. An empty value indicates that no more pages are available.', 'type' => 'string', 'example' => 'eyJ***Q=='."\n", 'title' => ''], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '843F7A45-8B***35-ECECBE5E5F78', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], + 'Code' => ['description' => 'The HTTP status code. A value of 200 indicates that the request was successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The response message. The value `successful` is returned if the request was successful. An error message is returned if the request failed.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'PageNumber' => ['description' => 'The page number. Pages start from 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'PageSize' => ['description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], + 'TotalCount' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '11', 'title' => ''], + 'MaxResults' => ['description' => 'The maximum number of entries returned per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], + 'Nodes' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Node' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The object type.', + 'enumValueTitles' => ['file' => 'File', 'symlink' => 'Symbolic link', 'dir' => 'Directory'], + 'type' => 'string', + 'example' => 'file', + 'title' => '', + ], + 'Name' => ['description' => 'The name of the file or directory.', 'type' => 'string', 'example' => 'fileName', 'title' => ''], + 'Subtree' => ['description' => 'The hash value of the subdirectory. Use this value in the Path parameter to browse the contents of this subdirectory.', 'type' => 'string', 'example' => 'ef6***46a', 'title' => ''], + 'Size' => ['description' => 'The file size, in bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '58727654', 'title' => ''], + ], + 'description' => 'The properties of a file system object.', + 'title' => '', + 'example' => '', + ], + 'description' => 'The file system objects.', + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"VaultId\\": \\"v-*********************\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"TaskId\\": \\"t-*********************\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateReplicationVaultResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <VaultId>v-*********************</VaultId>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <TaskId>t-*********************</TaskId>\\n</CreateReplicationVaultResponse>","errorExample":""}]', - 'title' => 'CreateReplicationVault', - 'summary' => 'Creates a mirror vault.', - 'description' => 'After a backup vault is created, the backup vault is in the INITIALIZING state, and the system automatically runs an initialization task to initialize the backup vault. After the initialization task is completed, the backup vault is in the CREATED state.Call this operation in the region where the mirror vault resides, which is specified by the VaultRegionId parameter.', - ], - 'DeleteVault' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => 'BrowseFiles', + 'summary' => 'Browses the list of backup files in a specified backup snapshot.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], + 'ramActions' => [], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"eyJ***Q==\\\\n\\",\\n \\"RequestId\\": \\"843F7A45-8B***35-ECECBE5E5F78\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 11,\\n \\"MaxResults\\": 10,\\n \\"Nodes\\": {\\n \\"Node\\": [\\n {\\n \\"Type\\": \\"file\\",\\n \\"Name\\": \\"fileName\\",\\n \\"Subtree\\": \\"ef6***46a\\",\\n \\"Size\\": 58727654\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'CancelBackupJob' => [ + 'summary' => 'Cancels a backup job.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', + 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', - 'abilityTreeNodes' => [ - 'FEATUREhbrS7MI6C', - ], + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '95404', + 'abilityTreeNodes' => ['FEATUREhbr9ZUQY7'], ], 'parameters' => [ [ - 'name' => 'Token', + 'name' => 'JobId', 'in' => 'query', - 'schema' => [ - 'description' => 'The token.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'caeba0bbb2be03f84eb48b699f0a*', - ], + 'schema' => ['description' => 'The ID of the backup job.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'title' => '', 'example' => 'j-******************************'], ], [ 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'v-*********************', - ], + 'schema' => ['description' => 'The ID of the backup repository.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'title' => '', 'example' => 'v-*****************************'], ], [ - 'name' => 'ResourceGroupId', + 'name' => 'Edition', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the resource group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rg-acfmoiyerpacj4q', - ], + 'schema' => ['type' => 'string', 'title' => '', 'description' => 'The edition type. Valid values are BASIC and STANDARD. The default value is STANDARD.', 'required' => false, 'example' => 'STANDARD'], ], ], 'responses' => [ @@ -826,127 +685,234 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The return code. A value of 200 indicates a successful request.', 'type' => 'string', 'title' => '', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request is successful, \\`successful\\` is returned. If the request fails, an error message is returned.', 'type' => 'string', 'title' => '', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'title' => '', 'example' => 'true'], ], 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteVaultResponse>\\n<Message>successful</Message>\\n<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n<Code>200</Code>\\n<Success>true</Success>\\n</DeleteVaultResponse>","errorExample":""}]', - 'title' => 'DeleteVault', - 'summary' => 'Deletes a backup vault.', - 'description' => '* You cannot delete a backup vault within 2 hours after the backup vault is created or a backup vault that is in the INITIALIZING state.'."\n" - .'* After you delete a backup vault, all resources that are associated with the backup vault are deleted. The resources include the Cloud Backup client of the old version, backup plans, backup jobs, snapshots, and restore jobs.'."\n", + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'CancelBackupJob', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', - ], - 'UpdateVault' => [ - 'methods' => [ - 'post', - 'get', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CancelBackupJob'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:CancelBackupJob', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'CancelRestoreJob' => [ + 'summary' => 'Cancels a restore job.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', + 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', - 'abilityTreeCode' => '95698', - 'abilityTreeNodes' => [ - 'FEATUREhbrKJCQWH', - 'FEATUREhbrS7MI6C', - 'FEATUREhbr7WEYAR', - 'FEATUREhbrQ3MV3B', - 'FEATUREhbrF83GXN', - 'FEATUREhbr56LH1C', - 'FEATUREhbrFWIWBG', - 'FEATUREhbrAW9I1R', - 'FEATUREhbr3BJQCT', - 'FEATUREhbrIA0YQI', - 'FEATUREhbrI97IXK', - 'FEATUREhbrTH4MM4', - 'FEATUREhbr9ZUQY7', - ], + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREhbr56LH1C', 'FEATUREhbrS7MI6C', 'FEATUREhbrFWIWBG', 'FEATUREhbrAW9I1R', 'FEATUREhbrB1KQ9G', 'FEATUREhbrQ3MV3B', 'FEATUREhbr3BJQCT', 'FEATUREhbr9ZUQY7'], ], 'parameters' => [ [ + 'name' => 'RestoreId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the restore job.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'title' => '', 'example' => 'r-*********************'], + ], + [ 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'v-*********************', - ], + 'schema' => ['description' => 'The ID of the backup repository.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'title' => '', 'example' => 'v-*********************'], ], [ - 'name' => 'VaultName', + 'name' => 'Edition', 'in' => 'query', + 'schema' => ['type' => 'string', 'title' => '', 'description' => 'The edition. Valid values: BASIC and STANDARD. The default value is STANDARD.', 'required' => false, 'example' => 'STANDARD'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The name of the backup vault. The name must be 1 to 64 characters in length.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'vaultname', + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request was successful.', 'type' => 'string', 'title' => '', 'example' => '200'], + 'Message' => ['description' => 'The message returned. If the request is successful, successful is returned. If the request fails, an error message is returned.', 'type' => 'string', 'title' => '', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'title' => '', 'example' => 'true'], + ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'CancelRestoreJob', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CancelRestoreJob'], + ], + ], + 'ramActions' => [ [ - 'name' => 'Description', - 'in' => 'query', - 'schema' => [ - 'description' => 'The description of the backup vault. The description must be 0 to 255 characters in length.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'vault description', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:CancelRestoreJob', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], + ], + ], + 'ChangeResourceGroup' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'WormEnabled', - 'in' => 'query', + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '95415', + 'abilityTreeNodes' => ['FEATUREhbr3BJQCT'], + ], + 'parameters' => [ + [ + 'name' => 'ResourceType', + 'in' => 'formData', + 'schema' => ['description' => 'The resource type. Valid values:'."\n" + ."\n" + .'* **vault**: backup vault'."\n" + .'* **client**: backup client'."\n" + .'* **hanainstance**: SAP HANA instance'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'vault'], + ], + [ + 'name' => 'ResourceId', + 'in' => 'formData', + 'schema' => ['description' => 'The ID of the resource. The value of this parameter varies with the resource type. For example, if the ResourceType parameter is set to vault, the ResourceId parameter specifies the ID of the backup vault.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'v-0002vido6j5zyh5k****'], + ], + [ + 'name' => 'NewResourceGroupId', + 'in' => 'formData', + 'schema' => ['description' => 'The ID of the new resource group. You can view the available resource groups in the Resource Management console.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'rg-bp67acfmxazb4p**** '], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'Specifies whether to enable the immutable backup feature for storage vaults. After the immutable backup feature is enabled, backup vaults and all backup data cannot be deleted until the retention period expires. The immutable backup feature cannot be disabled after it is enabled. Only standard backup vaults and archive vaults support the immutable backup feature.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'C438054F-9088-5D1B-AED0-0EA86D9C65F4'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], + ], + 'description' => '', ], ], + ], + 'title' => 'ChangeResourceGroup', + 'summary' => 'Changes the resource group to which an instance belongs.', + 'description' => '* In the Cloud Backup console, you can use resource groups to manage resources such as backup vaults, Cloud Backup clients, and SAP HANA instances.'."\n" + .'* A resource is a cloud service entity that you create on Alibaba Cloud, such as an Elastic Compute Service (ECS) instance, a backup vault, or an SAP HANA instance.'."\n" + .'* You can sort resources owned by your Alibaba Cloud account into various resource groups. Resource groups facilitate resource management among multiple projects or applications within your Alibaba Cloud account and simplify permission management.'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ChangeResourceGroup'], + ], + ], + 'ramActions' => [], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"C438054F-9088-5D1B-AED0-0EA86D9C65F4\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ChangeResourceGroupResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>C438054F-9088-5D1B-AED0-0EA86D9C65F4</RequestId>\\n <Success>true</Success>\\n</ChangeResourceGroupResponse>","errorExample":""}]', + ], + 'CheckRole' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'ResourceGroupId', + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '95418', + 'abilityTreeNodes' => ['FEATUREhbr3BJQCT'], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'CheckRoleType', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the resource group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rg-acfm2fa2xeiebyy', - ], + 'schema' => ['description' => 'The role type. Valid values:'."\n" + .'- EcsRole: access permissions for ECS resources'."\n" + .'- CsgRole: permissions to back up Cloud Storage Gateway resources'."\n" + .'- NasRole: permissions to back up NAS resources'."\n" + .'- OssRole: permissions to back up OSS resources'."\n" + .'- UdmRole: permissions to back up entire ECS instances'."\n" + .'- VMwareLocalRole: permissions to back up on-premises VMware virtual machines'."\n" + .'- VMwareCloudRole: permissions to back up cloud-based VMware virtual machines'."\n" + .'- EcsBackupRole: permissions for ECS backup'."\n" + .'- OtsRole: permissions to back up OTS resources'."\n" + .'- CrossAccountRole: permissions for cross-account backup', 'type' => 'string', 'required' => false, 'example' => 'OssRole', 'title' => ''], + ], + [ + 'name' => 'CrossAccountUserId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the source account for cross-account backup managed by the current account.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '158975xxxxx4625', 'title' => ''], + ], + [ + 'name' => 'CrossAccountRoleName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the RAM role created in the source account for cross-account backup managed by the current account.', 'type' => 'string', 'required' => false, 'example' => 'BackupRole', 'title' => ''], ], ], 'responses' => [ @@ -954,212 +920,221 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, a success message is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The response code. 200 indicates success.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The response message. "successful" is returned if the request is successful. An error message is returned if the request fails.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '2F63CA9B-744E-51C0-A638-27882BB03078', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request is successful.'."\n" + ."\n" + .'- true: The request is successful.'."\n" + .'- false: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateVaultResponse>\\n<Message>successful</Message>\\n<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n<Code>200</Code>\\n<Success>true</Success>\\n</UpdateVaultResponse>","errorExample":""}]', - 'title' => 'UpdateVault', - 'summary' => 'Updates the configuration information about the backup vault.', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'DescribeVaults' => [ - 'summary' => 'Queries the information about one or more backup vaults that meet the specified conditions.', - 'methods' => [ - 'post', - 'get', + 'errorCodes' => [ + 200 => [ + ['errorCode' => 'CrossAccountBackupSlrNotExist', 'errorMessage' => 'AliyunServiceRoleForHbrCrossAccountBackup doesn\'t exist, please create this role.', 'description' => 'AliyunServiceRoleForHbrCrossAccountBackup the role does not exist, create this service association role.'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'title' => 'Check permissions', + 'summary' => 'Checks whether the current user has permissions to access a specific resource or page.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CheckRole'], + ], ], + 'ramActions' => [ + [ + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'hbr:CheckRole', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"2F63CA9B-744E-51C0-A638-27882BB03078\\",\\n \\"Success\\": true\\n}","type":"json"}]', + ], + 'CreateBackupJob' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'riskType' => 'none', - 'chargeType' => 'paid', - 'abilityTreeCode' => '95569', - 'abilityTreeNodes' => [ - 'FEATUREhbrFJ9107', - ], + 'operationType' => 'create', + 'abilityTreeCode' => '95428', + 'abilityTreeNodes' => ['FEATUREhbr56LH1C', 'FEATUREhbrS7MI6C', 'FEATUREhbrFWIWBG', 'FEATUREhbrB1KQ9G', 'FEATUREhbrQ3MV3B', 'FEATUREhbr3BJQCT', 'FEATUREhbrF83GXN'], ], 'parameters' => [ [ - 'name' => 'VaultId', + 'name' => 'JobName', 'in' => 'query', - 'schema' => [ - 'description' => 'Backup vault ID.', - 'type' => 'string', - 'required' => false, - 'example' => 'v-*********************', - ], + 'schema' => ['description' => 'The name of the backup job.'."\n", 'type' => 'string', 'required' => false, 'example' => 'k8s-backup-infra-20220131150046-hbr'], ], [ - 'name' => 'VaultRegionId', + 'name' => 'SourceType', 'in' => 'query', 'schema' => [ - 'description' => 'The region ID to which the backup vault belongs.', + 'description' => 'The type of the data source. Valid values:'."\n" + ."\n" + .'* **UDM_ECS**: Elastic Compute Service (ECS) instance'."\n", 'type' => 'string', - 'required' => false, - 'example' => 'cn-shanghai', + 'required' => true, + 'docRequired' => true, + 'enumValueTitles' => ['UDM_ECS' => ''], + 'example' => 'CONTAINER', ], ], [ - 'name' => 'Status', + 'name' => 'Retention', + 'in' => 'query', + 'schema' => ['description' => 'The retention period of the backup data. Unit: days.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => true, 'example' => '15'], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => ['description' => 'This parameter is required only if you set the **SourceType** parameter to **UDM_ECS**. This parameter specifies the ID of the ECS instance.'."\n", 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'i-bp1xxxxxxxxxxxxxxysm'], + ], + [ + 'name' => 'Detail', + 'in' => 'query', + 'style' => 'json', + 'schema' => ['description' => 'This parameter is required only if you set the **SourceType** parameter to **UDM_ECS**. The value is a JSON string. Valid values:'."\n" + ."\n" + .'* doCopy: specifies whether to enable remote replication.'."\n" + ."\n" + .'* destinationRegionId: the destination region for remote replication.'."\n" + ."\n" + .'* destinationRetention: the retention period of the backup point for remote replication.'."\n" + ."\n" + .'* diskIdList: the IDs of the disks that are to be backed up. If this parameter is left empty, all disks are backed up.'."\n" + ."\n" + .'* snapshotGroup: specifies whether to use a snapshot-consistent group. This parameter is valid only if all disks of the ECS instance are Enterprise SSDs (ESSDs).'."\n" + ."\n" + .'* appConsistent: specifies whether to use the application-consistent backup feature. This parameter must be used with the preScriptPath and postScriptPath parameters.'."\n" + ."\n" + .'* preScriptPath: the path to the pre-freeze scripts.'."\n" + ."\n" + .'* postScriptPath: the path to the post-thaw scripts.'."\n" + ."\n" + .'* enableWriters: This parameter is required only if you set the **AppConsistent** parameter to **true**. This parameter specifies whether to create application-consistent snapshots.'."\n" + ."\n" + .' * true: creates application-consistent snapshots.'."\n" + .' * false: creates file system-consistent snapshots.'."\n" + ."\n" + .'* enableFsFreeze: This parameter is required only if you set the **AppConsistent** parameter to **true**. This parameter specifies whether to enable Linux fsfreeze to put file systems into the read-only state before application-consistent snapshots are created. Default value: true.'."\n" + ."\n" + .'* timeoutSeconds: This parameter is required only if you set the **AppConsistent** parameter to **true**. This parameter specifies the I/O freeze timeout period. Default value: 30. Unit: seconds.'."\n", 'type' => 'object', 'required' => false, 'docRequired' => false, 'example' => '{'."\n" + .' "doCopy": false,'."\n" + .' "destinationRegionId": "",'."\n" + .' "destinationRetention": null,'."\n" + .' "diskIdList": [],'."\n" + .' "snapshotGroup": false,'."\n" + .' "appConsistent": false,'."\n" + .' "enableWriters": true,'."\n" + .' "preScriptPath": "",'."\n" + .' "postScriptPath": "",'."\n" + .' "enableFsFreeze": true,'."\n" + .' "timeoutInSeconds": 60'."\n" + .'}'], + ], + [ + 'name' => 'BackupType', 'in' => 'query', 'schema' => [ - 'description' => 'The status of the backup vault. Valid values:'."\n" + 'description' => 'The backup type. This parameter is required only if you set the SourceType parameter to UDM_ECS.'."\n" ."\n" - .'* **UNKNOWN**: The backup vault is in an unknown state.'."\n" - .'* **INITIALIZING**: The backup vault is being initialized.'."\n" - .'* **CREATED**: The backup vault is created.'."\n" - .'* **ERROR**: An error occurs on the backup vault.'."\n", + .'* **COMPLETE**: full backup'."\n", 'type' => 'string', 'required' => false, - 'example' => 'CREATED', - 'enum' => [ - 'UNKNOWN', - 'CREATED', - 'ERROR', - ], + 'enumValueTitles' => ['COMPLETE' => ''], + 'example' => 'INCREMENTAL', ], ], [ - 'name' => 'PageNumber', + 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '1', - 'example' => '1', - 'default' => '1', - ], + 'schema' => ['description' => 'The ID of the backup vault. This parameter is not required if you set the SourceType parameter to UDM_ECS.'."\n", 'type' => 'string', 'required' => false, 'example' => 'v-000xxxxxxxxxxxxxxy1v'], ], [ - 'name' => 'PageSize', + 'name' => 'SpeedLimit', 'in' => 'query', - 'schema' => [ - 'description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '100', - 'minimum' => '1', - 'example' => '10', - 'default' => '10', - ], + 'schema' => ['description' => 'This parameter does not take effect if you set the **SourceType** parameter to **UDM_ECS**. This parameter specifies the throttling rules. Format: `{start}|{end}|{bandwidth}`. Separate multiple throttling rules with vertical bars (|). A specified time range cannot overlap with another time range.'."\n" + ."\n" + .'* **start**: the start hour.'."\n" + .'* **end**: the end hour.'."\n" + .'* **bandwidth**: the bandwidth. Unit: KB/s.'."\n", 'type' => 'string', 'required' => false, 'example' => '0:24:NaN'], ], [ - 'name' => 'VaultType', + 'name' => 'Options', 'in' => 'query', - 'schema' => [ - 'description' => 'Backup repository type. The values are as follows: '."\n" - .'- **STANDARD**: Represents a standard repository, which can be used for ECS file backups, OSS backups, NAS backups, etc. '."\n" - .'- **OTS_BACKUP**: Represents a TableStore repository, which is only used for TableStore backups, and TableStore must use this type of repository.', - 'type' => 'string', - 'required' => false, - 'example' => 'STANDARD', - ], + 'schema' => ['description' => 'You do not need to specify this parameter.'."\n", 'type' => 'string', 'required' => false, 'example' => '{"UseVSS":false}'], ], [ - 'name' => 'Tag', - 'in' => 'formData', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'Tag information. Supports up to 20 tags.', - 'type' => 'array', - 'items' => [ - 'description' => 'Tag information.', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => 'The key of the tag.', - 'type' => 'string', - 'required' => false, - 'example' => 'key1', - ], - 'Value' => [ - 'description' => 'The Value of the tag.', - 'type' => 'string', - 'required' => false, - 'example' => 'value1', - ], - ], - 'required' => false, - ], - 'required' => false, - 'example' => '6a745bceffb042959b3b5206d6f12ad1', - 'maxItems' => 21, - ], + 'name' => 'Include', + 'in' => 'query', + 'schema' => ['description' => 'This parameter does not take effect if you set the **SourceType** parameter to **UDM_ECS**. This parameter specifies the paths to the files that are backed up. The value can be up to 255 characters in length.'."\n", 'type' => 'string', 'required' => false, 'example' => '["/home/alice/*.pdf", "/home/bob/*.txt"]'], ], [ - 'name' => 'ResourceGroupId', + 'name' => 'Exclude', 'in' => 'query', - 'schema' => [ - 'description' => 'Resource group ID.', - 'type' => 'string', - 'required' => false, - 'example' => 'rg-*********************', - ], + 'schema' => ['description' => 'This parameter does not take effect if you set the **SourceType** parameter to **UDM_ECS**. This parameter specifies the paths to the files that are excluded from the backup job. The value can be up to 255 characters in length.'."\n", 'type' => 'string', 'required' => false, 'example' => '["/var", "/proc"]'], ], [ - 'name' => 'VaultName', + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => ['description' => 'You do not need to specify this parameter.'."\n", 'type' => 'string', 'required' => false, 'example' => 'cl-00068btz******oku'], + ], + [ + 'name' => 'ContainerResources', + 'in' => 'query', + 'schema' => ['description' => 'You do not need to specify this parameter.'."\n", 'type' => 'string', 'required' => false, 'example' => '[{\\"resourceType\\":\\"PV\\",\\"backupMethod\\":\\"FILE\\",\\"resourceId\\":\\"674dac6d-74cd-47e9-a675-09e2f10d2c45\\",\\"resourceInfo\\":\\"{\\\\\\"pv_name\\\\\\":\\\\\\"nas-650dac6d-74cd-47e9-a675-09e2f10d2c45\\\\\\",\\\\\\"pv_size\\\\\\":\\\\\\"8Gi\\\\\\",\\\\\\"storage_class\\\\\\":\\\\\\"alibabacloud-cnfs-nas\\\\\\",\\\\\\"pvc_name\\\\\\":\\\\\\"data-postgresql-default-0\\\\\\",\\\\\\"namespace\\\\\\":\\\\\\"database\\\\\\"}\\",\\"host\\":\\"cn-huhehaote.192.168.13.133\\",\\"hostPrefix\\":\\"6f5e758e-8d35-4584-b9ce-8333adfc7547/volumes/kubernetes.io~csi/nas-670dac6d-74cd-47e9-a675-09e2f10d2c45/mount\\",\\"pvPath\\":\\"/\\"}]'], + ], + [ + 'name' => 'InitiatedByAck', + 'in' => 'query', + 'schema' => ['description' => 'false or left empty'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'false'], + ], + [ + 'name' => 'ContainerClusterId', + 'in' => 'query', + 'schema' => ['description' => 'You do not need to specify this parameter.'."\n", 'type' => 'string', 'required' => false, 'example' => 'cc-000xxxxxxxxxxxxxxi00'], + ], + [ + 'name' => 'CrossAccountType', 'in' => 'query', 'schema' => [ - 'description' => 'The name of the backup vault. The name must be 1 to 64 characters in length.'."\n", + 'description' => 'Specifies whether data is backed up within the same Alibaba Cloud account or across Alibaba Cloud accounts. Valid values:'."\n" + ."\n" + .'* SELF_ACCOUNT: Data is backed up within the same Alibaba Cloud account.'."\n" + .'* CROSS_ACCOUNT: Data is backed up across Alibaba Cloud accounts.'."\n", 'type' => 'string', 'required' => false, - 'example' => 'vaultname', + 'enumValueTitles' => [], + 'example' => 'SELF_ACCOUNT', ], ], [ - 'name' => 'VaultOwnerId', + 'name' => 'CrossAccountUserId', 'in' => 'query', - 'schema' => [ - 'type' => 'integer', - 'format' => 'int64', - ], + 'schema' => ['description' => 'The ID of the source Alibaba Cloud account that authorizes the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '158975xxxxxx4625'], ], [ - 'name' => 'Replication', + 'name' => 'CrossAccountRoleName', 'in' => 'query', - 'schema' => [ - 'type' => 'boolean', - ], + 'schema' => ['description' => 'The name of the RAM role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", 'type' => 'string', 'required' => false, 'example' => 'BackupRole'], ], ], 'responses' => [ @@ -1167,523 +1142,33 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => 'Request ID.', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Success' => [ - 'description' => 'Whether the request was successful.'."\n" - .'- true: Success - false: Failure', - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'PageNumber' => [ - 'description' => 'Page number for pagination, starting from 1. The default value is 1.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'PageSize' => [ - 'description' => 'Page size, with a minimum value of 1, a maximum value of 99, and a default value of 10.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'TotalCount' => [ - 'description' => 'Returns the total number of backup repositories.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '8', - ], - 'Vaults' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'Vault' => [ - 'description' => 'The backup vaults.'."\n", - 'example' => '{\'Vault\': []}', - 'type' => 'array', - 'items' => [ - 'description' => 'The backup vaults.'."\n", - 'type' => 'object', - 'properties' => [ - 'Status' => [ - 'description' => 'The status of the backup vault. Valid values:'."\n" - ."\n" - .'* **UNKNOWN**: The backup vault is in an unknown state.'."\n" - .'* **INITIALIZING**: The backup vault is being initialized.'."\n" - .'* **CREATED**: The backup vault is created.'."\n" - .'* **ERROR**: An error occurs on the backup vault.'."\n", - 'type' => 'string', - 'example' => 'CREATED', - ], - 'VaultId' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'example' => 'v-*********************', - ], - 'ChargeType' => [ - 'description' => 'The billing method of the backup vault.'."\n", - 'type' => 'string', - 'example' => 'FREE', - ], - 'VaultType' => [ - 'description' => 'The type of the backup vault. Valid value: **STANDARD**, which indicates a standard backup vault.'."\n", - 'type' => 'string', - 'example' => 'STANDARD', - ], - 'Dedup' => [ - 'description' => 'Indicates whether the deduplication feature is enabled.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'ReplicationSourceVaultId' => [ - 'description' => 'The ID of the source vault that corresponds to the remote backup vault.'."\n", - 'type' => 'string', - 'example' => 'v-*********************', - ], - 'IndexUpdateTime' => [ - 'description' => 'The time when the index was updated.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1639645628', - ], - 'Description' => [ - 'description' => 'The description of the backup vault.'."\n", - 'type' => 'string', - 'example' => 'vault description', - ], - 'VaultStorageClass' => [ - 'description' => 'The storage class of the backup vault. Valid value: **STANDARD**, which indicates standard storage.'."\n", - 'type' => 'string', - 'example' => 'STANDARD', - ], - 'Retention' => [ - 'description' => 'The retention period of the backup vault. Unit: days.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '2', - ], - 'CreatedTime' => [ - 'description' => 'The time when the backup vault was created. The value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1554347313', - ], - 'IndexLevel' => [ - 'description' => 'The index level.'."\n" - ."\n" - .'* OFF: No indexes are created.'."\n" - .'* META: Metadata indexes are created.'."\n" - .'* ALL: Full-text indexes are created.'."\n", - 'type' => 'string', - 'example' => 'OFF', - ], - 'VaultName' => [ - 'description' => 'The name of the backup vault.'."\n", - 'type' => 'string', - 'example' => 'vaultname', - ], - 'StorageSize' => [ - 'description' => 'The usage of the backup vault. Unit: bytes.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '10', - ], - 'LatestReplicationTime' => [ - 'description' => 'The time when the last remote backup was synchronized. The value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1554347313', - ], - 'VaultStatusMessage' => [ - 'description' => 'The status message that is returned when the backup vault is in the ERROR state. This parameter is valid only for remote backup vaults. Valid values:'."\n" - ."\n" - .'* **UNKNOWN_ERROR**: An unknown error occurs.'."\n" - .'* **SOURCE_VAULT_ALREADY_HAS_REPLICATION**: A mirror vault is configured for the source vault.'."\n", - 'type' => 'string', - 'example' => 'SOURCE_VAULT_ALREADY_HAS_REPLICATION', - ], - 'Replication' => [ - 'description' => 'Indicates whether the backup vault is a remote backup vault. Valid values:'."\n" - ."\n" - .'* true: The backup vault is a remote backup vault.'."\n" - .'* false: The backup vault is a local backup vault.'."\n", - 'type' => 'boolean', - 'example' => 'false', - ], - 'ReplicationSourceRegionId' => [ - 'description' => 'The ID of the region in which the source vault resides. This parameter is valid only for remote backup vaults.'."\n", - 'type' => 'string', - 'example' => 'v-*********************', - ], - 'VaultRegionId' => [ - 'description' => 'The ID of the region in which the backup vault resides.'."\n", - 'type' => 'string', - 'example' => 'cn-shanghai', - ], - 'UpdatedTime' => [ - 'description' => 'The time when the backup vault was updated. The value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1554347313', - ], - 'ResourceGroupId' => [ - 'description' => 'The ID of the resource group.'."\n", - 'type' => 'string', - 'example' => 'rg-*********************', - ], - 'BucketName' => [ - 'description' => 'The name of the OSS bucket used by the backup vault.'."\n", - 'type' => 'string', - 'example' => 'hbr-0005i51******t58', - ], - 'SearchEnabled' => [ - 'description' => 'Indicates whether the backup search feature is enabled.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'IndexAvailable' => [ - 'description' => 'Indicates whether indexes are available. Indexes are available when they are not being updated.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'BytesDone' => [ - 'description' => 'The amount of data that is backed up. Unit: bytes.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '20', - ], - 'Tags' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'Tag' => [ - 'description' => 'The tags of the backup vault.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => 'The tag key of the backup vault. Valid values of N: 1 to 20.'."\n" - ."\n" - .'* The tag key cannot start with `aliyun` or `acs:`.'."\n" - .'* The tag key cannot contain `http://` or `https://`.'."\n" - .'* The tag key cannot be an empty string.'."\n", - 'type' => 'string', - 'example' => 'aaa', - ], - 'Value' => [ - 'description' => 'The tag value of the backup vault. Valid values of N: 1 to 20.'."\n" - ."\n" - .'* The tag value cannot start with `aliyun` or `acs:`.'."\n" - .'* The tag value cannot contain `http://` or `https://`.'."\n" - .'* The tag value cannot be an empty string.'."\n", - 'type' => 'string', - 'example' => 'a1', - ], - ], - ], - ], - ], - ], - 'SourceTypes' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'SourceType' => [ - 'description' => 'The data source types of the backup vault.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The type of the data source.'."\n", - 'type' => 'string', - 'example' => 'ECS_FILE', - ], - ], - ], - ], - 'ReplicationProgress' => [ - 'description' => 'The progress of data synchronization from the backup vault to the mirror vault.'."\n", - 'type' => 'object', - 'properties' => [ - 'HistoricalReplicationProgress' => [ - 'description' => 'The progress of historical data synchronization from the backup vault to the mirror vault. Valid values: 0 to 100.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '100', - ], - 'NewReplicationProgress' => [ - 'description' => 'The latest synchronization time of incremental data in the mirror vault.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1579413159', - ], - ], - ], - 'BackupPlanStatistics' => [ - 'description' => 'The statistics of backup plans that use the backup vault.'."\n", - 'type' => 'object', - 'properties' => [ - 'Oracle' => [ - 'description' => 'The number of backup plans for Oracle databases.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'LocalFile' => [ - 'description' => 'The number of backup plans for on-premises servers.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Nas' => [ - 'description' => 'The number of backup plans for NAS file systems.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'CommonNas' => [ - 'description' => 'The number of backup plans for General-purpose NAS file systems.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Isilon' => [ - 'description' => 'The number of backup plans for Isilon storage systems.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Oss' => [ - 'description' => 'The number of backup plans for OSS buckets.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'SqlServer' => [ - 'description' => 'The number of backup plans for SQL Server databases.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Csg' => [ - 'description' => 'The number of backup plans for Cloud Storage Gateway (CSG) gateways.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'EcsFile' => [ - 'description' => 'The number of backup plans for ECS files.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'MySql' => [ - 'description' => 'The number of backup plans for MySQL databases.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'EcsHana' => [ - 'description' => 'The number of backup plans for SAP HANA instances.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'LocalVm' => [ - 'description' => 'The number of backup plans for on-premises virtual machines (VMs).'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Ots' => [ - 'description' => 'The number of backup plans for Tablestore instances.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'Archive' => [ - 'description' => 'The number of archive plans.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'CommonFileSystem' => [ - 'description' => 'The number of Cloud Parallel File Storage (CPFS) backup plans.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - ], - ], - 'TrialInfo' => [ - 'description' => 'The free trial information.'."\n", - 'type' => 'object', - 'properties' => [ - 'TrialStartTime' => [ - 'description' => 'The start time of the free trial.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1579413159', - ], - 'TrialVaultReleaseTime' => [ - 'description' => 'The time when the free-trial backup vault is released.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1594965600', - ], - 'TrialExpireTime' => [ - 'description' => 'The expiration time of the free trial.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1584597600', - ], - 'KeepAfterTrialExpiration' => [ - 'description' => 'Indicates whether you are billed based on the pay-as-you-go method after the free trial ends.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - ], - ], - 'EncryptType' => [ - 'description' => 'The encryption type of the backup vault. Valid values:'."\n" - ."\n" - .'* NONE: The backup vault is not encrypted.'."\n" - .'* HBR_PRIVATE (default): The backup vault is encrypted by using a key provided by Cloud Backup.'."\n" - .'* KMS: The backup vault is encrypted by using a custom master key (CMK) created in Key Management Service (KMS).'."\n", - 'type' => 'string', - 'example' => 'HBR_PRIVATE', - ], - 'WormEnabled' => [ - 'description' => 'Indicates whether the immutable backup feature is enabled.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'SnapshotCount' => [ - 'description' => 'The number of snapshots in the backup vault.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'CompressionAlgorithm' => [ - 'description' => 'The encryption algorithm used to compress the backup vault. Valid values:'."\n" - ."\n" - .'* DISABLED: The backup vault is not compressed.'."\n" - .'* SNAPPY: The backup vault is compressed by using the SNAPPY encryption algorithm.'."\n" - .'* ZSTD: The backup vault is compressed by using Zstandard, a fast lossless compression algorithm.'."\n", - 'type' => 'string', - 'example' => 'ZSTD', - ], - 'RedundancyType' => [ - 'description' => 'The data redundancy type of the backup vault. Valid values:'."\n" - ."\n" - .'* LRS: Locally redundant storage (LRS) is enabled for the backup vault. Cloud Backup stores the copies of each object on multiple devices of different facilities in the same zone. This way, Cloud Backup ensures data durability and availability even if hardware failures occur.'."\n" - .'* ZRS: Zone-redundant storage (ZRS) is enabled for the backup vault. Cloud Backup uses the multi-zone mechanism to distribute data across three zones within the same region. If a zone fails, the data that is stored in the other two zones is still accessible.'."\n", - 'type' => 'string', - 'example' => 'LRS', - ], - 'KmsKeyId' => [ - 'description' => 'The ID or alias of the CMK created in KMS. This parameter is returned only when EncryptType is set to KMS.'."\n", - 'type' => 'string', - 'example' => 'alias/acs/acm', - ], - 'ChargedStorageSize' => [ - 'description' => 'The billable storage usage of the archive vault. Unit: bytes.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1024000', - ], - 'ArchiveStorageSize' => [ - 'description' => 'The billable storage usage of the Archive tier. Unit: bytes.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1024000', - ], - 'ArchiveBytesDone' => [ - 'description' => 'Archival tier backup data volume. Unit: bytes.', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1024000', - ], - 'ReplicationSourceVault' => [ - 'description' => 'Indicate whether the backup vault is the source vault that corresponds to the remote backup vault. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'false', - ], - 'ReplicationTargetRegionId' => [ - 'description' => 'Target region for remote backup repository.', - 'type' => 'string', - 'example' => 'cn-shanghai', - ], - 'VaultOwnerId' => [ - 'type' => 'integer', - 'format' => 'int64', - ], - 'ReplicationTargetVaultId' => [ - 'type' => 'string', - ], - 'ReplicationSourceOwnerId' => [ - 'type' => 'integer', - 'format' => 'int64', - ], - 'ReplicationTargetOwnerId' => [ - 'type' => 'integer', - 'format' => 'int64', - ], - 'ReplicationStatus' => [ - 'type' => 'string', - ], - 'RsTargetAccountIds' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'RsTargetAccountId' => [ - 'type' => 'array', - 'items' => [ - 'type' => 'integer', - 'format' => 'int64', - ], - ], - ], - ], - ], - ], - ], - ], - ], + 'Code' => ['description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '25F49E7B-7E39-542E-83AD-62E6E7F73786'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], + 'JobId' => ['description' => 'The ID of the backup job.'."\n", 'type' => 'string', 'example' => 'job-000csy09q50a2jdcbwbo'], ], - 'description' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 8,\\n \\"Vaults\\": {\\n \\"Vault\\": [\\n {\\n \\"Status\\": \\"CREATED\\",\\n \\"VaultId\\": \\"v-*********************\\",\\n \\"ChargeType\\": \\"FREE\\",\\n \\"VaultType\\": \\"STANDARD\\",\\n \\"Dedup\\": true,\\n \\"ReplicationSourceVaultId\\": \\"v-*********************\\",\\n \\"IndexUpdateTime\\": 1639645628,\\n \\"Description\\": \\"vault description\\",\\n \\"VaultStorageClass\\": \\"STANDARD\\",\\n \\"Retention\\": 2,\\n \\"CreatedTime\\": 1554347313,\\n \\"IndexLevel\\": \\"OFF\\",\\n \\"VaultName\\": \\"vaultname\\",\\n \\"StorageSize\\": 10,\\n \\"LatestReplicationTime\\": 1554347313,\\n \\"VaultStatusMessage\\": \\"SOURCE_VAULT_ALREADY_HAS_REPLICATION\\",\\n \\"Replication\\": false,\\n \\"ReplicationSourceRegionId\\": \\"cn-shanghai\\",\\n \\"VaultRegionId\\": \\"cn-shanghai\\",\\n \\"UpdatedTime\\": 1554347313,\\n \\"ResourceGroupId\\": \\"rg-*********************\\",\\n \\"BucketName\\": \\"hbr-0005i51******t58\\",\\n \\"SearchEnabled\\": true,\\n \\"IndexAvailable\\": true,\\n \\"BytesDone\\": 20,\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"Key\\": \\"aaa\\",\\n \\"Value\\": \\"a1\\"\\n }\\n ]\\n },\\n \\"SourceTypes\\": {\\n \\"SourceType\\": [\\n \\"ECS_FILE\\"\\n ]\\n },\\n \\"ReplicationProgress\\": {\\n \\"HistoricalReplicationProgress\\": 100,\\n \\"NewReplicationProgress\\": 1579413159\\n },\\n \\"BackupPlanStatistics\\": {\\n \\"Oracle\\": 1,\\n \\"LocalFile\\": 1,\\n \\"Nas\\": 1,\\n \\"CommonNas\\": 1,\\n \\"Isilon\\": 1,\\n \\"Oss\\": 1,\\n \\"SqlServer\\": 1,\\n \\"Csg\\": 1,\\n \\"EcsFile\\": 1,\\n \\"MySql\\": 1,\\n \\"EcsHana\\": 1,\\n \\"LocalVm\\": 1,\\n \\"Ots\\": 1,\\n \\"Archive\\": 1,\\n \\"CommonFileSystem\\": 1\\n },\\n \\"TrialInfo\\": {\\n \\"TrialStartTime\\": 1579413159,\\n \\"TrialVaultReleaseTime\\": 1594965600,\\n \\"TrialExpireTime\\": 1584597600,\\n \\"KeepAfterTrialExpiration\\": true\\n },\\n \\"EncryptType\\": \\"HBR_PRIVATE\\",\\n \\"WormEnabled\\": true,\\n \\"SnapshotCount\\": 0,\\n \\"CompressionAlgorithm\\": \\"ZSTD\\",\\n \\"RedundancyType\\": \\"LRS\\",\\n \\"KmsKeyId\\": \\"alias/acs/acm\\",\\n \\"ChargedStorageSize\\": 1024000,\\n \\"ArchiveStorageSize\\": 1024000,\\n \\"ArchiveBytesDone\\": 1024000,\\n \\"ReplicationSourceVault\\": false,\\n \\"ReplicationTargetRegionId\\": \\"cn-shanghai\\",\\n \\"VaultOwnerId\\": 0,\\n \\"ReplicationTargetVaultId\\": \\"v-123***7890\\",\\n \\"ReplicationSourceOwnerId\\": 0,\\n \\"ReplicationTargetOwnerId\\": 0,\\n \\"ReplicationStatus\\": \\"RUNNING\\",\\n \\"RsTargetAccountIds\\": {\\n \\"RsTargetAccountId\\": [\\n 0\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeVaultsResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>8</TotalCount>\\n <Vaults>\\n <Status>CREATED</Status>\\n <VaultId>v-*********************</VaultId>\\n <ChargeType>FREE</ChargeType>\\n <VaultType>STANDARD</VaultType>\\n <Dedup>true</Dedup>\\n <ReplicationSourceVaultId>v-*********************</ReplicationSourceVaultId>\\n <IndexUpdateTime>1639645628</IndexUpdateTime>\\n <Description>vault description</Description>\\n <VaultStorageClass>STANDARD</VaultStorageClass>\\n <Retention>2</Retention>\\n <CreatedTime>1554347313</CreatedTime>\\n <IndexLevel>OFF</IndexLevel>\\n <VaultName>vaultname</VaultName>\\n <StorageSize>10</StorageSize>\\n <LatestReplicationTime>1554347313</LatestReplicationTime>\\n <VaultStatusMessage>SOURCE_VAULT_ALREADY_HAS_REPLICATION</VaultStatusMessage>\\n <Replication>false</Replication>\\n <ReplicationSourceRegionId>v-*********************</ReplicationSourceRegionId>\\n <VaultRegionId>cn-shanghai</VaultRegionId>\\n <UpdatedTime>1554347313</UpdatedTime>\\n <ResourceGroupId>rg-*********************</ResourceGroupId>\\n <BucketName>hbr-0005i51******t58</BucketName>\\n <SearchEnabled>true</SearchEnabled>\\n <IndexAvailable>true</IndexAvailable>\\n <BytesDone>20</BytesDone>\\n <Tags>\\n <Key>aaa</Key>\\n <Value>a1</Value>\\n </Tags>\\n <SourceTypes>ECS_FILE</SourceTypes>\\n <ReplicationProgress>\\n <HistoricalReplicationProgress>100</HistoricalReplicationProgress>\\n <NewReplicationProgress>1579413159</NewReplicationProgress>\\n </ReplicationProgress>\\n <BackupPlanStatistics>\\n <Oracle>1</Oracle>\\n <LocalFile>1</LocalFile>\\n <Nas>1</Nas>\\n <CommonNas>1</CommonNas>\\n <Isilon>1</Isilon>\\n <Oss>1</Oss>\\n <SqlServer>1</SqlServer>\\n <Csg>1</Csg>\\n <EcsFile>1</EcsFile>\\n <MySql>1</MySql>\\n <EcsHana>1</EcsHana>\\n <LocalVm>1</LocalVm>\\n <Ots>1</Ots>\\n </BackupPlanStatistics>\\n <TrialInfo>\\n <TrialStartTime>1579413159</TrialStartTime>\\n <TrialVaultReleaseTime>1594965600</TrialVaultReleaseTime>\\n <TrialExpireTime>1584597600</TrialExpireTime>\\n <KeepAfterTrialExpiration>true</KeepAfterTrialExpiration>\\n </TrialInfo>\\n <EncryptType>HBR_PRIVATE</EncryptType>\\n <WormEnabled>true</WormEnabled>\\n <SnapshotCount>0</SnapshotCount>\\n <CompressionAlgorithm>ZSTD</CompressionAlgorithm>\\n <RedundancyType>LRS</RedundancyType>\\n </Vaults>\\n</DescribeVaultsResponse>","errorExample":""}]', - 'title' => 'DescribeVaults', - 'translator' => 'machine', + 'title' => 'CreateBackupJob', + 'summary' => 'Creates a backup job.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateBackupJob'], + ], + ], + 'ramActions' => [], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"25F49E7B-7E39-542E-83AD-62E6E7F73786\\",\\n \\"Success\\": true,\\n \\"JobId\\": \\"job-000csy09q50a2jdcbwbo\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateBackupJobResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>25F49E7B-7E39-542E-83AD-62E6E7F73786</RequestId>\\n <Success>true</Success>\\n <JobId>job-000csy09q50a2jdcbwbo</JobId>\\n</CreateBackupJobResponse>","errorExample":""}]', ], 'CreateBackupPlan' => [ - 'summary' => 'Create a backup plan.', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'summary' => 'Creates a backup plan.', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -1696,259 +1181,165 @@ 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeCode' => '95429', - 'abilityTreeNodes' => [ - 'FEATUREhbr9ZUQY7', - ], + 'abilityTreeNodes' => ['FEATUREhbr9ZUQY7'], ], 'parameters' => [ [ 'name' => 'SourceType', 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the data source. Valid values:'."\n" - ."\n" - .'* **ECS_FILE**: Elastic Compute Service (ECS) files'."\n" - .'* **OSS**: Object Storage Service (OSS) buckets'."\n" - .'* **NAS**: File Storage NAS (NAS) file systems'."\n" - .'* **OTS**: Tablestore instances'."\n" - .'* **UDM_ECS**: ECS instances'."\n" - .'* **SYNC**: data synchronization'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'ECS_FILE', - ], + 'schema' => ['description' => 'The type of the data source. Valid values:'."\n" + ."\n" + .'- **ECS\\_FILE**: Backs up files from ECS instances.'."\n" + ."\n" + .'- **OSS**: Backs up OSS buckets.'."\n" + ."\n" + .'- **NAS**: Backs up NAS file systems.'."\n" + ."\n" + .'- **OTS**: Backs up Tablestore instances.'."\n" + ."\n" + .'- **UDM\\_ECS**: Backs up an entire ECS instance.'."\n" + ."\n" + .'- **SYNC**: Performs data synchronization.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'ECS_FILE', 'title' => ''], ], [ 'name' => 'PlanName', 'in' => 'query', 'allowEmptyValue' => false, - 'schema' => [ - 'description' => 'Name of the backup plan. 1 to 64 characters. The name must be unique for each data source type within a single backup vault.', - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 'planname', - 'maxLength' => 64, - 'minLength' => 1, - ], + 'schema' => ['description' => 'The name of the backup plan. The name must be 1 to 64 characters in length. The name must be unique for each data source type within a backup repository.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'maxLength' => 64, 'minLength' => 1, 'example' => 'planname', 'title' => ''], ], [ 'name' => 'BackupType', 'in' => 'query', - 'schema' => [ - 'description' => 'Backup type. Value: **COMPLETE**, indicating a full backup.', - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 'COMPLETE', - ], + 'schema' => ['description' => 'The backup type. Set the value to **COMPLETE**, which specifies a full backup.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'COMPLETE', 'title' => ''], ], [ 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'Backup vault ID.', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'v-0006******q', - ], + 'schema' => ['description' => 'The ID of the backup repository.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'v-0006******q', 'title' => ''], ], [ 'name' => 'Schedule', 'in' => 'query', - 'schema' => [ - 'description' => 'Backup policy. Optional format: `I|{startTime}|{interval}`. This indicates that a backup task will be executed every `{interval}` starting from `{startTime}`. It does not compensate for missed backup tasks due to past time. If the previous backup task has not been completed, the next backup task will not be triggered. For example, `I|1631685600|P1D` means a backup is performed every day starting from 2021-09-15 14:00:00.'."\n" - ."\n" - .'- **startTime**: Start time of the backup, in UNIX timestamp, in seconds.'."\n" - .'- **interval**: ISO8601 time interval. For example, PT1H indicates an interval of one hour, and P1D indicates an interval of one day.', - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 'I|1602673264|P1D', - ], + 'schema' => ['description' => 'The backup policy. The format is `I|{startTime}|{interval}`. This specifies that a backup job runs at an interval of `{interval}`, starting from `{startTime}`. Overdue backup jobs are not retried. If the previous backup job is not complete, the next backup job is not triggered. For example, `I|1631685600|P1D` indicates that a backup job runs daily starting from 14:00:00 on September 15, 2021.'."\n" + ."\n" + .'- **startTime**: The start time for the backup, specified as a UNIX timestamp in seconds.'."\n" + ."\n" + .'- **interval**: The backup interval, specified in the ISO 8601 duration format. For example, `PT1H` represents one hour and `P1D` represents one day.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'I|1602673264|P1D', 'title' => ''], ], [ 'name' => 'Retention', 'in' => 'query', - 'schema' => [ - 'description' => 'Number of days to retain the backup, with a minimum value of 1, in days.', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'docRequired' => true, - 'example' => '7', - ], + 'schema' => ['description' => 'The backup retention period, in days. The minimum value is 1.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => true, 'example' => '7', 'title' => ''], ], [ 'name' => 'ClusterId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the client group that executes the data synchronization plan. This parameter is required only for data synchronization.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cl-***************', - ], + 'schema' => ['description' => 'The ID of the client group that runs the data synchronization job. This parameter is required only if `SourceType` is set to `SYNC`.', 'type' => 'string', 'required' => false, 'example' => 'cl-***************', 'title' => ''], ], [ 'name' => 'FileSystemId', 'in' => 'query', - 'schema' => [ - 'description' => 'This parameter is required when **SourceType** is set to **NAS**. It represents the file system ID.', - 'type' => 'string', - 'required' => false, - 'example' => '005494', - ], + 'schema' => ['description' => 'The ID of the file system. This parameter is required only if **SourceType** is set to **NAS**.', 'type' => 'string', 'required' => false, 'example' => '005494', 'title' => ''], ], [ 'name' => 'CreateTime', 'in' => 'query', - 'schema' => [ - 'description' => 'This parameter is required when **SourceType** is set to **NAS**. It represents the creation time of the file system, in UNIX timestamp, in seconds.', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1607436917', - ], + 'schema' => ['description' => 'The time when the file system was created, specified as a UNIX timestamp in seconds. This parameter is required only if **SourceType** is set to **NAS**.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1607436917', 'title' => ''], ], [ 'name' => 'Bucket', 'in' => 'query', - 'schema' => [ - 'description' => 'This parameter is required when **SourceType** is set to **OSS**. It represents the OSS bucket name.', - 'type' => 'string', - 'required' => false, - 'example' => 'hbr-backup-oss', - ], + 'schema' => ['description' => 'The name of the OSS bucket. This parameter is required only if **SourceType** is set to **OSS**.', 'type' => 'string', 'required' => false, 'example' => 'hbr-backup-oss', 'title' => ''], ], [ 'name' => 'Prefix', 'in' => 'query', - 'schema' => [ - 'description' => 'This parameter is required when **SourceType** is set to **OSS**. It represents the backup prefix. When specified, only objects matching the prefix are backed up.', - 'type' => 'string', - 'required' => false, - 'example' => 'oss-prefix', - ], + 'schema' => ['description' => 'The prefix of the objects to back up. If specified, only objects with this prefix are backed up. This parameter is required only if **SourceType** is set to **OSS**.', 'type' => 'string', 'required' => false, 'example' => 'oss-prefix', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'formData', - 'schema' => [ - 'description' => 'This parameter is required when **SourceType** is set to **ECS_FILE**. It represents the ECS instance ID.', - 'type' => 'string', - 'required' => false, - 'example' => 'i-m5e*****6q', - ], + 'schema' => ['description' => 'The ID of the ECS instance. This parameter is required only if **SourceType** is set to **ECS\\_FILE**.', 'type' => 'string', 'required' => false, 'example' => 'i-m5e*****6q', 'title' => ''], ], [ 'name' => 'Detail', 'in' => 'query', 'style' => 'json', - 'schema' => [ - 'description' => 'Details of the whole machine backup, in JSON string format.'."\n" - ."\n" - .'* snapshotGroup: Whether to use a consistent snapshot group (only valid if all instance disks are ESSD).'."\n" - .'* appConsistent: Whether to use application consistency (requires the use of preScriptPath and postScriptPath parameters).'."\n" - .'* preScriptPath: Path to the freeze script.'."\n" - .'* postScriptPath: Path to the thaw script.', - 'type' => 'object', - 'required' => false, - 'example' => '{\\"EnableFsFreeze\\":true,\\"appConsistent\\":false,\\"postScriptPath\\":\\"\\",\\"preScriptPath\\":\\"\\",\\"snapshotGroup\\":true,\\"timeoutInSeconds\\":60}', - ], + 'schema' => ['description' => 'The details of an entire instance backup, specified as a JSON string.'."\n" + ."\n" + .'- `snapshotGroup`: Specifies whether to use a snapshot-consistent group. This feature is available only if all disks of the instance are ESSDs.'."\n" + ."\n" + .'- `appConsistent`: Specifies whether to enable application consistency. This must be used with the `preScriptPath` and `postScriptPath` parameters.'."\n" + ."\n" + .'- `preScriptPath`: The path to the pre-freeze script.'."\n" + ."\n" + .'- `postScriptPath`: The path to the post-thaw script.', 'type' => 'object', 'required' => false, 'example' => '{\\"EnableFsFreeze\\":true,\\"appConsistent\\":false,\\"postScriptPath\\":\\"\\",\\"preScriptPath\\":\\"\\",\\"snapshotGroup\\":true,\\"timeoutInSeconds\\":60}', 'title' => ''], ], [ 'name' => 'UdmRegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'Region where the whole machine backup instance is located.', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-shanghai', - ], + 'schema' => ['description' => 'The region where the ECS instance is located.', 'type' => 'string', 'required' => false, 'example' => 'cn-shanghai', 'title' => ''], ], [ 'name' => 'SpeedLimit', 'in' => 'formData', - 'schema' => [ - 'description' => 'This parameter is required when **SourceType** is set to **ECS_FILE**. It represents the backup traffic control. Format: `{start}:{end}:{bandwidth}`. Multiple traffic control configurations are separated by |, and the configured times should not overlap.'."\n" - ."\n" - .'- **start**: Start hour.'."\n" - .'- **end**: End hour.'."\n" - .'- **bandwidth**: Limit rate, in KB/s.', - 'type' => 'string', - 'required' => false, - 'example' => '0:24:5120', - ], + 'schema' => ['description' => 'The traffic shaping policy for the backup. Format: `{start}:{end}:{bandwidth}`. You can specify multiple rules separated by vertical bars (`|`). The specified time ranges cannot overlap. This parameter is required only if **SourceType** is set to **ECS\\_FILE**.'."\n" + ."\n" + .'- **start**: The start hour.'."\n" + ."\n" + .'- **end**: The end hour.'."\n" + ."\n" + .'- **bandwidth**: The bandwidth limit, in KB/s.', 'type' => 'string', 'required' => false, 'example' => '0:24:5120', 'title' => ''], ], [ 'name' => 'Include', 'in' => 'formData', - 'schema' => [ - 'description' => 'This parameter is required when **SourceType** is set to **ECS_FILE**. It represents the path to be backed up, and all files under this path will be backed up. Supports up to 255 characters.', - 'type' => 'string', - 'required' => false, - 'example' => '["/home/alice/*.pdf", "/home/bob/*.txt"]', - ], + 'schema' => ['description' => 'The paths of the files and directories to include in the backup. The path can be up to 255 characters in length. This parameter is required only if **SourceType** is set to **ECS\\_FILE**.', 'type' => 'string', 'required' => false, 'example' => '["/home/alice/*.pdf", "/home/bob/*.txt"]', 'title' => ''], ], [ 'name' => 'Exclude', 'in' => 'formData', - 'schema' => [ - 'description' => 'This parameter is required only when **SourceType** is set to **ECS_FILE**. It specifies the path that should not be backed up, meaning all files under this path will not be included in the backup. The maximum length is 255 characters.', - 'type' => 'string', - 'required' => false, - 'example' => '["/var", "/proc"]', - ], + 'schema' => ['description' => 'The paths of the files and directories to exclude from the backup. The path can be up to 255 characters in length. This parameter is required only if **SourceType** is set to **ECS\\_FILE**.', 'type' => 'string', 'required' => false, 'example' => '["/var", "/proc"]', 'title' => ''], ], [ 'name' => 'Options', 'in' => 'formData', - 'schema' => [ - 'description' => 'This parameter is required when **SourceType** is set to **ECS_FILE**. It indicates whether to use the Windows system VSS to define the backup path.'."\n" - ."\n" - .'- This feature only supports Windows type ECS instances.'."\n" - .'- If there are data changes in the backup source and you need to ensure consistency between the backup data and the source data, you can configure it as `["UseVSS":true]`.'."\n" - .'- After choosing to use VSS, multiple file directories cannot be backed up simultaneously.', - 'type' => 'string', - 'required' => false, - 'example' => '{"UseVSS":false}', - ], + 'schema' => ['description' => 'Specifies whether to use Windows Volume Shadow Copy Service (VSS) to ensure data consistency. This parameter is required only if **SourceType** is set to **ECS\\_FILE**.'."\n" + ."\n" + .'- This feature is available only for Windows ECS instances.'."\n" + ."\n" + .'- If data in the backup source changes during the backup, set this parameter to `{"UseVSS":true}` to ensure data consistency.'."\n" + ."\n" + .'- If you enable VSS, you cannot back up multiple file directories at the same time.', 'type' => 'string', 'required' => false, 'example' => '{"UseVSS":false}', 'title' => ''], ], [ 'name' => 'DataSourceId', 'in' => 'formData', - 'schema' => [ - 'description' => 'The ID of the data source. This parameter is required only for data synchronization.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'ds-****************', - ], + 'schema' => ['description' => 'The ID of the source data source. This parameter is required only if `SourceType` is set to `SYNC`.', 'type' => 'string', 'required' => false, 'example' => 'ds-****************', 'title' => ''], ], [ 'name' => 'Path', 'in' => 'formData', 'style' => 'repeatList', 'schema' => [ - 'description' => 'Backup paths.', + 'description' => 'The backup paths.', 'type' => 'array', - 'items' => [ - 'description' => 'Backup paths. Up to 65536 characters.'."\n" - .'The rules for backup paths are as follows:'."\n" - ."\n" - .'- Without wildcards (*), you can input 20 lines of paths.'."\n" - .'- When using wildcards (*), only one line of path can be input, supporting wildcard patterns like `/*/*`.'."\n" - .'- Each line only supports absolute paths.'."\n" - .'- When using VSS, multiple paths, UNC paths, wildcards, and exclusion files are not supported.'."\n" - ."\n" - .'- When using UNC, VSS, wildcards, and exclusion files are not supported. If the backup source includes a UNC path, Windows ACLs will not be backed up.', - 'type' => 'string', - 'required' => false, - 'example' => '["/home"]', - ], + 'items' => ['description' => 'A backup path. The path can be up to 65,536 characters in length.'."\n" + .'The following rules apply to backup paths:'."\n" + ."\n" + .'- If you do not use wildcards (`*`), you can specify up to 20 paths.'."\n" + ."\n" + .'- If you use wildcards (`*`), you can specify only one path. Wildcard patterns such as `/*/*` are supported.'."\n" + ."\n" + .'- Each path must be an absolute path.'."\n" + ."\n" + .'- If VSS is enabled, you cannot use multiple paths, UNC paths, wildcards, or file exclusions.'."\n" + ."\n" + .'- When a UNC path is used, VSS, wildcards, and file exclusions are not supported. If the backup source contains UNC paths, Windows ACLs are not backed up.', 'type' => 'string', 'required' => false, 'example' => '["/home"]', 'title' => ''], 'required' => false, 'maxItems' => 20, + 'title' => '', + 'example' => '', ], ], [ @@ -1956,334 +1347,241 @@ 'in' => 'formData', 'style' => 'repeatList', 'schema' => [ - 'description' => 'Backup plan rules.', + 'description' => 'The backup rules.', 'type' => 'array', 'items' => [ - 'description' => 'Backup plan rules.', + 'description' => 'A backup rule.', 'type' => 'object', 'properties' => [ - 'DestinationRetention' => [ - 'description' => 'Number of days to retain offsite backups.', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '7', - ], - 'Schedule' => [ - 'description' => 'Backup strategy. Optional format: I|{startTime}|{interval}. This means that a backup task is executed every {interval} starting from {startTime}. Backup tasks for past times will not be executed. If the previous backup task has not been completed, the next backup task will not be triggered. For example, I|1631685600|P1D means a backup is performed every day starting from 2021-09-15 14:00:00.'."\n" - ."\n" - .'- startTime: The start time of the backup, in UNIX time, in seconds.'."\n" - .'- interval: ISO8601 time interval. For example, PT1H means an interval of one hour. P1D means an interval of one day.', - 'type' => 'string', - 'required' => false, - 'example' => 'I|1602673264|P1D', - ], - 'Retention' => [ - 'description' => 'Backup retention period.', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'minimum' => '1', - 'example' => '7', - ], - 'Disabled' => [ - 'description' => 'Whether the rule is enabled.', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - 'DoCopy' => [ - 'description' => 'Whether to enable offsite replication.', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - 'DestinationRegionId' => [ - 'description' => 'ID of the region for offsite replication.', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou', - ], - 'RuleName' => [ - 'description' => 'Rule name.', - 'type' => 'string', - 'required' => false, - 'example' => 'rule-test-name', - ], - 'BackupType' => [ - 'description' => 'Backup type.', - 'type' => 'string', - 'required' => false, - 'example' => 'COMPLETE', - ], + 'DestinationRetention' => ['description' => 'The retention period of the geo-redundant backup, in days.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '7', 'title' => ''], + 'Schedule' => ['description' => 'The backup policy. The format is `I|{startTime}|{interval}`. This specifies that a backup job runs at an interval of `{interval}`, starting from `{startTime}`. Overdue backup jobs are not retried. If the previous backup job is not complete, the next backup job is not triggered. For example, `I|1631685600|P1D` indicates that a backup job runs daily starting from 14:00:00 on September 15, 2021.'."\n" + ."\n" + .'In the format, startTime is the backup start time (a UNIX timestamp in seconds), and interval is the backup interval (in ISO 8601 duration format). For example, PT1H represents one hour and P1D represents one day.', 'type' => 'string', 'required' => false, 'example' => 'I|1602673264|P1D', 'title' => ''], + 'Retention' => ['description' => 'The retention period of the backup, in days.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'minimum' => '1', 'example' => '7', 'title' => ''], + 'Disabled' => ['description' => 'Specifies whether to disable the rule.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], + 'DoCopy' => ['description' => 'Specifies whether to enable geo-redundancy for the backup.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], + 'DestinationRegionId' => ['description' => 'The ID of the destination region for geo-redundancy.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''], + 'RuleName' => ['description' => 'The name of the rule.', 'type' => 'string', 'required' => false, 'example' => 'rule-test-name', 'title' => ''], + 'BackupType' => ['description' => 'The backup type.', 'type' => 'string', 'required' => false, 'example' => 'COMPLETE', 'title' => ''], ], 'required' => false, + 'title' => '', + 'example' => '', ], 'required' => false, 'maxItems' => 64, + 'title' => '', + 'example' => '', ], ], [ 'name' => 'InstanceName', 'in' => 'formData', - 'schema' => [ - 'description' => 'Table store instance name.', - 'type' => 'string', - 'required' => false, - 'example' => 'instancename', - ], + 'schema' => ['description' => 'The name of the Tablestore instance.', 'type' => 'string', 'required' => false, 'example' => 'instancename', 'title' => ''], ], [ 'name' => 'OtsDetail', 'in' => 'formData', 'style' => 'json', - 'schema' => [ - 'description' => 'The details about the Tablestore instance.'."\n", - 'required' => false, - '$ref' => '#/components/schemas/OtsDetail', - ], + 'schema' => ['description' => 'The details of the Tablestore instance.', '$ref' => '#/components/schemas/OtsDetail', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'CrossAccountType', 'in' => 'query', 'schema' => [ - 'description' => 'Cross-account backup type. Supported values:'."\n" - .'- SELF_ACCOUNT: Backup within the same account'."\n" - .'- CROSS_ACCOUNT: Cross-account backup', + 'description' => 'The type of cross-account backup. Valid values:'."\n" + ."\n" + .'- `SELF_ACCOUNT`: Backs up data within the same account.'."\n" + ."\n" + .'- `CROSS_ACCOUNT`: Backs up data to a different account.', + 'enumValueTitles' => ['SELF_ACCOUNT' => 'SELF\\_ACCOUNT', 'CROSS_ACCOUNT' => 'CROSS\\_ACCOUNT'], 'type' => 'string', 'required' => false, - 'enumValueTitles' => [ - 'SELF_ACCOUNT' => 'SELF_ACCOUNT', - 'CROSS_ACCOUNT' => 'CROSS_ACCOUNT', - ], 'example' => 'CROSS_ACCOUNT', + 'title' => '', ], ], [ 'name' => 'CrossAccountUserId', 'in' => 'query', - 'schema' => [ - 'description' => 'The original account ID used for cross-account backup.', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '15897534xxxx4625', - ], + 'schema' => ['description' => 'The ID of the source Alibaba Cloud account for a cross-account backup.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '15897534xxxx4625', 'title' => ''], ], [ 'name' => 'CrossAccountRoleName', 'in' => 'query', - 'schema' => [ - 'description' => 'The role name created in the RAM of the original account for cross-account backup.', - 'type' => 'string', - 'required' => false, - 'example' => 'BackupRole', - ], + 'schema' => ['description' => 'The name of the RAM role that is created in the source account.', 'type' => 'string', 'required' => false, 'example' => 'BackupRole', 'title' => ''], ], [ 'name' => 'KeepLatestSnapshots', 'in' => 'query', 'schema' => [ - 'description' => 'Whether to enable retaining at least one backup version.'."\n" - .'- 0 - Do not retain'."\n" - .'- 1 - Retain', + 'description' => 'Specifies whether to permanently retain the latest backup snapshots.'."\n" + ."\n" + .'- `0`: Do not retain.'."\n" + ."\n" + .'- `1`: Retain.', + 'enumValueTitles' => ['No', 'Yes'], 'type' => 'integer', 'format' => 'int64', 'required' => false, - 'enumValueTitles' => [ - '', - '', - ], 'example' => '1', + 'title' => '', ], ], [ 'name' => 'DestSourceType', 'in' => 'query', - 'schema' => [ - 'description' => 'Destination data source type. (Required only for synchronization)', - 'type' => 'string', - 'required' => false, - 'example' => 'OSS', - ], + 'schema' => ['description' => 'The type of the destination data source. This parameter is required only if `SourceType` is set to `SYNC`.', 'type' => 'string', 'required' => false, 'example' => 'OSS', 'title' => ''], ], [ 'name' => 'DestDataSourceId', 'in' => 'query', - 'schema' => [ - 'description' => 'Destination data source ID. (Required only for synchronization)', - 'type' => 'string', - 'required' => false, - 'example' => 'ds-*********************'."\n", - ], + 'schema' => ['description' => 'The ID of the destination data source. This parameter is required only if `SourceType` is set to `SYNC`.', 'type' => 'string', 'required' => false, 'example' => 'ds-*********************'."\n", 'title' => ''], ], [ 'name' => 'DestDataSourceDetail', 'in' => 'query', 'style' => 'json', - 'schema' => [ - 'description' => 'Destination data source details. (Required only for synchronization)', - 'type' => 'object', - 'required' => false, - 'example' => '{\\"prefix\\":\\"/\\"}', - ], + 'schema' => ['description' => 'The details of the destination data source. This parameter is required only if `SourceType` is set to `SYNC`.', 'type' => 'object', 'required' => false, 'example' => '{\\"prefix\\":\\"/\\"}', 'title' => ''], ], [ 'name' => 'ChangeListPath', 'in' => 'query', - 'schema' => [ - 'description' => 'Configuration for the incremental file synchronization list. (Required only for synchronization)', - 'type' => 'string', - 'required' => false, - 'example' => '{"dataSourceId": "ds-123456789", "path": "/changelist"}', - ], + 'schema' => ['description' => 'The changelist configuration for incremental file synchronization. This parameter is required only if `SourceType` is set to `SYNC`.', 'type' => 'string', 'required' => false, 'example' => '{"dataSourceId": "ds-123456789", "path": "/changelist"}', 'title' => ''], ], [ 'name' => 'Disabled', 'in' => 'query', - 'schema' => [ - 'description' => 'Is the plan disabled by default', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => 'Specifies whether to disable the backup plan upon creation.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], + ], + [ + 'name' => 'Edition', + 'in' => 'query', + 'schema' => ['description' => 'The edition of the backup plan. Valid values are `BASIC` and `STANDARD`. Default value: `STANDARD`.', 'type' => 'string', 'required' => false, 'example' => 'STANDARD', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => 'Returned data.', + 'description' => 'The data returned.', 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'Return code, 200 indicates success.', - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'Description of the return message, usually returns \'successful\' upon success, and corresponding error messages in case of failure.', - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'Request ID.', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'PlanId' => [ - 'description' => 'Backup plan ID.', - 'type' => 'string', - 'example' => 'plan-*********************', - ], - 'Success' => [ - 'description' => 'Whether the request was successful.'."\n" - ."\n" - .'- true: Success.'."\n" - .'- false: Failure.', - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The response code. A value of 200 indicates that the request was successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The response message. If the request is successful, the value is `successful`. If the request fails, an error message is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], + 'PlanId' => ['description' => 'The backup plan ID.', 'type' => 'string', 'example' => 'plan-*********************', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- `true`: The request was successful.'."\n" + ."\n" + .'- `false`: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PlanId\\": \\"plan-*********************\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<CreateBackupPlanResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <PlanId>plan-*********************</PlanId>\\n <Success>true</Success>\\n</CreateBackupPlanResponse>","errorExample":""}]', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PlanId\\": \\"plan-*********************\\",\\n \\"Success\\": true\\n}","type":"json"}]', 'title' => 'CreateBackupPlan', - 'description' => '- A backup plan associates data sources with backup policies and other necessary information for backups. After the execution of a backup plan, it generates a backup task that records the progress and results of the backup. If the backup task is successful, a backup snapshot is created. You can use the backup snapshot to create a recovery task.'."\n" - .'- A backup plan supports only one type of data source.'."\n" - .'- A backup plan supports only a single fixed interval backup cycle strategy.'."\n" - .'- A backup plan can back up to only one backup vault.', - 'translator' => 'machine', - ], - 'DeleteBackupPlan' => [ - 'summary' => 'Deletes a backup plan.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'description' => '><notice>'."\n" + ."\n" + .'- Call this API to use features such as the basic edition of ECS file backup, cloud disk backup, container backup, the free trial of TableStore backup, archiving, or data synchronization.'."\n" + ."\n" + .'- To use the 30-day free trial for NAS backup or OSS backup, call the `CreateTrialBackupPlan` operation.'."\n" + ."\n" + .'- To use the standard capabilities of ECS file backup, local file backup, ECS instance backup, NAS backup, OSS backup, or CPFS backup, call the `CreatePolicyV2` and `CreatePolicyBindings` operations.'."\n" + ."\n" + .'></notice>'."\n" + ."\n" + .'- Executing a backup plan creates a backup job to record its progress and result. A successful job generates a backup snapshot, which you can use to create a restore job.'."\n" + ."\n" + .'- A backup plan supports only one data source.'."\n" + ."\n" + .'- A backup plan supports only one backup policy with a fixed-interval cycle.'."\n" + ."\n" + .'- A backup plan can back up to only one backup repository.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateBackupPlan'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:CreateBackupPlan', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'CreateClients' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', - 'deprecated' => false, + 'operationType' => 'readAndWrite', 'systemTags' => [ - 'operationType' => 'delete', + 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeCode' => '95465', - 'abilityTreeNodes' => [ - 'FEATUREhbr56LH1C', - 'FEATUREhbrS7MI6C', - 'FEATUREhbrFWIWBG', - 'FEATUREhbrAW9I1R', - 'FEATUREhbrB1KQ9G', - 'FEATUREhbrQ3MV3B', - 'FEATUREhbr3BJQCT', - ], + 'abilityTreeCode' => '95433', + 'abilityTreeNodes' => ['FEATUREhbrI97IXK'], ], 'parameters' => [ [ - 'name' => 'PlanId', + 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup plan.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'plan-*********************', - ], + 'schema' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'required' => true, 'example' => 'v-0001ufe******kgm', 'title' => ''], ], [ - 'name' => 'VaultId', + 'name' => 'AlertSetting', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault. This parameter is required if the SourceType parameter is not set to UDM_ECS.'."\n", - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'v-*********************', - ], + 'schema' => ['description' => 'The alert settings. Valid value: INHERITED, which indicates that the HBR client sends alert notifications by using the same method configured for the backup vault.'."\n", 'type' => 'string', 'required' => false, 'example' => 'INHERITED', 'title' => ''], ], [ - 'name' => 'SourceType', + 'name' => 'ClientInfo', 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the data source. Valid values:'."\n" - ."\n" - .'* **ECS_FILE**: Elastic Compute Service (ECS) files'."\n" - .'* **OSS**: Object Storage Service (OSS) buckets'."\n" - .'* **NAS**: Apsara File Storage NAS file systems'."\n" - .'* **UDM_ECS**: ECS instances'."\n" - .'* **OTS**: Tablestore instances'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'ECS_FILE', - ], + 'schema' => ['description' => 'The installation information of the HBR clients.'."\n", 'type' => 'string', 'required' => false, 'example' => '[ { "instanceId": "i-bp116lr******te9q2", "accessKeyId": "", "accessKeySecret": "", "clusterId": "cl-000csy09q******9rfz9", "sourceTypes": [ "HANA" ] }, { "instanceId": "i-bp116lrux******hte9q4", "accessKeyId": "", "accessKeySecret": "", "clusterId": "cl-000csy09q5094vw9rfz9", "sourceTypes": [ "HANA" ] }]', 'docRequired' => true, 'title' => ''], ], [ - 'name' => 'RequireNoRunningJobs', + 'name' => 'UseHttps', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether no running jobs are required.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => 'Specifies whether to transmit data over HTTPS. Valid values:'."\n" + ."\n" + .'* true: transmits data over HTTPS.'."\n" + .'* false: transmits data over HTTP.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ - 'name' => 'Edition', + 'name' => 'ResourceGroupId', 'in' => 'query', - 'schema' => [ - 'title' => '版本类型,支持BASIC和STANDARD,默认值为STANDARD。', - 'type' => 'string', - 'example' => 'STANDARD', - ], + 'schema' => ['description' => 'The ID of the resource group.'."\n", 'type' => 'string', 'required' => false, 'example' => 'rg-aekzvx7d3c4kpny', 'title' => ''], + ], + [ + 'name' => 'CrossAccountType', + 'in' => 'query', + 'schema' => ['description' => 'The backup type. Valid values:'."\n" + ."\n" + .'- **SELF_ACCOUNT**: Data is backed up within the same Alibaba Cloud account.'."\n" + .'- **CROSS_ACCOUNT**: Data is backed up across Alibaba Cloud accounts.', 'type' => 'string', 'required' => false, 'example' => 'CROSS_ACCOUNT', 'title' => ''], + ], + [ + 'name' => 'CrossAccountUserId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the source Alibaba Cloud account that authorizes the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '158975xxxxx4625', 'title' => ''], + ], + [ + 'name' => 'CrossAccountRoleName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the Resource Access Management (RAM) role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.', 'type' => 'string', 'required' => false, 'example' => 'hbrcrossrole', 'title' => ''], ], ], 'responses' => [ @@ -2291,112 +1589,133 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', + 'Code' => ['description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'RequestId' => ['description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => '4A8A9AE4-F798-5E6D-853E-10F9F5A1BD4E', 'title' => ''], + 'TaskId' => ['description' => 'The ID of the asynchronous job. You can call the DescribeTask operation to query the execution result of an asynchronous job.'."\n", 'type' => 'string', 'example' => 't-000h9x5t02vhyksf1x7k', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the call is successful. Valid values:'."\n" + ."\n" + .'* true: The call is successful.'."\n" + .'* false: The call fails.'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'InstanceStatuses' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'InstanceStatus' => [ + 'description' => 'The status of the ECS instance. If you specify more than one instance IDs in the request and the status of an ECS instance does not meet the requirements to install an HBR client, an error message is returned based on the value of this parameter.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The status of the ECS instance. If you specify more than one instance IDs in the request and the status of an ECS instance does not meet the requirements to install an HBR client, an error message is returned based on the value of this parameter.'."\n", + 'type' => 'object', + 'properties' => [ + 'ValidInstance' => ['description' => 'Indicates whether an HBR client can be installed on the ECS instance. Valid values:'."\n" + ."\n" + .'* true: An HBR client can be installed on the ECS instance.'."\n" + .'* false: An HBR client cannot be installed on the ECS instance.'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'InstanceId' => ['description' => 'The ID of the ECS instance.'."\n", 'type' => 'string', 'example' => 'i-2zegp3cdu******uj9i', 'title' => ''], + ], + 'title' => '', + ], + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', ], ], + 'description' => '', + 'title' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteBackupPlanResponse>\\n<Message>successful</Message>\\n<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n<Code>200</Code>\\n<Success>true</Success>\\n</DeleteBackupPlanResponse>","errorExample":""}]', - 'title' => 'DeleteBackupPlan', - 'description' => '* If you delete a backup plan, the backup jobs are also deleted.'."\n" - .'* If you delete a backup plan, the created snapshot files are not deleted.'."\n", - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'DisableBackupPlan' => [ - 'summary' => 'Disables a backup plan.', - 'methods' => [ - 'post', - 'get', + 'title' => 'CreateClients', + 'summary' => 'Installs one or more Cloud Backup clients on specified instances.', + 'description' => 'Before you call this operation, make sure that you fully understand the billing methods and pricing of Cloud Backup. For more information, see [Billing methods and billable items](~~89062~~).'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateClients'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:CreateClients', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"4A8A9AE4-F798-5E6D-853E-10F9F5A1BD4E\\",\\n \\"TaskId\\": \\"t-000h9x5t02vhyksf1x7k\\",\\n \\"Success\\": true,\\n \\"InstanceStatuses\\": {\\n \\"InstanceStatus\\": [\\n {\\n \\"ValidInstance\\": true,\\n \\"InstanceId\\": \\"i-2zegp3cdu******uj9i\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<CreateClientsResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>4A8A9AE4-F798-5E6D-853E-10F9F5A1BD4E</RequestId>\\n <TaskId>t-000h9x5t02vhyksf1x7k</TaskId>\\n <Success>true</Success>\\n <InstanceStatuses>\\n <ValidInstance>true</ValidInstance>\\n <InstanceId>i-2zegp3cdu******uj9i</InstanceId>\\n </InstanceStatuses>\\n</CreateClientsResponse>","errorExample":""}]', + ], + 'CreateHanaBackupPlan' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '95581', - 'abilityTreeNodes' => [ - 'FEATUREhbr9ZUQY7', - ], - ], + 'systemTags' => ['operationType' => 'create'], 'parameters' => [ [ - 'name' => 'PlanId', + 'name' => 'VaultId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'required' => true, 'example' => 'v-0002pcwhdn******wmi'], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the SAP HANA instance.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cl-00024vyjj9******v'], + ], + [ + 'name' => 'PlanName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the backup plan.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'plan-20220110-113108'], + ], + [ + 'name' => 'Schedule', + 'in' => 'query', + 'schema' => ['description' => 'The backup policy. Format: `I|{startTime}|{interval}`. The system runs the first backup job at a point in time that is specified in the {startTime} parameter and the subsequent backup jobs at an interval that is specified in the {interval} parameter. The system does not run a backup job before the specified point in time. Each backup job, except the first one, starts only after the previous backup job is completed. For example, `I|1631685600|P1D` specifies that the system runs the first backup job at 14:00:00 on September 15, 2021 and the subsequent backup jobs once a day.'."\n" + ."\n" + .'* startTime: the time at which the system starts to run a backup job. The time must follow the UNIX time format. Unit: seconds.'."\n" + .'* interval: the interval at which the system runs a backup job. The interval must follow the ISO 8601 standard. For example, PT1H specifies an interval of one hour. P1D specifies an interval of one day.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'I|1602673264|P1D'], + ], + [ + 'name' => 'BackupType', 'in' => 'query', 'schema' => [ - 'description' => 'The ID of the backup plan.'."\n", + 'description' => 'The backup type. Valid values:'."\n" + ."\n" + .'* COMPLETE: full backup'."\n" + .'* INCREMENTAL: incremental backup'."\n" + .'* DIFFERENTIAL: differential backup'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, - 'example' => 'plan-*********************', + 'enumValueTitles' => [], + 'example' => 'COMPLETE', ], ], [ - 'name' => 'VaultId', + 'name' => 'DatabaseName', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 'v-*********************', - ], + 'schema' => ['description' => 'The name of the database.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'SYSTEMDB'], ], [ - 'name' => 'SourceType', + 'name' => 'BackupPrefix', 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the data source. Valid values:'."\n" - ."\n" - .'* **ECS_FILE**: Elastic Compute Service (ECS) files'."\n" - .'* **OSS**: Object Storage Service (OSS) buckets'."\n" - .'* **NAS**: Apsara File Storage NAS (NAS) file systems'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'ECS_FILE', - ], + 'schema' => ['description' => 'The backup prefix.'."\n", 'type' => 'string', 'required' => false, 'example' => 'DIFF_DATA_BACKUP'], ], [ - 'name' => 'Edition', + 'name' => 'ResourceGroupId', 'in' => 'query', - 'schema' => [ - 'title' => '版本类型,支持BASIC和STANDARD,默认值为STANDARD。', - 'type' => 'string', - 'example' => 'STANDARD', - ], + 'schema' => ['description' => 'The ID of the resource group.'."\n", 'type' => 'string', 'required' => false, 'example' => 'rg-acfmvnf22m7itha'], ], ], 'responses' => [ @@ -2404,112 +1723,140 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '33AA3AAE-89E1-5D3A-A51D-0C0A80850F68'], + 'PlanId' => ['description' => 'The ID of the backup plan.'."\n", 'type' => 'string', 'example' => 'pl-000756jdlk2zmqig2nea'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], ], 'description' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DisableBackupPlanResponse>\\n<Message>successful</Message>\\n<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n<Code>200</Code>\\n<Success>true</Success>\\n</DisableBackupPlanResponse>","errorExample":""}]', - 'title' => 'DisableBackupPlan', - 'description' => 'After you call this operation, the backup plan is suspended. In the DescribeBackupPlans operation, the Disabled parameter is set to true.'."\n", - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'EnableBackupPlan' => [ - 'summary' => 'Enables a backup plan.', - 'methods' => [ - 'post', - 'get', + 'title' => 'CreateHanaBackupPlan', + 'summary' => 'Creates a backup plan for an SAP HANA instance.', + 'description' => '* A backup plan defines the data source, backup policy, and other configurations. After you execute a backup plan, a backup job is generated to record the backup progress and the backup result. If a backup job is completed, a backup snapshot is generated. You can use a backup snapshot to create a restore job.'."\n" + .'* You can specify only one type of data source in a backup plan.'."\n" + .'* You can specify only one interval as a backup cycle in a backup plan.'."\n" + .'* Each backup plan allows you to back up data to only one backup vault.'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateHanaBackupPlan'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:CreateHanaBackupPlan', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"33AA3AAE-89E1-5D3A-A51D-0C0A80850F68\\",\\n \\"PlanId\\": \\"pl-000756jdlk2zmqig2nea\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<CreateHanaBackupPlanResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>33AA3AAE-89E1-5D3A-A51D-0C0A80850F68</RequestId>\\n <PlanId>pl-000756jdlk2zmqig2nea</PlanId>\\n <Success>true</Success>\\n</CreateHanaBackupPlanResponse>","errorExample":""}]', + ], + 'CreateHanaInstance' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', - 'deprecated' => false, + 'operationType' => 'readAndWrite', 'systemTags' => [ - 'operationType' => 'update', + 'operationType' => 'create', 'riskType' => 'none', - 'chargeType' => 'paid', - 'abilityTreeCode' => '95589', - 'abilityTreeNodes' => [ - 'FEATUREhbr9ZUQY7', - ], + 'chargeType' => 'free', + 'abilityTreeCode' => '95438', + 'abilityTreeNodes' => ['FEATUREhbrI97IXK'], ], 'parameters' => [ [ - 'name' => 'PlanId', + 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup plan.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'plan-*********************', - ], + 'schema' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'required' => true, 'example' => 'v-0003v4a******gfv2', 'docRequired' => true, 'title' => ''], ], [ - 'name' => 'VaultId', + 'name' => 'HanaName', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 'v-*********************', - ], + 'schema' => ['description' => 'The name of the SAP HANA instance.'."\n", 'type' => 'string', 'required' => false, 'example' => 'HANA-DEV', 'docRequired' => true, 'title' => ''], ], [ - 'name' => 'SourceType', + 'name' => 'Host', 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the data source. Valid values:'."\n" - ."\n" - .'* **ECS_FILE**: ECS files'."\n" - .'* **OSS**: Object Storage Service (OSS) buckets'."\n" - .'* **NAS**: Apsara File Storage NAS (NAS) file systems'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'ECS_FILE', - ], + 'schema' => ['description' => 'The private or internal IP address of the host where the primary node of the SAP HANA instance resides.'."\n", 'type' => 'string', 'required' => false, 'example' => '47.100.XX.XX', 'docRequired' => true, 'title' => ''], ], [ - 'name' => 'Edition', + 'name' => 'InstanceNumber', 'in' => 'query', - 'schema' => [ - 'title' => '版本类型,支持BASIC和STANDARD,默认值为STANDARD。', - 'type' => 'string', - 'example' => 'STANDARD', - ], + 'schema' => ['description' => 'The instance number of the SAP HANA system.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '00', 'docRequired' => true, 'title' => ''], + ], + [ + 'name' => 'UserName', + 'in' => 'query', + 'schema' => ['description' => 'The username of the SYSTEMDB database.'."\n", 'type' => 'string', 'required' => false, 'example' => 'admin', 'docRequired' => true, 'title' => ''], + ], + [ + 'name' => 'Password', + 'in' => 'query', + 'schema' => ['description' => 'The password that is used to connect with the SAP HANA database.'."\n", 'type' => 'string', 'required' => false, 'example' => '************', 'docRequired' => true, 'title' => ''], + ], + [ + 'name' => 'UseSsl', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to connect with the SAP HANA database over Secure Sockets Layer (SSL).'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], + ], + [ + 'name' => 'ValidateCertificate', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to verify the SSL certificate of the SAP HANA database.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], + ], + [ + 'name' => 'AlertSetting', + 'in' => 'query', + 'schema' => ['description' => 'The alert settings. Valid value: INHERITED, which indicates that the Cloud Backup client sends alert notifications by using the same method configured for the backup vault.'."\n", 'type' => 'string', 'required' => false, 'example' => 'INHERITED', 'title' => ''], + ], + [ + 'name' => 'EcsInstanceId', + 'in' => 'query', + 'schema' => ['description' => 'The IDs of the ECS instances that host the SAP HANA instance to be registered. Cloud Backup installs backup clients on the specified ECS instances.'."\n", 'type' => 'string', 'required' => false, 'example' => '[\\"i-uf6ir9y******hvisj\\"]', 'title' => ''], + ], + [ + 'name' => 'Sid', + 'in' => 'query', + 'schema' => ['description' => 'The security identifier (SID) of the SAP HANA database. For more information, see [How to find sid user and instance number of HANA db?](https://answers.sap.com/questions/555192/how-to-find-sid-user-and-instance-number-of-hana-d.html?spm=a2c4g.11186623.0.0.55c34b4ftZeXNK).'."\n", 'type' => 'string', 'required' => false, 'example' => 'HXE', 'title' => ''], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the resource group.'."\n", 'type' => 'string', 'required' => false, 'example' => 'rg-acfm4ebtpkzx7zy', 'title' => ''], + ], + [ + 'name' => 'CrossAccountType', + 'in' => 'query', + 'schema' => ['description' => 'The backup type. Valid values:'."\n" + ."\n" + .'- **SELF_ACCOUNT**: Data is backed up within the same Alibaba Cloud account.'."\n" + .'- **CROSS_ACCOUNT**: Data is backed up across Alibaba Cloud accounts.', 'type' => 'string', 'required' => false, 'example' => 'CROSS_ACCOUNT', 'title' => ''], + ], + [ + 'name' => 'CrossAccountUserId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the source Alibaba Cloud account that authorizes the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '158975xxxxx4625', 'title' => ''], + ], + [ + 'name' => 'CrossAccountRoleName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the Resource Access Management (RAM) role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.', 'type' => 'string', 'required' => false, 'example' => 'hbrcrossrole', 'title' => ''], ], ], 'responses' => [ @@ -2517,51 +1864,47 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'EB526A5D-1FE2-51C1-B790-1732C1DBA969', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'ClusterId' => ['description' => 'The ID of the SAP HANA instance.'."\n", 'type' => 'string', 'example' => 'cl-000dp1sz******6hn', 'title' => ''], ], 'description' => '', + 'title' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<EnableBackupPlanResponse>\\n<Message>successful</Message>\\n<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n<Code>200</Code>\\n<Success>true</Success>\\n</EnableBackupPlanResponse>","errorExample":""}]', - 'title' => 'EnableBackupPlan', - 'description' => 'After you call this operation, the backup plan is restarted (Disabled is set to false in the DescribeBackupPlans operation). Cloud Backup continues to perform backups based on the policy specified in the backup plan.'."\n", - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'UpdateBackupPlan' => [ - 'summary' => 'Updates a backup plan.', - 'methods' => [ - 'post', - 'get', + 'title' => 'CreateHanaInstance', + 'summary' => 'Registers an SAP HANA instance.', + 'description' => 'To register an SAP HANA instance, you must configure the SAP HANA connection information. After the SAP HANA instance is registered, Cloud Backup installs a backup client on the node of the SAP HANA instance.'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateHanaInstance'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:CreateHanaInstance', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"EB526A5D-1FE2-51C1-B790-1732C1DBA969\\",\\n \\"Success\\": true,\\n \\"ClusterId\\": \\"cl-000dp1sz******6hn\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateHanaInstanceResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>EB526A5D-1FE2-51C1-B790-1732C1DBA969</RequestId>\\n <Success>true</Success>\\n <ClusterId>cl-000dp1sz******6hn</ClusterId>\\n</CreateHanaInstanceResponse>","errorExample":""}]', + ], + 'CreateHanaRestore' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -2569,312 +1912,102 @@ ], 'operationType' => 'write', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '95667', - 'abilityTreeNodes' => [ - 'FEATUREhbr9ZUQY7', - ], - ], + 'systemTags' => ['operationType' => 'create'], 'parameters' => [ [ - 'name' => 'PlanId', + 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup plan.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'plan-20211***735', - ], + 'schema' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'required' => false, 'example' => 'v-000************yqr'], ], [ - 'name' => 'PlanName', + 'name' => 'ClusterId', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the backup plan.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'planname', - 'maxLength' => 64, - 'minLength' => 1, - ], + 'schema' => ['description' => 'The ID of the SAP HANA instance that you want to restore.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cl-000fbrs5******ka9w'], ], [ - 'name' => 'Schedule', + 'name' => 'DatabaseName', 'in' => 'query', - 'schema' => [ - 'description' => 'The backup policy. Format: `I|{startTime}|{interval}`. The system runs the first backup job at a point in time that is specified in the `{startTime}` parameter and the subsequent backup jobs at an interval that is specified in the `{interval}` parameter. The system does not run a backup job before the specified point in time. Each backup job, except the first one, starts only after the previous backup job is completed. For example, `I|1631685600|P1D` specifies that the system runs the first backup job at 14:00:00 on September 15, 2021 and the subsequent backup jobs once a day.'."\n" - ."\n" - .'* **startTime**: the time at which the system starts to run a backup job. The time must follow the UNIX time format. Unit: seconds.'."\n" - .'* **interval**: the interval at which the system runs a backup job. The interval must follow the ISO 8601 standard. For example, PT1H specifies an interval of one hour. P1D specifies an interval of one day.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'I|1602673264|P1D', - ], + 'schema' => ['description' => 'The name of the database that you want to restore.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'TS2'], ], [ - 'name' => 'Retention', + 'name' => 'BackupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The retention period of the backup data. Minimum value: 1. Unit: days.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'docRequired' => true, - 'example' => '7', - ], + 'schema' => ['description' => 'The ID of the backup.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => true, 'example' => '1645628400235'], ], [ - 'name' => 'Prefix', + 'name' => 'Mode', 'in' => 'query', - 'schema' => [ - 'description' => 'This parameter is required only if the **SourceType** parameter is set to **OSS**. This parameter specifies the prefix of objects that you want to back up. After a prefix is specified, only objects whose names start with the prefix are backed up.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'oss-prefix', - ], + 'schema' => ['description' => 'The recovery mode. Valid values:'."\n" + ."\n" + .'* **RECOVERY_TO_MOST_RECENT**: restores the database to the recently available state to which the database has been backed up.'."\n" + .'* **RECOVERY_TO_POINT_IN_TIME**: restores the database to a specified point in time.'."\n" + .'* **RECOVERY_TO_SPECIFIC_BACKUP**: restores the database to a specified backup.'."\n" + .'* **RECOVERY_TO_LOG_POSITION**: restores the database to a specified log position.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'RECOVERY_TO_POINT_IN_TIME'], ], [ - 'name' => 'VaultId', + 'name' => 'RecoveryPointInTime', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 'v-0006******q', - ], + 'schema' => ['description' => 'The point in time to which you want to restore the database. This parameter is valid only if you set the Mode parameter to **RECOVERY_TO_POINT_IN_TIME**. HBR restores the database to a state closest to the specified point in time.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1635315505'], ], [ - 'name' => 'Detail', + 'name' => 'LogPosition', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'description' => 'The details about ECS instance backup. The value is a JSON string.'."\n" - ."\n" - .'* snapshotGroup: specifies whether to use a snapshot-consistent group. This parameter is valid only if all disks of the ECS instance are enhanced SSDs (ESSDs).'."\n" - .'* appConsistent: specifies whether to enable application consistency. If you set this parameter to true, you must also specify the preScriptPath and postScriptPath parameters.'."\n" - .'* preScriptPath: the path to the pre-freeze scripts.'."\n" - .'* postScriptPath: the path to the post-thaw scripts.'."\n", - 'type' => 'object', - 'required' => false, - 'example' => '{\\"EnableFsFreeze\\":true,\\"appConsistent\\":false,\\"postScriptPath\\":\\"\\",\\"preScriptPath\\":\\"\\",\\"snapshotGroup\\":true,\\"timeoutInSeconds\\":60}', - ], + 'schema' => ['description' => 'The log position to which you want to restore the database. This parameter is valid only if you set the Mode parameter to **RECOVERY_TO_LOG_POSITION**.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '0'], ], [ - 'name' => 'SourceType', + 'name' => 'VolumeId', 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the data source. Valid values:'."\n" - ."\n" - .'* **ECS_FILE**: Elastic Compute Service (ECS) files'."\n" - .'* **OSS**: Object Storage Service (OSS) buckets'."\n" - .'* **NAS**: Apsara File Storage NAS file systems'."\n" - .'* **OTS**: Tablestore instances'."\n" - .'* **UDM_ECS**: ECS instances'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'ECS_FILE', - ], + 'schema' => ['description' => 'The ID of the volume that you want to restore. This parameter is valid only if you set the Mode parameter to **RECOVERY_TO_LOG_POSITION**.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0'], ], [ - 'name' => 'SpeedLimit', + 'name' => 'UseCatalog', 'in' => 'query', - 'schema' => [ - 'description' => 'This parameter is required only if the **SourceType** parameter is set to **ECS_FILE**. This parameter specifies the throttling rules. To ensure business continuity, you can limit the bandwidth that is used for file backup during peak hours. Format: `{start}|{end}|{bandwidth}`. Separate multiple throttling rules with vertical bars (|). A specified time range cannot overlap with another time range.'."\n" - ."\n" - .'* **start**: the start hour'."\n" - .'* **end**: the end hour.'."\n" - .'* **bandwidth**: the bandwidth. Unit: KB/s.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '0:24:5120', - ], + 'schema' => ['description' => 'Specifies whether to use a catalog backup to restore the database. This parameter is required only if you set the Mode parameter to **RECOVERY_TO_SPECIFIC_BACKUP**. If you turn off Use Catalog, you must specify the prefix of a backup file. Then, Cloud Backup finds the backup file based on the specified prefix and restores the backup file.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'false', 'default' => 'true'], ], [ - 'name' => 'Include', - 'in' => 'formData', - 'schema' => [ - 'description' => 'This parameter is required only if the **SourceType** parameter is set to **ECS_FILE**. This parameter specifies the paths to the files that you want to back up. The value must be 1 to 255 characters in length.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '["/home/alice/*.pdf", "/home/bob/*.txt"]', - ], - ], - [ - 'name' => 'Exclude', - 'in' => 'formData', - 'schema' => [ - 'description' => 'This parameter is required only if the **SourceType** parameter is set to **ECS_FILE**. This parameter specifies the paths to the files that are excluded from the backup job. The value must be 1 to 255 characters in length.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '["/var", "/proc"]', - ], + 'name' => 'BackupPrefix', + 'in' => 'query', + 'schema' => ['description' => 'The backup prefix.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'COMPLETE_DATA_BACKUP_2022_05_02_15_39'], ], [ - 'name' => 'Options', - 'in' => 'formData', - 'schema' => [ - 'description' => 'This parameter is required only if the **SourceType** parameter is set to **ECS_FILE**. This parameter specifies whether to use Windows Volume Shadow Copy Service (VSS) to define a source path.'."\n" - ."\n" - .'* This parameter is available only for Windows ECS instances.'."\n" - .'* If data changes occur in the backup source, the source data must be the same as the data to be backed up before you can set this parameter to `["UseVSS":true]`.'."\n" - .'* If you use VSS, you cannot back up data from multiple directories.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '{"UseVSS":false}', - ], + 'name' => 'SystemCopy', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to restore the database to a different instance.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], [ - 'name' => 'UpdatePaths', + 'name' => 'Source', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to update the source path if the backup source is empty. Valid values:'."\n" - ."\n" - .'* true: The system replaces the original source path with the specified source path.'."\n" - .'* false: The system does not update the original source path. The system backs up data based on the source path that you specified when you created the backup plan.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => 'The name of the source system. This parameter specifies the name of the source database that you want to restore. You must set the parameter in the `<Source database name>@SID` format.'."\n", 'type' => 'string', 'required' => false, 'example' => 'HNP@HNP'], ], [ - 'name' => 'Path', + 'name' => 'SourceClusterId', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'The source paths.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The source paths. The value must be 1 to 65,536 characters in length. You must specify source paths based on the following rules:'."\n" - ."\n" - .'* If you do not use wildcards (\\*), you can enter up to 20 source paths.'."\n" - .'* If you use wildcards (\\*), you can enter only one path. You must specify the path in the `/*/*` format.'."\n" - .'* Only absolute paths are supported.'."\n" - .'* If you use VSS, you can enter only one path. UNC paths and wildcards (\\*) are not supported. You cannot exclude files from the backup plan.'."\n" - .'* If you use UNC, VSS paths and wildcards (\\*) are not supported. You cannot exclude files from the backup plan. If a UNC path is specified, HBR does not back up the access control list (ACL) of Windows.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '["/home"]', - ], - 'required' => false, - 'maxItems' => 20, - ], + 'schema' => ['description' => 'The ID of the source SAP HANA instance.'."\n", 'type' => 'string', 'required' => false, 'example' => 'cl-000ii8tzv******xm0t'], ], [ - 'name' => 'Rule', - 'in' => 'formData', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'The rule of the backup plan.'."\n", - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'DestinationRetention' => [ - 'description' => 'The retention period of the backup data. Unit: days.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '7', - ], - 'Schedule' => [ - 'description' => 'The backup policy. Format: I|{startTime}|{interval}. The system runs the first backup job at a point in time that is specified in the {startTime} parameter and the subsequent backup jobs at an interval that is specified in the {interval} parameter. The system does not run a backup job before the specified point in time. Each backup job, except the first one, starts only after the previous backup job is completed. For example, I|1631685600|P1D specifies that the system runs the first backup job at 14:00:00 on September 15, 2021 and the subsequent backup jobs once a day.'."\n" - ."\n" - .'startTime: the time at which the system starts to run a backup job. The time must follow the UNIX time format. Unit: seconds. interval: the interval at which the system runs a backup job. The interval must follow the ISO 8601 standard. For example, PT1H specifies an interval of one hour. P1D specifies an interval of one day.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'I|1631685600|P1D', - ], - 'Disabled' => [ - 'description' => 'Specifies whether to disable the policy.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], - 'Retention' => [ - 'description' => 'The retention period of the backup data. Minimum value: 1. Unit: days.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '7', - ], - 'DoCopy' => [ - 'description' => 'Specifies whether to enable remote replication.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], - 'DestinationRegionId' => [ - 'description' => 'The ID of the region where the remote backup vault resides.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cn-shanghai', - ], - 'RuleName' => [ - 'description' => 'The name of the backup policy.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rule-test-name', - ], - 'BackupType' => [ - 'description' => 'The backup type. Valid value: **COMPLETE**, which indicates full backup.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'COMPLETE', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 64, - ], + 'name' => 'ClearLog', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to delete all log entries from the log area after the log entries are restored. Valid values: true and false. If you set the value to false, all log entries are deleted from the log area after the log entries are restored.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], [ - 'name' => 'OtsDetail', - 'in' => 'formData', - 'style' => 'json', - 'schema' => [ - 'description' => 'The details about the Tablestore instance.'."\n", - 'required' => false, - '$ref' => '#/components/schemas/OtsDetail', - ], + 'name' => 'CheckAccess', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to validate the differential backup and log backup. Valid values: true and false. If you set the value to true, HBR checks whether the required differential backup and log backup are available before the restore job starts. If the differential backup or log backup is unavailable, HBR does not start the restore job.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], [ - 'name' => 'KeepLatestSnapshots', + 'name' => 'UseDelta', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to enable the feature of keeping at least one backup version. Valid values:'."\n" - ."\n" - .'* 0: The feature is disabled.'."\n" - .'* 1: The feature is enabled.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => 'Specifies whether to use a differential backup or an incremental backup to restore the database. Valid values: true and false. If you want to use a differential backup or an incremental backup to restore the database, set the value to true. If you set the value to false, HBR uses a log backup to restore the database.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ - 'name' => 'ChangeListPath', + 'name' => 'SidAdmin', 'in' => 'query', - 'schema' => [ - 'description' => 'The configurations of the incremental file synchronization. This parameter is required for data synchronization only.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '{"dataSourceId": "ds-123456789", "path": "/changelist"}', - ], + 'schema' => ['description' => 'The SID admin account that is created by SAP HANA.'."\n", 'type' => 'string', 'required' => false, 'example' => 'DB'], ], [ - 'name' => 'Edition', + 'name' => 'MasterClientId', 'in' => 'query', - 'schema' => [ - 'title' => '版本类型,支持BASIC和STANDARD,默认值为STANDARD。', - 'type' => 'string', - 'example' => 'STANDARD', - ], + 'schema' => ['description' => 'The ID of the client where the primary node of the SAP HANA resides.'."\n", 'type' => 'string', 'required' => false, 'example' => 'c-000ii8tzv**********'], ], ], 'responses' => [ @@ -2882,791 +2015,292 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => 'EEC65C22-2152-5E31-8AD6-D6CBF1BFF49F'], + 'Success' => ['description' => 'Indicates whether the call is successful. Valid values:'."\n" + ."\n" + .'* true: The call is successful.'."\n" + .'* false: The call fails.'."\n", 'type' => 'boolean', 'example' => 'true'], + 'RestoreId' => ['description' => 'The ID of the restore job.'."\n", 'type' => 'string', 'example' => 'hr-000fb9bz190p1rse6jwv'], ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateBackupPlanResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <Success>true</Success>\\n</UpdateBackupPlanResponse>","errorExample":""}]', - 'title' => 'UpdateBackupPlan', - ], - 'DescribeBackupPlans' => [ - 'summary' => 'Queries the information about one or more backup plans that meet the specified conditions.', - 'methods' => [ - 'post', - 'get', + 'title' => 'CreateHanaRestore', + 'summary' => 'Creates a restore job for an SAP HANA database.', + 'description' => 'If you call this operation to restore a database, the database is restored to a specified state. Proceed with caution. For more information, see [Restore databases to an SAP HANA instance](~~101178~~).'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateHanaRestore'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:CreateHanaRestore', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"EEC65C22-2152-5E31-8AD6-D6CBF1BFF49F\\",\\n \\"Success\\": true,\\n \\"RestoreId\\": \\"hr-000fb9bz190p1rse6jwv\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateHanaRestoreResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>EEC65C22-2152-5E31-8AD6-D6CBF1BFF49F</RequestId>\\n <Success>true</Success>\\n <RestoreId>hr-000fb9bz190p1rse6jwv</RestoreId>\\n</CreateHanaRestoreResponse>","errorExample":""}]', + ], + 'CreatePolicyBindings' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '95503', - 'abilityTreeNodes' => [ - 'FEATUREhbr56LH1C', - 'FEATUREhbrS7MI6C', - 'FEATUREhbrFWIWBG', - 'FEATUREhbrAW9I1R', - 'FEATUREhbrB1KQ9G', - 'FEATUREhbrQ3MV3B', - 'FEATUREhbr3BJQCT', - ], + 'operationType' => 'create', + 'abilityTreeCode' => '136856', + 'abilityTreeNodes' => ['FEATUREhbr56LH1C', 'FEATUREhbrFWIWBG', 'FEATUREhbrAW9I1R', 'FEATUREhbrB1KQ9G', 'FEATUREhbr3BJQCT', 'FEATUREhbr9ZUQY7'], ], 'parameters' => [ [ - 'name' => 'PageNumber', - 'in' => 'query', - 'schema' => [ - 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '1', - 'example' => '1', - 'default' => '1', - ], - ], - [ - 'name' => 'PageSize', - 'in' => 'query', - 'schema' => [ - 'description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '100', - 'minimum' => '1', - 'example' => '10', - 'default' => '10', - ], - ], - [ - 'name' => 'SourceType', - 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the data source. Valid values:'."\n" - ."\n" - .'* **ECS_FILE**: Elastic Compute Service (ECS) files'."\n" - .'* **OSS**: Object Storage Service (OSS) buckets'."\n" - .'* **NAS**: File Storage NAS (NAS) file systems'."\n" - .'* **OTS**: Tablestore instances'."\n" - .'* **UDM_ECS**: ECS instances'."\n" - .'* **SYNC**: data synchronization'."\n", - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 'ECS_FILE', - ], + 'name' => 'PolicyId', + 'in' => 'formData', + 'schema' => ['description' => 'The ID of the backup policy.'."\n", 'type' => 'string', 'required' => false, 'example' => 'po-000************8ep', 'title' => ''], ], [ - 'name' => 'Filters', + 'name' => 'PolicyBindingList', 'in' => 'query', - 'style' => 'repeatList', + 'style' => 'json', 'schema' => [ - 'description' => 'The filters.', + 'description' => 'The data sources that you want to bind to the backup policy.'."\n", 'type' => 'array', 'items' => [ + 'description' => 'The details of the data sources that you want to bind to the backup policy.'."\n", 'type' => 'object', 'properties' => [ - 'Key' => [ - 'description' => 'The keys in the filter. Valid values:'."\n" - ."\n" - .'* **regionId**: the ID of a region'."\n" - .'* **planId**: the ID of a backup plan'."\n" - .'* **sourceType**: the type of a data source'."\n" - .'* **vaultId**: the ID of a backup vault'."\n" - .'* **instanceName**: the name of an instance'."\n" - .'* **instanceId**: the ID of an instance'."\n" - .'* **planName**: the name of a backup plan'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'vaultId', - ], - 'Values' => [ - 'description' => 'The values that you want to match in the filter.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The value that you want to match in the filter.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'v-*********************', + 'PolicyBindingDescription' => ['description' => 'The description of the association.'."\n", 'type' => 'string', 'required' => false, 'example' => 'This is a policy bindable description.', 'title' => ''], + 'DataSourceId' => ['description' => 'The ID of the data source. The meaning of this parameter depends on the **SourceType** parameter. Valid values:'."\n" + ."\n" + .'* **UDM_ECS**: the ID of the Elastic Compute Service (ECS) instance'."\n" + .'* **OSS**: the name of the Object Storage Service (OSS) bucket'."\n" + .'* **NAS**: the ID of the File Storage NAS (NAS) file system'."\n" + .'* **COMMON_NAS**: the ID of the on-premises NAS file system'."\n" + .'* **ECS_FILE**: the ID of the ECS instance'."\n" + .'* **File**: the ID of the Cloud Backup client'."\n" + .'* **COMMON_FILE_SYSTEM**: the ID of the Cloud Parallel File Storage (CPFS) backup data source'."\n", 'type' => 'string', 'required' => false, 'example' => 'i-bp1************dl8', 'title' => ''], + 'Disabled' => ['description' => 'Specifies whether to disable the backup policy for the data source. Valid values:'."\n" + ."\n" + .'* true: disables the backup policy for the data source'."\n" + .'* false: enables the backup policy for the data source'."\n", 'type' => 'string', 'required' => false, 'example' => 'true', 'title' => ''], + 'SourceType' => ['description' => 'The type of the data source. Valid values:'."\n" + ."\n" + .'* **UDM_ECS**: ECS instance'."\n" + .'* **OSS**: OSS bucket'."\n" + .'* **NAS**: NAS file system'."\n" + .'* **COMMON_NAS**: on-premises NAS file system'."\n" + .'* **ECS_FILE**: ECS file'."\n" + .'* **File**: on-premises file'."\n" + .'* **COMMON_FILE_SYSTEM**: CPFS file system'."\n", 'type' => 'string', 'required' => false, 'example' => 'UDM_ECS', 'title' => ''], + 'Source' => ['description' => '* If the SourceType parameter is set to **OSS**, set the Source parameter to the prefix of the path to the folder that you want to back up. If you do not specify the Source parameter, the entire bucket (root directory) is backed up.'."\n" + .'* If the SourceType parameter is set to **ECS_FILE** or **File**, set the Source parameter to the path to the files that you want to back up. If you do not specify the Source parameter, all paths are backed up.'."\n" + .'* This parameter is required if the SourceType parameter is set to **COMMON_FILE_SYSTEM**. This parameter specifies the path to be backed up. To back up the /src path, enter \\["/src"]. To back up the root path, enter \\["/"].'."\n", 'type' => 'string', 'required' => false, 'example' => 'backup/', 'title' => ''], + 'Include' => ['description' => 'This parameter is required only if you set the **SourceType** parameter to **ECS_FILE**, **File**, **NAS**, **COMMON_NAS**, or **COMMON_FILE_SYSTEM**. This parameter specifies the type of files to be backed up. All files of the specified type are backed up. The value can be up to 255 characters in length.'."\n", 'type' => 'string', 'required' => false, 'example' => '[\\"*.doc\\",\\"*.xltm\\"]', 'title' => ''], + 'Exclude' => ['description' => 'This parameter is required only if you set the **SourceType** parameter to **ECS_FILE**, **File**, **NAS**, **COMMON_NAS**, or **COMMON_FILE_SYSTEM**. This parameter specifies the type of files that do not need to be backed up. No files of the specified type are backed up. The value can be up to 255 characters in length.'."\n", 'type' => 'string', 'required' => false, 'example' => '[\\"*.doc\\",\\"*.xltm\\"]', 'title' => ''], + 'SpeedLimit' => ['description' => 'This parameter is required only if you set the **SourceType** parameter to **ECS_FILE** or **File**. This parameter specifies the throttling rules. Format: `{start}{end}{bandwidth}`. Separate multiple throttling rules with vertical bars (|). The time ranges of the throttling rules cannot overlap.'."\n" + ."\n" + .'* **start**: the start hour.'."\n" + .'* **end**: the end hour.'."\n" + .'* **bandwidth**: the bandwidth. Unit: KB/s.'."\n", 'type' => 'string', 'required' => false, 'example' => '0:24:1024', 'title' => ''], + 'AdvancedOptions' => [ + 'description' => 'The advanced options.'."\n", + 'type' => 'object', + 'properties' => [ + 'UdmDetail' => [ + 'description' => 'The advanced options for ECS instance backup.'."\n", + 'type' => 'object', + 'properties' => [ + 'ExcludeDiskIdList' => [ + 'description' => 'The IDs of the disks that do not need to be protected. If the DiskIdList parameter is not empty, this parameter is ignored.'."\n", + 'type' => 'array', + 'items' => ['description' => 'The ID of the disk that does not need to be protected.'."\n", 'type' => 'string', 'required' => false, 'example' => 'd-bp1************apo', 'title' => ''], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'DiskIdList' => [ + 'description' => 'The IDs of the disks that need to be protected. If all disks need to be protected, this parameter is empty.'."\n", + 'type' => 'array', + 'items' => ['description' => 'The ID of the disk that needs to be protected.'."\n", 'type' => 'string', 'required' => false, 'example' => 'd-bp1************apo', 'title' => ''], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'SnapshotGroup' => ['description' => 'Specifies whether to create a snapshot-consistent group. You can create a snapshot-consistent group only if all disks are Enterprise SSDs (ESSDs).'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], + 'AppConsistent' => ['description' => 'Specifies whether to enable application consistency. You can enable application consistency only if all disks are ESSDs.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], + 'RamRoleName' => ['description' => 'This parameter is required only if you set the **AppConsistent** parameter to **true**. This parameter specifies the name of the Resource Access Management (RAM) role that is required to create application-consistent snapshots.'."\n", 'type' => 'string', 'required' => false, 'example' => 'AliyunECSInstanceForHbrRole', 'title' => ''], + 'PreScriptPath' => ['description' => 'This parameter is required only if you set the **AppConsistent** parameter to **true**. This parameter specifies the path of the pre-freeze scripts that are executed before application-consistent snapshots are created.'."\n", 'type' => 'string', 'required' => false, 'example' => '/tmp/prescript.sh', 'title' => ''], + 'PostScriptPath' => ['description' => 'This parameter is required only if you set the **AppConsistent** parameter to **true**. This parameter specifies the path of the post-thaw scripts that are executed after application-consistent snapshots are created.'."\n", 'type' => 'string', 'required' => false, 'example' => '/tmp/postscript.sh', 'title' => ''], + 'EnableFsFreeze' => ['description' => 'This parameter is required only if you set the **AppConsistent** parameter to **true**. This parameter specifies whether to enable Linux fsfreeze to put file systems into the read-only state before application-consistent snapshots are created. Default value: true.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], + 'TimeoutInSeconds' => ['description' => 'This parameter is required only if you set the **AppConsistent** parameter to **true**. This parameter specifies the I/O freeze timeout period. Default value: 30. Unit: seconds.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '30', 'title' => ''], + 'EnableWriters' => ['description' => 'This parameter is required only if you set the **AppConsistent** parameter to **true**. This parameter specifies whether to create application-consistent snapshots. Valid values:'."\n" + ."\n" + .'* true: creates application-consistent snapshots.'."\n" + .'* false: creates file system-consistent snapshots.'."\n" + ."\n" + .'Default value: true.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'OssDetail' => [ + 'description' => 'The advanced options for Object Storage Service (OSS) backup.'."\n", + 'type' => 'object', + 'properties' => [ + 'InventoryId' => ['description' => 'The name of the OSS inventory. If this parameter is not empty, the OSS inventory is used for performance optimization.'."\n" + ."\n" + .'* If you want to back up more than 100 million OSS objects, we recommend that you use inventory lists to accelerate incremental backup. Storage fees for inventory lists are included into your OSS bills.'."\n" + .'* A certain amount of time is required for OSS to generate inventory lists. Before inventory lists are generated, OSS objects may fail to be backed up. In this case, you can back up the OSS objects in the next backup cycle.'."\n", 'type' => 'string', 'required' => false, 'example' => 'oss-inventory-default', 'title' => ''], + 'InventoryCleanupPolicy' => ['description' => 'Specifies whether the system deletes the inventory lists when a backup is completed. This parameter is valid only when OSS inventories are used. Valid values:'."\n" + ."\n" + .'* **NO_CLEANUP**: does not delete inventory lists.'."\n" + .'* **DELETE_CURRENT**: deletes the current inventory list.'."\n" + .'* **DELETE_CURRENT_AND_PREVIOUS**: deletes all inventory lists.'."\n", 'type' => 'string', 'required' => false, 'example' => 'NO_CLEANUP', 'title' => ''], + 'IgnoreArchiveObject' => ['title' => '不在任务统计和失败文件列表中提示归档型对象', 'description' => 'Do not prompt for archival type objects in task statistics and failed file lists.', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'FileDetail' => [ + 'description' => 'The advanced options for file backup.'."\n", + 'type' => 'object', + 'properties' => [ + 'UseVSS' => ['description' => 'Specifies whether to enable the Volume Shadow Copy Service (VSS) feature. Valid values:'."\n" + ."\n" + .'* **true**: enables the feature.'."\n" + .'* **false**: disables the feature.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], + 'AdvPolicy' => ['description' => 'Specifies whether to use an advanced policy. Valid values:'."\n" + ."\n" + .'* **true**: uses the advanced policy.'."\n" + .'* **false**: does not use the advanced policy.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'CommonNasDetail' => [ + 'description' => 'The advanced options for on-premises NAS backup.'."\n", + 'type' => 'object', + 'properties' => [ + 'FullOnIncrementFail' => ['description' => 'Specifies whether the system performs full backup if incremental backup fails. Valid values:'."\n" + ."\n" + .'* **true**: The system performs full backup if incremental backup fails.'."\n" + .'* **false**: The system does not perform full backup if incremental backup fails.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], + 'FetchSliceSize' => ['description' => 'The size of backup shards (the number of files).'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '100000', 'title' => ''], + 'ClusterId' => ['description' => 'The ID of the backup client group. When you perform on-premises NAS backup, Cloud Backup selects clients from the specified backup client group.'."\n", 'type' => 'string', 'required' => false, 'example' => 'cl-000**************ggu', 'title' => ''], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'CommonFileSystemDetail' => [ + 'description' => 'The advanced options for CPFS backup.'."\n", + 'type' => 'object', + 'properties' => [ + 'FullOnIncrementFail' => ['description' => 'Specifies whether the system performs full backup if incremental backup fails. Valid values:'."\n" + ."\n" + .'* **true**: The system performs full backup if incremental backup fails.'."\n" + .'* **false**: The system does not perform full backup if incremental backup fails.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], + 'FetchSliceSize' => ['description' => 'The size of backup shards (the number of files).'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '100000', 'title' => ''], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], ], 'required' => false, - 'example' => '["v-*********************"]', - 'maxItems' => 500, + 'title' => '', + 'example' => '', ], + 'CrossAccountType' => ['description' => 'Specifies whether to back up and restore data within the same Alibaba Cloud account or across Alibaba Cloud accounts. Default value: SELF_ACCOUNT. Valid values:'."\n" + ."\n" + .'* **SELF_ACCOUNT**: backs up data within the same Alibaba Cloud account.'."\n" + .'* **CROSS_ACCOUNT**: backs up data across Alibaba Cloud accounts.'."\n", 'type' => 'string', 'required' => false, 'example' => 'SELF_ACCOUNT', 'title' => ''], + 'CrossAccountUserId' => ['description' => 'The ID of the source Alibaba Cloud account that authorizes the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '144**********732', 'title' => ''], + 'CrossAccountRoleName' => ['description' => 'The name of the RAM role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", 'type' => 'string', 'required' => false, 'example' => 'hbrcrossrole', 'title' => ''], ], 'required' => false, - 'description' => 'The filter.', + 'title' => '', + 'example' => '', ], 'required' => false, - 'maxItems' => 5, - ], - ], - [ - 'name' => 'Edition', - 'in' => 'query', - 'schema' => [ - 'title' => '版本类型,支持BASIC和STANDARD,默认值为STANDARD。', - 'type' => 'string', - 'example' => 'STANDARD', + 'title' => '', + 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => 'CreatePolicyBindingsResponse', + 'description' => 'CreatePolicyBindingsResponse'."\n", 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'PageNumber' => [ - 'description' => 'The page number of the returned page. Pages start from page 1. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'PageSize' => [ - 'description' => 'The number of entries returned on each page. Valid values: 1 to 99. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'TotalCount' => [ - 'description' => 'The total number of returned backup plans that meet the specified conditions.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '8', - ], - 'BackupPlans' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'BackupPlan' => [ - 'description' => 'The queried backup plans.'."\n", - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'VaultId' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'example' => 'v-*********************', - ], - 'BackupType' => [ - 'description' => 'The backup type. Valid value: **COMPLETE**, which indicates full backup.'."\n", - 'type' => 'string', - 'example' => 'COMPLETE', - ], - 'CreateTime' => [ - 'description' => 'This parameter is valid only when **SourceType** is set to **NAS**. This parameter indicates the time when the file system was created. This value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1554347313', - ], - 'DataSourceId' => [ - 'description' => 'The ID of the data source.'."\n", - 'type' => 'string', - 'example' => 'ds-000ht6o9*****w61', - ], - 'SourceType' => [ - 'description' => 'The type of the data source. Valid values:'."\n" - ."\n" - .'* **ECS_FILE**: ECS files'."\n" - .'* **OSS**: OSS buckets'."\n" - .'* **NAS**: NAS file systems'."\n" - .'* **OTS**: Tablestore instances'."\n" - .'* **UDM_ECS**: ECS instances'."\n" - .'* **SYNC**: data synchronization'."\n", - 'type' => 'string', - 'example' => 'ECS_FILE', - ], - 'Disabled' => [ - 'description' => 'Indicates whether the backup plan is disabled. Valid values:'."\n" - ."\n" - .'* true: The backup plan is disabled.'."\n" - .'* false: The backup plan is enabled.'."\n", - 'type' => 'boolean', - 'example' => 'false', - ], - 'Prefix' => [ - 'description' => 'This parameter is valid only when **SourceType** is set to **OSS**. This parameter indicates the prefix of the objects that are backed up.'."\n", - 'type' => 'string', - 'example' => 'oss-prefix', - ], - 'Options' => [ - 'description' => 'This parameter is valid only when **SourceType** is set to **ECS_FILE**. This parameter indicates whether Windows Volume Shadow Copy Service (VSS) is used to define a source path.'."\n", - 'type' => 'string', - 'example' => '{"UseVSS":false}', - ], - 'ClientId' => [ - 'description' => 'The ID of the backup client.'."\n", - 'type' => 'string', - 'example' => 'c-000ge4w*****1qb', - ], - 'Exclude' => [ - 'description' => 'This parameter is valid only when **SourceType** is set to **ECS_FILE**. This parameter indicates the paths to the files that are excluded from the backup job.'."\n", - 'type' => 'string', - 'example' => '["/var", "/proc"] ', - ], - 'Retention' => [ - 'description' => 'The retention period of the backup data. Unit: days.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '7', - ], - 'CreatedTime' => [ - 'description' => 'The time when the backup plan was created. This value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1554347313', - ], - 'ClusterId' => [ - 'description' => 'The ID of the client group.'."\n", - 'type' => 'string', - 'example' => 'cl-000ht6o9******h', - ], - 'Bucket' => [ - 'description' => 'This parameter is valid only when **SourceType** is set to **OSS**. This parameter indicates the name of the OSS bucket.'."\n", - 'type' => 'string', - 'example' => 'hbr-backup-oss', - ], - 'Detail' => [ - 'description' => 'The details about ECS instance backup.'."\n", - 'type' => 'string', - 'example' => '{\\"doCopy\\":true,\\"doBackup\\":false,\\"instanceName\\":\\"instance example\\",\\"appConsistent\\":false,\\"destinationRegionId\\":\\"cn-shanghai\\",\\"enableFsFreeze\\":true,\\"osNameEn\\":\\"Windows Server 2019 Data Center Edition 64bit Chinese Edition\\",\\"osName\\":\\"Windows Server 2019 Data Center Edition 64bit Chinese Edition\\",\\"diskIdList\\":[],\\"backupVaultId\\":\\"\\",\\"snapshotGroup\\":true,\\"destinationRetention\\":35,\\"platform\\":\\"Windows Server 2012\\",\\"timeoutInSeconds\\":60,\\"backupRetention\\":1,\\"osType\\":\\"windows\\",\\"preScriptPath\\":\\"\\",\\"postScriptPath\\":\\"\\",\\"enableWriters\\":true,\\"ecsDeleted\\":false}', - ], - 'Schedule' => [ - 'description' => 'The backup policy. Format: `I|{startTime}|{interval}`. The system runs the first backup job at a point in time that is specified by `{startTime}` and the subsequent backup jobs at an interval that is specified by `{interval}`. The system does not run a backup job before the specified point in time. Each backup job, except the first one, starts only after the previous backup job is completed. For example, `I|1631685600|P1D` indicates that the system runs the first backup job at 14:00:00 on September 15, 2021 and the subsequent backup jobs once a day.'."\n" - ."\n" - .'* **startTime**: the time at which the system starts to run a backup job. The time follows the UNIX time format. Unit: seconds.'."\n" - .'* **interval**: the interval at which the system runs a backup job. The interval follows the ISO 8601 standard. For example, PT1H indicates an interval of 1 hour. P1D indicates an interval of one day.'."\n", - 'type' => 'string', - 'example' => 'I|1602673264|P1D', - ], - 'SpeedLimit' => [ - 'description' => 'This parameter is valid only when **SourceType** is set to **ECS_FILE**. This parameter indicates the throttling rules. Format: `{start}|{end}|{bandwidth}`. Multiple throttling rules are separated with vertical bars (`|`). A time range cannot overlap with another one.'."\n" - ."\n" - .'* start: the start hour.'."\n" - .'* end: the end hour.'."\n" - .'* bandwidth: the bandwidth. Unit: KB.'."\n", - 'type' => 'string', - 'example' => '0:24:5120', - ], - 'InstanceId' => [ - 'description' => 'This parameter is valid only when **SourceType** is set to **ECS_FILE**. This parameter indicates the ID of the ECS instance.'."\n", - 'type' => 'string', - 'example' => 'i-*********************', - ], - 'PlanId' => [ - 'description' => 'The ID of the backup plan.'."\n", - 'type' => 'string', - 'example' => 'plan-*********************', - ], - 'BackupSourceGroupId' => [ - 'description' => 'The ID of the data source group.'."\n", - 'type' => 'string', - 'example' => 'System-Database', - ], - 'FileSystemId' => [ - 'description' => 'This parameter is valid only when **SourceType** is set to **NAS**. This parameter indicates the ID of the NAS file system.'."\n", - 'type' => 'string', - 'example' => '00594', - ], - 'OtsDetail' => [ - 'description' => 'The details about the Tablestore instance.'."\n", - 'type' => 'object', - 'properties' => [ - 'TableNames' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'TableName' => [ - 'description' => 'The names of the tables in the Tablestore instance.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The name of the destination table in the Tablestore instance.'."\n", - 'type' => 'string', - 'example' => 'test2_HBR_RESTORED', - ], - ], - ], - ], - ], - ], - 'InstanceName' => [ - 'description' => 'The name of the Tablestore instance.'."\n", - 'type' => 'string', - 'example' => 'instancename', - ], - 'UpdatedTime' => [ - 'description' => 'The time when the backup plan was updated. This value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1554347313', - ], - 'PlanName' => [ - 'description' => 'The name of the backup plan.'."\n", - 'type' => 'string', - 'example' => 'planname', - ], - 'Include' => [ - 'description' => 'This parameter is valid only when **SourceType** is set to **ECS_FILE**. This parameter indicates the paths to the files that are backed up.'."\n", - 'type' => 'string', - 'example' => '["/home/alice/*.pdf", "/home/bob/*.txt"]', - ], - 'Rules' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'Rule' => [ - 'description' => 'The backup policies. This parameter is valid only for disk backup.'."\n", - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'DestinationRetention' => [ - 'description' => 'The retention period of the backup data in remote backup mode. Unit: days.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '90', - ], - 'Schedule' => [ - 'description' => 'The backup policy. Format: `I|{startTime}|{interval}`. The system runs the first backup job at a point in time that is specified by `{startTime}` and the subsequent backup jobs at an interval that is specified by `{interval}`. The system does not run a backup job before the specified point in time. Each backup job, except the first one, starts only after the previous backup job is completed. For example, `I|1631685600|P1D` indicates that the system runs the first backup job at 14:00:00 on September 15, 2021 and the subsequent backup jobs once a day.'."\n" - ."\n" - .'* `startTime`: the time at which the system starts to run a backup job. The time follows the UNIX time format. Unit: seconds.'."\n" - .'* `interval`: the interval at which the system runs a backup job. The interval follows the ISO 8601 standard. For example, PT1H indicates an interval of 1 hour. P1D indicates an interval of one day.'."\n", - 'type' => 'string', - 'example' => 'I|1631685600|P1D', - ], - 'Retention' => [ - 'description' => 'The retention period of the backup data. Unit: days.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '90', - ], - 'Disabled' => [ - 'description' => 'Indicates whether the policy is disabled.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'DoCopy' => [ - 'description' => 'Indicates whether the snapshot data is backed up to the backup vault.'."\n", - 'type' => 'boolean', - 'example' => 'false', - ], - 'DestinationRegionId' => [ - 'description' => 'The ID of the region in which the remote backup vault resides.'."\n", - 'type' => 'string', - 'example' => 'cn-shanghai', - ], - 'RuleId' => [ - 'description' => 'The policy ID.'."\n", - 'type' => 'string', - 'example' => 'rule-0008i52rf0ulpni6kn6m', - ], - 'RuleName' => [ - 'description' => 'The policy name.'."\n", - 'type' => 'string', - 'example' => 'Disk Golden Rule', - ], - 'BackupType' => [ - 'description' => 'The backup type. Valid value: **COMPLETE**, which indicates full backup.'."\n", - 'type' => 'string', - 'example' => 'COMPLETE', - ], - ], - 'description' => 'The backup policy.', - ], - ], - ], - ], - 'Resources' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'Resource' => [ - 'description' => 'The backup resources. This parameter is valid only for disk backup.'."\n", - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'SourceType' => [ - 'description' => 'The type of the data source. Valid value: **UDM_DISK**.'."\n", - 'type' => 'string', - 'example' => 'UDMDISK', - ], - 'ResourceId' => [ - 'description' => 'The ID of the data source.'."\n", - 'type' => 'string', - 'example' => 'd-j6cgioir6m******lu4', - ], - 'Extra' => [ - 'description' => 'Additional information about the data source.'."\n", - 'type' => 'string', - 'example' => '{\\"doBackup\\":false,\\"diskName\\":\\"data_disk\\",\\"size\\":100,\\"type\\":\\"data\\",\\"category\\":\\"cloud_essd\\",\\"imageId\\":\\"\\",\\"device\\":\\"/dev/xvdb\\",\\"encrypted\\":false}', - ], - ], - 'description' => 'The backup resource.', - ], - ], - ], - ], - 'Paths' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'Path' => [ - 'description' => 'The source paths. This parameter is valid only when **SourceType** is set to **ECS_FILE**.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The source path.'."\n", - 'type' => 'string', - 'example' => '["/home"]', - ], - ], - ], - ], - 'TrialInfo' => [ - 'description' => 'The free trial information.'."\n", - 'type' => 'object', - 'properties' => [ - 'TrialStartTime' => [ - 'description' => 'The start time of the free trial.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1579413159', - ], - 'TrialVaultReleaseTime' => [ - 'description' => 'The time when the free-trial backup vault is released.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1594965600', - ], - 'TrialExpireTime' => [ - 'description' => 'The expiration time of the free trial.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1584597600', - ], - 'KeepAfterTrialExpiration' => [ - 'description' => 'Indicates whether you are billed based on the pay-as-you-go method after the free trial ends.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - ], - ], - 'InstanceGroupId' => [ - 'description' => 'The ID of the instance group.'."\n", - 'type' => 'string', - 'example' => 'i-**', - ], - 'CrossAccountType' => [ - 'description' => 'Indicates whether data is backed up within the same Alibaba Cloud account or across Alibaba Cloud accounts. Valid values:'."\n" - ."\n" - .'* SELF_ACCOUNT'."\n" - .'* CROSS_ACCOUNT'."\n", - 'type' => 'string', - 'enumValueTitles' => [], - 'example' => 'CROSS_ACCOUNT', - ], - 'CrossAccountUserId' => [ - 'description' => 'The ID of the source Alibaba Cloud account that authorizes the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1841642xxxxx9795', - ], - 'CrossAccountRoleName' => [ - 'description' => 'The name of the Resource Access Management (RAM) role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'example' => 'BackupRole', - ], - 'KeepLatestSnapshots' => [ - 'description' => 'Indicates whether the feature of keeping at least one backup version is enabled. Valid values:'."\n" - ."\n" - .'* 0: The feature is disabled.'."\n" - .'* 1: The feature is enabled.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'DestSourceType' => [ - 'description' => 'The data source type at the destination. This parameter is returned only for data synchronization.'."\n", - 'type' => 'string', - 'example' => 'OSS', - ], - 'DestDataSourceId' => [ - 'description' => 'The data source ID at the destination. This parameter is returned only for data synchronization.'."\n", - 'type' => 'string', - 'example' => 'ds-*********************', - ], - 'DestDataSourceDetail' => [ - 'description' => 'The data source details at the destination. This parameter is returned only for data synchronization.'."\n", - 'type' => 'string', - 'example' => '{\\"prefix\\":\\"/\\"}', - ], - 'ChangeListPath' => [ - 'description' => 'The configurations of the incremental file synchronization. This parameter is returned only for data synchronization.'."\n", - 'type' => 'string', - 'example' => '{"dataSourceId": "ds-123456789", "path": "/changelist"}', - ], - 'LatestExecuteJobId' => [ - 'description' => 'The latest execution job id of plan.', - 'type' => 'string', - 'example' => 'job-12345678', - ], - 'LatestFinishJobId' => [ - 'title' => '上一个结束的备份任务ID。', - 'type' => 'string', - 'example' => 'job-00**************9khz', - ], - 'CreatedByTag' => [ - 'description' => 'Indicates whether a backup plan is automatically created based on tags.'."\n", - 'type' => 'boolean', - 'example' => 'false', - ], - 'HitTags' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'HitTag' => [ - 'description' => 'The matched tag rules.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The matched tag rule.'."\n", - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => 'The tag key.'."\n", - 'type' => 'string', - 'example' => 'type', - ], - 'Value' => [ - 'description' => 'The tag value.'."\n", - 'type' => 'string', - 'example' => '0', - ], - 'Operator' => [ - 'description' => 'The tag-based matching rule. Valid values:'."\n" - ."\n" - .'* **EQUAL**: Both the tag key and tag value are matched.'."\n" - .'* **NOT**: The tag key is matched and the tag value is not matched.'."\n", - 'type' => 'string', - 'example' => 'EQUAL', - ], - ], - ], - ], - ], - ], - 'BusinessStatus' => [ - 'title' => '业务状态', - 'type' => 'string', - ], - ], - 'description' => '', - ], - ], - ], - ], + 'Success' => ['description' => 'Indicates whether the call is successful. Valid values:'."\n" + ."\n" + .'* true: The call is successful.'."\n" + .'* false: The call fails.'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Code' => ['description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'RequestId' => ['description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => '82CC5B6C-72F7-5D39-92F6-67887DF9AD46', 'title' => ''], ], - 'description' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 8,\\n \\"BackupPlans\\": {\\n \\"BackupPlan\\": [\\n {\\n \\"VaultId\\": \\"v-*********************\\",\\n \\"BackupType\\": \\"COMPLETE\\",\\n \\"CreateTime\\": 1554347313,\\n \\"DataSourceId\\": \\"ds-000ht6o9*****w61\\",\\n \\"SourceType\\": \\"ECS_FILE\\",\\n \\"Disabled\\": false,\\n \\"Prefix\\": \\"oss-prefix\\",\\n \\"Options\\": \\"{\\\\\\"UseVSS\\\\\\":false}\\",\\n \\"ClientId\\": \\"c-000ge4w*****1qb\\",\\n \\"Exclude\\": \\"[\\\\\\"/var\\\\\\", \\\\\\"/proc\\\\\\"]\\\\t\\",\\n \\"Retention\\": 7,\\n \\"CreatedTime\\": 1554347313,\\n \\"ClusterId\\": \\"cl-000ht6o9******h\\",\\n \\"Bucket\\": \\"hbr-backup-oss\\",\\n \\"Detail\\": \\"{\\\\\\\\\\\\\\"doCopy\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"doBackup\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"instanceName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"instance example\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"appConsistent\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"destinationRegionId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"cn-shanghai\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"enableFsFreeze\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"osNameEn\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Windows Server 2019 Data Center Edition 64bit Chinese Edition\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"osName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Windows Server 2019 Data Center Edition 64bit Chinese Edition\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"diskIdList\\\\\\\\\\\\\\":[],\\\\\\\\\\\\\\"backupVaultId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"snapshotGroup\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"destinationRetention\\\\\\\\\\\\\\":35,\\\\\\\\\\\\\\"platform\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Windows Server 2012\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"timeoutInSeconds\\\\\\\\\\\\\\":60,\\\\\\\\\\\\\\"backupRetention\\\\\\\\\\\\\\":1,\\\\\\\\\\\\\\"osType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"windows\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"preScriptPath\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"postScriptPath\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"enableWriters\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"ecsDeleted\\\\\\\\\\\\\\":false}\\",\\n \\"Schedule\\": \\"I|1602673264|P1D\\",\\n \\"SpeedLimit\\": \\"0:24:5120\\",\\n \\"InstanceId\\": \\"i-*********************\\",\\n \\"PlanId\\": \\"plan-*********************\\",\\n \\"BackupSourceGroupId\\": \\"System-Database\\",\\n \\"FileSystemId\\": \\"00594\\",\\n \\"OtsDetail\\": {\\n \\"TableNames\\": {\\n \\"TableName\\": [\\n \\"test2_HBR_RESTORED\\"\\n ]\\n }\\n },\\n \\"InstanceName\\": \\"instancename\\",\\n \\"UpdatedTime\\": 1554347313,\\n \\"PlanName\\": \\"planname\\",\\n \\"Include\\": \\"[\\\\\\"/home/alice/*.pdf\\\\\\", \\\\\\"/home/bob/*.txt\\\\\\"]\\",\\n \\"Rules\\": {\\n \\"Rule\\": [\\n {\\n \\"DestinationRetention\\": 90,\\n \\"Schedule\\": \\"I|1631685600|P1D\\",\\n \\"Retention\\": 90,\\n \\"Disabled\\": true,\\n \\"DoCopy\\": false,\\n \\"DestinationRegionId\\": \\"cn-shanghai\\",\\n \\"RuleId\\": \\"rule-0008i52rf0ulpni6kn6m\\",\\n \\"RuleName\\": \\"Disk Golden Rule\\",\\n \\"BackupType\\": \\"COMPLETE\\"\\n }\\n ]\\n },\\n \\"Resources\\": {\\n \\"Resource\\": [\\n {\\n \\"SourceType\\": \\"UDM_DISK\\",\\n \\"ResourceId\\": \\"d-j6cgioir6m******lu4\\",\\n \\"Extra\\": \\"{\\\\\\\\\\\\\\"doBackup\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"diskName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"data_disk\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"size\\\\\\\\\\\\\\":100,\\\\\\\\\\\\\\"type\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"data\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"category\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"cloud_essd\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"imageId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"device\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"/dev/xvdb\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"encrypted\\\\\\\\\\\\\\":false}\\"\\n }\\n ]\\n },\\n \\"Paths\\": {\\n \\"Path\\": [\\n \\"[\\\\\\"/home\\\\\\"]\\"\\n ]\\n },\\n \\"TrialInfo\\": {\\n \\"TrialStartTime\\": 1579413159,\\n \\"TrialVaultReleaseTime\\": 1594965600,\\n \\"TrialExpireTime\\": 1584597600,\\n \\"KeepAfterTrialExpiration\\": true\\n },\\n \\"InstanceGroupId\\": \\"i-**\\",\\n \\"CrossAccountType\\": \\"CROSS_ACCOUNT\\",\\n \\"CrossAccountUserId\\": 0,\\n \\"CrossAccountRoleName\\": \\"BackupRole\\",\\n \\"KeepLatestSnapshots\\": 0,\\n \\"DestSourceType\\": \\"OSS\\",\\n \\"DestDataSourceId\\": \\"ds-*********************\\",\\n \\"DestDataSourceDetail\\": \\"{\\\\\\\\\\\\\\"prefix\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"/\\\\\\\\\\\\\\"}\\",\\n \\"ChangeListPath\\": \\"{\\\\\\"dataSourceId\\\\\\": \\\\\\"ds-123456789\\\\\\", \\\\\\"path\\\\\\": \\\\\\"/changelist\\\\\\"}\\",\\n \\"LatestExecuteJobId\\": \\"job-12345678\\",\\n \\"LatestFinishJobId\\": \\"job-00**************9khz\\",\\n \\"CreatedByTag\\": false,\\n \\"HitTags\\": {\\n \\"HitTag\\": [\\n {\\n \\"Key\\": \\"type\\",\\n \\"Value\\": \\"0\\",\\n \\"Operator\\": \\"EQUAL\\"\\n }\\n ]\\n },\\n \\"BusinessStatus\\": \\"ACTIVE\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeBackupPlansResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>8</TotalCount>\\n <BackupPlans>\\n <VaultId>v-*********************</VaultId>\\n <BackupType>COMPLETE</BackupType>\\n <CreateTime>1554347313</CreateTime>\\n <DataSourceId>ds-000ht6o9*****w61</DataSourceId>\\n <SourceType>ECS_FILE</SourceType>\\n <Disabled>false</Disabled>\\n <Prefix>oss-prefix</Prefix>\\n <Options>{\\"UseVSS\\":false}</Options>\\n <ClientId>c-000ge4w*****1qb</ClientId>\\n <Exclude>[\\"/var\\", \\"/proc\\"]\\t</Exclude>\\n <Retention>7</Retention>\\n <CreatedTime>1554347313</CreatedTime>\\n <ClusterId>cl-000ht6o9******h</ClusterId>\\n <Bucket>hbr-backup-oss</Bucket>\\n <Detail>{\\\\\\"doCopy\\\\\\":true,\\\\\\"doBackup\\\\\\":false,\\\\\\"instanceName\\\\\\":\\\\\\"instance example\\\\\\",\\\\\\"appConsistent\\\\\\":false,\\\\\\"destinationRegionId\\\\\\":\\\\\\"cn-shanghai\\\\\\",\\\\\\"enableFsFreeze\\\\\\":true,\\\\\\"osNameEn\\\\\\":\\\\\\"Windows Server 2019 Data Center Edition 64bit Chinese Edition\\\\\\",\\\\\\"osName\\\\\\":\\\\\\"Windows Server 2019 Data Center Edition 64bit Chinese Edition\\\\\\",\\\\\\"diskIdList\\\\\\":[],\\\\\\"backupVaultId\\\\\\":\\\\\\"\\\\\\",\\\\\\"snapshotGroup\\\\\\":true,\\\\\\"destinationRetention\\\\\\":35,\\\\\\"platform\\\\\\":\\\\\\"Windows Server 2012\\\\\\",\\\\\\"timeoutInSeconds\\\\\\":60,\\\\\\"backupRetention\\\\\\":1,\\\\\\"osType\\\\\\":\\\\\\"windows\\\\\\",\\\\\\"preScriptPath\\\\\\":\\\\\\"\\\\\\",\\\\\\"postScriptPath\\\\\\":\\\\\\"\\\\\\",\\\\\\"enableWriters\\\\\\":true,\\\\\\"ecsDeleted\\\\\\":false}</Detail>\\n <Schedule>I|1602673264|P1D</Schedule>\\n <SpeedLimit>0:24:5120</SpeedLimit>\\n <InstanceId>i-*********************</InstanceId>\\n <PlanId>plan-*********************</PlanId>\\n <BackupSourceGroupId>System-Database</BackupSourceGroupId>\\n <FileSystemId>00594</FileSystemId>\\n <OtsDetail>\\n <TableNames>test2_HBR_RESTORED</TableNames>\\n </OtsDetail>\\n <InstanceName>instancename</InstanceName>\\n <UpdatedTime>1554347313</UpdatedTime>\\n <PlanName>planname</PlanName>\\n <Include>[\\"/home/alice/*.pdf\\", \\"/home/bob/*.txt\\"]</Include>\\n <Rules>\\n <DestinationRetention>90</DestinationRetention>\\n <Schedule>I|1631685600|P1D</Schedule>\\n <Retention>90</Retention>\\n <Disabled>true</Disabled>\\n <DoCopy>false</DoCopy>\\n <DestinationRegionId>cn-shanghai</DestinationRegionId>\\n <RuleId>rule-0008i52rf0ulpni6kn6m</RuleId>\\n <RuleName>Disk Golden Rule</RuleName>\\n <BackupType>COMPLETE</BackupType>\\n </Rules>\\n <Resources>\\n <SourceType>UDMDISK</SourceType>\\n <ResourceId>d-j6cgioir6m******lu4</ResourceId>\\n <Extra>{\\\\\\"doBackup\\\\\\":false,\\\\\\"diskName\\\\\\":\\\\\\"data_disk\\\\\\",\\\\\\"size\\\\\\":100,\\\\\\"type\\\\\\":\\\\\\"data\\\\\\",\\\\\\"category\\\\\\":\\\\\\"cloud_essd\\\\\\",\\\\\\"imageId\\\\\\":\\\\\\"\\\\\\",\\\\\\"device\\\\\\":\\\\\\"/dev/xvdb\\\\\\",\\\\\\"encrypted\\\\\\":false}</Extra>\\n </Resources>\\n <Paths>[\\"/home\\"]</Paths>\\n <TrialInfo>\\n <TrialStartTime>1579413159</TrialStartTime>\\n <TrialVaultReleaseTime>1594965600</TrialVaultReleaseTime>\\n <TrialExpireTime>1584597600</TrialExpireTime>\\n <KeepAfterTrialExpiration>true</KeepAfterTrialExpiration>\\n </TrialInfo>\\n <InstanceGroupId>i-**</InstanceGroupId>\\n <CrossAccountType>CROSS_ACCOUNT</CrossAccountType>\\n <CrossAccountRoleName>BackupRole</CrossAccountRoleName>\\n </BackupPlans>\\n</DescribeBackupPlansResponse>","errorExample":""}]', - 'title' => 'DescribeBackupPlans', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'ExecuteBackupPlan' => [ - 'summary' => 'Executes a backup plan.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], + 'errorCodes' => [ + 400 => [ + ['errorCode' => 'PolicyAlreadyBoundWithThisDataSource', 'errorMessage' => 'This datasource has already been bound with the policy, please use another one.', 'description' => ''], ], ], - 'operationType' => 'write', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'create', - 'riskType' => 'none', - 'chargeType' => 'paid', - 'abilityTreeCode' => '95593', - 'abilityTreeNodes' => [ - 'FEATUREhbr9ZUQY7', - ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], ], - 'parameters' => [ - [ - 'name' => 'PlanId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup plan.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'plan-*********************', - ], - ], - [ - 'name' => 'VaultId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 'v-*********************', - ], - ], - [ - 'name' => 'SourceType', - 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the data source. Valid values:'."\n" - ."\n" - .'* **ECS_FILE**: Elastic Compute Service (ECS) files'."\n" - .'* **OSS**: Object Storage Service (OSS) buckets'."\n" - .'* **NAS**: Apsara File Storage NAS (NAS) file systems'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'ECS_FILE', - ], - ], - [ - 'name' => 'RuleId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup rule.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rule-0002*****ux8', - ], - ], - [ - 'name' => 'Edition', - 'in' => 'query', - 'schema' => [ - 'title' => '版本类型,支持BASIC和STANDARD,默认值为STANDARD。', - 'type' => 'string', - 'example' => 'STANDARD', - ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"82CC5B6C-72F7-5D39-92F6-67887DF9AD46\\"\\n}","type":"json"}]', + 'title' => 'CreatePolicyBindings', + 'summary' => 'Binds one or more data sources to a backup policy.', + 'description' => '* You can bind data sources to only one policy in each request.'."\n" + .'* Elastic Compute Service (ECS) instances can be bound to only one policy.'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreatePolicyBindings'], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'JobId' => [ - 'description' => 'The ID of the backup job.'."\n", - 'type' => 'string', - 'example' => 'job-*********************', - ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:CreatePolicyBindings', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], - 'description' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true,\\n \\"JobId\\": \\"job-*********************\\"\\n}","errorExample":""},{"type":"xml","example":"<ExecuteBackupPlanResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <Success>true</Success>\\n <JobId>job-*********************</JobId>\\n</ExecuteBackupPlanResponse>","errorExample":""}]', - 'title' => 'ExecuteBackupPlan', ], 'CreatePolicyV2' => [ - 'summary' => 'Creates a backup policy.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'summary' => 'Create a policy.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -3679,272 +2313,195 @@ 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '162846', - 'abilityTreeNodes' => [ - 'FEATUREhbrB1KQ9G', - 'FEATUREhbrS7MI6C', - 'FEATUREhbr3BJQCT', - 'FEATUREhbrQ3MV3B', - 'FEATUREhbr56LH1C', - 'FEATUREhbrFWIWBG', - ], + 'abilityTreeNodes' => ['FEATUREhbrB1KQ9G', 'FEATUREhbrS7MI6C', 'FEATUREhbr3BJQCT', 'FEATUREhbrQ3MV3B', 'FEATUREhbr56LH1C', 'FEATUREhbrFWIWBG'], ], 'parameters' => [ [ 'name' => 'PolicyName', 'in' => 'formData', - 'schema' => [ - 'description' => 'The name of the backup policy.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Daily Local Backup + Remote Backup'."\n", - ], + 'schema' => ['description' => 'The name of the backup policy.', 'type' => 'string', 'example' => 'Daily local backup + remote backup', 'required' => false, 'title' => ''], ], [ 'name' => 'PolicyType', 'in' => 'formData', - 'schema' => [ - 'description' => 'The policy type. Valid values:'."\n" - ."\n" - .'* **STANDARD**: the general backup policy. This type of policy applies to backups other than Elastic Compute Service (ECS) instance backup.'."\n" - .'* **UDM_ECS_ONLY**: This type of policy applies only to ECS instance backup.'."\n" - ."\n" - .'If the policy type is not specified, Cloud Backup automatically sets the policy type based on whether the backup vault is specified in the rules of the policy:'."\n" - ."\n" - .'* If the backup vault is specified, Cloud Backup sets the policy type to **STANDARD**.'."\n" - .'* If the backup vault is not specified, Cloud Backup sets the policy type to **UDM_ECS_ONLY**.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'STANDARD', - ], + 'schema' => ['description' => 'The type of the backup policy. Valid values:'."\n" + ."\n" + .'- **STANDARD**: A standard backup policy. It supports data sources other than ECS instance backup.'."\n" + ."\n" + .'- **UDM\\_ECS\\_ONLY**: A backup policy that supports only ECS instance backups.'."\n" + ."\n" + .'If you do not specify this parameter, Cloud Backup automatically sets the policy type based on whether a backup vault is specified in the policy rules:'."\n" + ."\n" + .'- If a backup vault is specified in the rules, the policy type is set to **STANDARD**.'."\n" + ."\n" + .'- If no backup vault is specified in the rules, the policy type is set to **UDM\\_ECS\\_ONLY**.', 'type' => 'string', 'required' => false, 'example' => 'STANDARD', 'title' => ''], ], [ 'name' => 'PolicyDescription', 'in' => 'formData', - 'schema' => [ - 'description' => 'The description of the backup policy.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Data is backed up at 10:00:00 every day and replicated to the China (Shanghai) region for geo-redundancy.'."\n", - ], + 'schema' => ['description' => 'The description of the backup policy.', 'type' => 'string', 'example' => 'Back up once at 10:00 AM every day, with offsite backup to Shanghai.', 'required' => false, 'title' => ''], ], [ 'name' => 'Rules', 'in' => 'formData', 'style' => 'json', 'schema' => [ - 'description' => 'The rules in the backup policy.'."\n", + 'description' => 'The list of policy rules.', 'type' => 'array', 'items' => [ - 'description' => 'The details of the rule.'."\n", + 'description' => 'A policy rule.', 'type' => 'object', 'properties' => [ 'RuleType' => [ - 'title' => 'TRANSITION: 过渡类规则, BACKUP: 定时类规则, REPLICATION: 镜像类规则', - 'description' => 'The type of the rule. Each backup policy must have at least one rule of the **BACKUP** type and only one rule of the **TRANSITION** type. Valid values:'."\n" + 'description' => 'The type of the rule. Each policy requires at least one **BACKUP** rule and exactly one **TRANSITION** rule. Valid values:'."\n" ."\n" - .'* **BACKUP**: backup rule'."\n" - .'* **TRANSITION**: lifecycle rule'."\n" - .'* **REPLICATION**: replication rule'."\n" - .'* **TAG**: tag-based resource association rule'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'BACKUP', - 'enum' => [ - 'BACKUP', - 'TRANSITION', - 'REPLICATION', - 'SECURITY', - 'TAG', - ], - ], - 'Schedule' => [ - 'description' => 'This parameter is required only if the **RuleType** parameter is set to **BACKUP**. This parameter specifies the backup schedule settings. Formats:'."\n" - ."\n" - .'* `I|{startTime}|{interval}`: The system runs the first backup job at a point in time that is specified in the {startTime} parameter and the subsequent backup jobs at an interval that is specified in the {interval} parameter. For example, `I|1631685600|P1D` indicates that the system runs the first backup job at 14:00:00 on September 15, 2021 and the subsequent backup jobs once a day.'."\n" - ."\n" - .' * startTime: the time at which the system starts to run a backup job. The time must follow the UNIX time format. Unit: seconds.'."\n" - .' * interval: the interval at which the system runs a backup job. The interval must follow the ISO 8601 standard. For example, `PT1H` specifies an interval of 1 hour. `P1D` specifies an interval of one day.'."\n" + .'- **BACKUP**: A backup rule.'."\n" ."\n" - .'* `C|{startTime}|{crontab}`: The system runs backup jobs at a point in time that is specified in the {startTime} parameter based on the {crontab} expression. For example, C|1631685600|0 0 2 ?\\* 3,5,7 indicates that the system runs backup jobs at 02:00:00 every Tuesday, Thursday, and Saturday from14:00:00 on September 15, 2021.``'."\n" + .'- **TRANSITION**: A lifecycle rule.'."\n" ."\n" - .' * startTime: the time at which the system starts to run a backup job. The time must follow the UNIX time format. Unit: seconds.'."\n" - .' * crontab: the crontab expression. For example, 0 0 2 ?\\* 3,5,7 indicates 02:00:00 every Tuesday, Thursday, and Saturday.``'."\n" + .'- **REPLICATION**: A replication rule.'."\n" ."\n" - .'The system does not run a backup job before the specified point in time. Each backup job, except the first one, starts only after the previous backup job is completed.'."\n", + .'- **TAG**: A rule to associate data sources with the policy by using tags.', 'type' => 'string', - 'required' => false, - 'example' => 'I|1648647166|P1D', + 'required' => true, + 'enum' => ['BACKUP', 'TRANSITION', 'REPLICATION', 'SECURITY', 'TAG'], + 'title' => '', + 'example' => 'BACKUP', ], + 'Schedule' => ['description' => 'This parameter is required only when **RuleType** is set to **BACKUP**. The backup schedule. Valid formats:'."\n" + ."\n" + .'- `I|{startTime}|{interval}`: Runs a backup job at the specified interval starting from {startTime}. For example, `I|1631685600|P1D` runs a backup job every day, starting from 2021-09-15 14:00:00.'."\n" + ."\n" + .' - startTime: The backup start time in UNIX time, in seconds.'."\n" + ."\n" + .' - interval: The backup interval in ISO 8601 format. For example, `PT1H` specifies an interval of 1 hour. `P1D` specifies an interval of 1 day.'."\n" + ."\n" + .'- `C|{startTime}|{crontab}`: Runs a backup job based on the specified crontab expression starting from {startTime}. For example, `C|1631685600|0 0 2 ? * 3,5,7` runs a backup job at 02:00:00 on every Tuesday, Thursday, and Saturday, starting from 2021-09-15 14:00:00.'."\n" + ."\n" + .' - startTime: The backup start time in UNIX time, in seconds.'."\n" + ."\n" + .' - crontab: A crontab expression. For example, `0 0 2 ? * 3,5,7` specifies 02:00:00 on every Tuesday, Thursday, and Saturday.'."\n" + ."\n" + .'Missed backup jobs are not run retroactively. If a backup job is still running, the next scheduled job is not triggered.', 'type' => 'string', 'example' => 'I|1648647166|P1D', 'required' => false, 'title' => ''], 'BackupType' => [ - 'title' => 'Backup Rule (COMPLETE: Complete backup type, INCREMENTAL: Incremental backup type, DIFFERENTIAL: Differential backup type, LOG: Transaction log backup type, INDEX: 不备份数据,只对元数据建立索引, ARCHIVE: 归档, ARCHIVE_BY_SEARCH: 根据搜索结果进行归档)', - 'description' => 'This parameter is required only if the **RuleType** parameter is set to **BACKUP**. This parameter specifies the backup type. Valid value: **COMPLETE**, which indicates full backup.'."\n", + 'description' => 'This parameter is required only when **RuleType** is set to **BACKUP**. The backup type. The value **COMPLETE** specifies a full backup.', 'type' => 'string', + 'enum' => ['COMPLETE', 'INCREMENTAL', 'DIFFERENTIAL', 'LOG', 'INDEX', 'ARCHIVE', 'ARCHIVE_BY_SEARCH'], + 'title' => '', 'required' => false, 'example' => 'COMPLETE', - 'enum' => [ - 'COMPLETE', - 'INCREMENTAL', - 'DIFFERENTIAL', - 'LOG', - 'INDEX', - 'ARCHIVE', - 'ARCHIVE_BY_SEARCH', - ], - ], - 'Retention' => [ - 'title' => 'Expiration', - 'description' => 'This parameter is required only if the **RuleType** parameter is set to **BACKUP**, **TRANSITION**, or **REPLICATION**.'."\n" - ."\n" - .'* If the **RuleType** parameter is set to **BACKUP**, this parameter specifies the retention period of the backup data. The priority is lower than the retention period when the **RuleType** parameter is set to **TRANSITION**. Minimum value: 1. Maximum value: 364635. Unit: days.'."\n" - .'* If the **RuleType** parameter is set to **TRANSITION**, this parameter specifies the retention period of the backup data. Minimum value: 1. Maximum value: 364635. Unit: days.'."\n" - .'* If the **RuleType** parameter is set to **REPLICATION**, this parameter specifies the retention period of remote backups. Minimum value: 1. Maximum value: 364635. Unit: days.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '7', - 'default' => '0', - ], - 'ReplicationRegionId' => [ - 'title' => 'Replication', - 'description' => 'This parameter is required only if the **RuleType** parameter is set to **REPLICATION**. This parameter specifies the ID of the destination region.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cn-shanghai', ], + 'Retention' => ['title' => 'Expiration', 'description' => 'This parameter is required only when **RuleType** is set to **BACKUP**, **TRANSITION**, or **REPLICATION**. The retention period in days.'."\n" + ."\n" + .'- If **RuleType** is **BACKUP**: The backup retention period. A `Retention` parameter in a **TRANSITION** rule overrides this setting. The value must be between 1 and 364635.'."\n" + ."\n" + .'- If **RuleType** is **TRANSITION**: The backup retention period. The value must be between 1 and 364635.'."\n" + ."\n" + .'- If **RuleType** is **REPLICATION**: The retention period for cross-region backups. The value must be between 1 and 364635.', 'type' => 'integer', 'format' => 'int64', 'default' => '0', 'required' => false, 'example' => '7'], + 'ReplicationRegionId' => ['title' => 'Replication', 'description' => 'This parameter is required only when **RuleType** is set to **REPLICATION**. The ID of the destination region for replication.', 'type' => 'string', 'required' => false, 'example' => 'cn-shanghai'], 'RetentionRules' => [ - 'description' => 'This parameter is required only if the **RuleType** parameter is set to **TRANSITION**. This parameter specifies the special retention rules.'."\n", + 'description' => 'This parameter is required only when **RuleType** is set to **TRANSITION**. The advanced retention rules.', 'type' => 'array', 'items' => [ - 'description' => 'The special retention rule.'."\n", + 'description' => 'An advanced retention rule.', 'type' => 'object', 'properties' => [ - 'AdvancedRetentionType' => [ - 'description' => 'The type of the special retention rule. Valid values:'."\n" - ."\n" - .'* **DAILY**: retains daily backups'."\n" - .'* **WEEKLY**: retains weekly backups'."\n" - .'* **MONTHLY**: retains monthly backups'."\n" - .'* **YEARLY**: retains yearly backups'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'YEARLY', - ], - 'WhichSnapshot' => [ - 'description' => 'Specifies which backup is retained based on the special retention rule. Only the first backup can be retained.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1', - ], - 'Retention' => [ - 'description' => 'The special retention period of backups. Minimum value: 1. Unit: days.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '730', - ], + 'AdvancedRetentionType' => ['description' => 'The type of the advanced retention rule. Valid values:'."\n" + ."\n" + .'- **DAILY**: Daily backups.'."\n" + ."\n" + .'- **WEEKLY**: Weekly backups.'."\n" + ."\n" + .'- **MONTHLY**: Monthly backups.'."\n" + ."\n" + .'- **YEARLY**: Yearly backups.', 'type' => 'string', 'required' => false, 'example' => 'YEARLY', 'title' => ''], + 'WhichSnapshot' => ['description' => 'The ordinal number of the backup to keep based on the `AdvancedRetentionType`. For example, a value of `1` indicates the first backup. Currently, only a value of `1` is supported.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], + 'Retention' => ['description' => 'The retention period in days for this advanced rule. The minimum value is 1.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '730', 'title' => ''], ], 'required' => false, + 'title' => '', + 'example' => '', ], 'required' => false, 'maxItems' => 99, + 'title' => '', + 'example' => '', ], - 'VaultId' => [ - 'description' => 'This parameter is required only if the RuleType parameter is set to BACKUP. The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'v-0001************aseg', - ], - 'KeepLatestSnapshots' => [ - 'description' => 'Specifies whether to enable the feature of keeping at least one backup version. Valid values:'."\n" - ."\n" - .'* 0: The feature is disabled.'."\n" - .'* 1: The feature is enabled.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1', - ], - 'Immutable' => [ - 'description' => 'This parameter is required only if the **PolicyType** parameter is set to **UDM_ECS_ONLY**. This parameter specifies whether to enable the immutable backup feature.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'VaultId' => ['description' => 'This parameter is required only when RuleType is set to BACKUP. The ID of the backup vault.', 'type' => 'string', 'required' => false, 'example' => 'v-0001************aseg', 'title' => ''], + 'KeepLatestSnapshots' => ['description' => 'Specifies whether to permanently retain at least one backup version. Valid values:'."\n" + ."\n" + .'- `0`: Do not retain.'."\n" + ."\n" + .'- `1`: Retain.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], + 'Immutable' => ['description' => 'Valid only when **PolicyType** is set to **UDM\\_ECS\\_ONLY**. Specifies whether to enable backup lock for the backups.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], 'DataSourceFilters' => [ - 'description' => 'This parameter is required only if the **RuleType** parameter is set to **TAG**. This parameter specifies the data source filter rule.'."\n", + 'description' => 'This parameter is required only when **RuleType** is set to **TAG**. The filter rules for data sources.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ - 'SourceType' => [ - 'description' => 'The type of the data source. Valid values:'."\n" - ."\n" - .'* **UDM_ECS**: Elastic Compute Service (ECS) instance This type of data source is supported only if the **PolicyType** parameter is set to **UDM_ECS_ONLY**.'."\n" - .'* **OSS**: Object Storage Service (OSS) bucket This type of data source is supported only if the **PolicyType** parameter is set to **STANDARD**.'."\n" - .'* **NAS**: File Storage NAS (NAS) file system This type of data source is supported only if the **PolicyType** parameter is set to **STANDARD**.'."\n" - .'* **ECS_FILE**: ECS file This type of data source is supported only if the **PolicyType** parameter is set to **STANDARD**.'."\n" - .'* **OTS**: Tablestore instance This type of data source is supported only if the **PolicyType** parameter is set to **STANDARD**.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'UDM_ECS', - ], + 'SourceType' => ['description' => 'The type of the data source. Valid values:'."\n" + ."\n" + .'- **UDM\\_ECS**: ECS instance backup. Supported only when **PolicyType** is set to **UDM\\_ECS\\_ONLY**.'."\n" + ."\n" + .'- **OSS**: OSS backup. Supported only when **PolicyType** is set to **STANDARD**.'."\n" + ."\n" + .'- **NAS**: NAS backup. Supported only when **PolicyType** is set to **STANDARD**.'."\n" + ."\n" + .'- **ECS\\_FILE**: ECS file backup. Supported only when **PolicyType** is set to **STANDARD**.'."\n" + ."\n" + .'- **OTS**: Tablestore backup. Supported only when **PolicyType** is set to **STANDARD**.', 'type' => 'string', 'required' => false, 'example' => 'UDM_ECS', 'title' => ''], 'DataSourceIds' => [ - 'description' => 'This parameter is deprecated.'."\n", + 'description' => 'This parameter is deprecated.', 'type' => 'array', - 'items' => [ - 'description' => 'This parameter is deprecated.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '[\\"i-uf6e6py**********bgc\\"]', - ], + 'items' => ['description' => 'This parameter is deprecated.', 'type' => 'string', 'required' => false, 'example' => '已废弃。', 'title' => ''], 'required' => false, + 'title' => '', + 'example' => '', ], ], 'required' => false, 'description' => '', + 'title' => '', + 'example' => '', ], 'required' => false, + 'title' => '', + 'example' => '', ], 'TagFilters' => [ - 'description' => 'This parameter is required only if the **RuleType** parameter is set to **TAG**. This parameter specifies the resource tag filter rule.'."\n", + 'description' => 'This parameter is required only when **RuleType** is set to **TAG**. The filter rules for resource tags.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ - 'Key' => [ - 'description' => 'The tag key.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'env', - ], - 'Value' => [ - 'description' => 'The tag value. If you leave this parameter empty, the value is any value.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'prod', - ], - 'Operator' => [ - 'description' => 'The tag-based matching rule. Valid values:'."\n" - ."\n" - .'* **EQUAL**: Both the tag key and tag value are matched.'."\n" - .'* **NOT**: The tag key is matched and the tag value is not matched.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'EQUAL', - ], + 'Key' => ['description' => 'The tag key.', 'type' => 'string', 'required' => false, 'example' => 'env', 'title' => ''], + 'Value' => ['description' => 'The tag value. If you leave this parameter empty, the filter matches any value for the specified tag key.', 'type' => 'string', 'required' => false, 'example' => 'prod', 'title' => ''], + 'Operator' => ['description' => 'The operator for matching tags. Valid values:'."\n" + ."\n" + .'- **EQUAL**: Matches both the tag key and tag value.'."\n" + ."\n" + .'- **NOT**: Matches the tag key but not the tag value.', 'type' => 'string', 'required' => false, 'example' => 'EQUAL', 'title' => ''], ], 'required' => false, 'description' => '', + 'title' => '', + 'example' => '', ], 'required' => false, + 'title' => '', + 'example' => '', ], ], 'required' => false, + 'title' => '', + 'example' => '', ], 'required' => false, 'maxItems' => 10, 'minItems' => 1, + 'title' => '', + 'example' => '', ], ], ], @@ -3952,62 +2509,57 @@ 200 => [ 'schema' => [ 'title' => 'CreatePolicyResponse', - 'description' => 'CreatePolicyResponse'."\n", + 'description' => 'CreatePolicyResponse', 'type' => 'object', 'properties' => [ - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => 'EEC65C22-2152-5E31-8AD6-D6CBF1BFF49F', - ], - 'PolicyId' => [ - 'description' => 'The ID of the backup policy.'."\n", - 'type' => 'string', - 'example' => 'po-000000zemnuyx2li3y9y', - ], + 'Success' => ['description' => 'Indicates whether the request succeeded. Valid values:'."\n" + ."\n" + .'- `true`: The request succeeded.'."\n" + ."\n" + .'- `false`: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Code' => ['description' => 'The return code. A value of `200` indicates that the request succeeded.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The response message. `successful` is returned for a successful request. An error message is returned for a failed request.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'EEC65C22-2152-5E31-8AD6-D6CBF1BFF49F', 'title' => ''], + 'PolicyId' => ['description' => 'The policy ID.', 'type' => 'string', 'example' => 'po-000000zemnuyx2li3y9y', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], + 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"EEC65C22-2152-5E31-8AD6-D6CBF1BFF49F\\",\\n \\"PolicyId\\": \\"po-000000zemnuyx2li3y9y\\"\\n}","type":"json"}]', 'title' => 'CreatePolicyV2', - 'description' => 'A backup policy records the information required for backup. After you execute a backup policy, a backup job is generated to record the backup progress and the backup result. If a backup job is completed, a backup snapshot is generated. You can use a backup snapshot to create a restore job.'."\n" + 'description' => 'A backup policy configures your backups. When a policy runs, it initiates a backup job to track its progress and outcome. A successful backup job creates a snapshot that you can use to create a restore job.'."\n" ."\n" - .'* A backup policy supports multiple data sources. The data sources can be only Elastic Compute Service (ECS) instances.'."\n" - .'* You can specify only one interval as a backup cycle in a backup policy.'."\n" - .'* Each backup policy allows you to back up data to only one backup vault.'."\n", - ], - 'DeletePolicyV2' => [ - 'summary' => 'Deletes a backup policy.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + .'- A backup policy supports multiple data sources, including NAS backup, OSS backup, ECS instance backup, ECS file backup, on-premises file backup, Tablestore backup, and CPFS backup.'."\n" + ."\n" + .'- A backup policy can have only one backup schedule with a fixed interval.'."\n" + ."\n" + .'- A backup policy backs up data to a single backup vault.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreatePolicyV2'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:CreatePolicyV2', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'translator' => 'machine', + ], + 'CreateReplicationVault' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -4016,1090 +2568,747 @@ 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'delete', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREhbrS7MI6C', - 'FEATUREhbrQ3MV3B', - 'FEATUREhbrB1KQ9G', - 'FEATUREhbr3BJQCT', - 'FEATUREhbr56LH1C', - 'FEATUREhbrFWIWBG', - 'FEATUREhbr9ZUQY7', - 'FEATUREhbrAW9I1R', - ], + 'operationType' => 'create', + 'abilityTreeCode' => '95445', + 'abilityTreeNodes' => ['FEATUREhbrGSUVI2'], ], 'parameters' => [ [ - 'name' => 'PolicyId', - 'in' => 'formData', + 'name' => 'VaultRegionId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the region where the backup vault resides.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-shanghai'], + ], + [ + 'name' => 'VaultName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the backup vault. The name must be 1 to 64 characters in length.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'mirrorvaultname'], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => ['description' => 'The description of the backup vault. The description must be 0 to 255 characters in length.'."\n", 'type' => 'string', 'required' => false, 'example' => 'description'], + ], + [ + 'name' => 'VaultStorageClass', + 'in' => 'query', 'schema' => [ - 'description' => 'The ID of the backup policy.'."\n", + 'description' => 'The storage type of the backup vault. Valid value: **STANDARD**, which indicates standard storage.'."\n", 'type' => 'string', 'required' => false, - 'example' => 'po-000************2l6', + 'example' => 'STANDARD', + 'default' => 'STANDARD', + 'enum' => ['STANDARD', 'IA', 'ARCHIVE'], ], ], + [ + 'name' => 'ReplicationSourceVaultId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the source vault.'."\n", 'type' => 'string', 'required' => true, 'example' => 'v-*********************'], + ], + [ + 'name' => 'ReplicationSourceRegionId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the region where the source vault resides.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], + ], + [ + 'name' => 'RedundancyType', + 'in' => 'query', + 'schema' => ['description' => 'The data redundancy type of the backup vault. Valid values:'."\n" + ."\n" + .'* LRS: standard locally redundant storage (LRS). Cloud Backup stores the copies of each object on multiple devices of different facilities in the same zone. This way, Cloud Backup ensures data durability and availability even if hardware failures occur.'."\n" + .'* ZRS: standard zone-redundant storage (ZRS). Cloud Backup uses the multi-zone mechanism to distribute data across three zones within the same region. If a zone fails, the data that is stored in the other two zones is still accessible.'."\n", 'type' => 'string', 'required' => false, 'example' => 'LRS'], + ], + [ + 'name' => 'EncryptType', + 'in' => 'query', + 'schema' => ['description' => 'The method that is used to encrypt the source data. This parameter is valid only if you set the VaultType parameter to STANDARD or OTS_BACKUP. Valid values:'."\n" + ."\n" + .'* **HBR_PRIVATE**: The source data is encrypted by using the built-in encryption method of Hybrid Backup Recovery (HBR).'."\n" + .'* **KMS**: The source data is encrypted by using Key Management Service (KMS).'."\n", 'type' => 'string', 'required' => false, 'example' => 'HBR_PRIVATE'], + ], + [ + 'name' => 'KmsKeyId', + 'in' => 'query', + 'schema' => ['description' => 'The customer master key (CMK) created in KMS or the alias of the key. This parameter is required only if you set the EncryptType parameter to KMS.'."\n", 'type' => 'string', 'required' => false, 'example' => 'alias/test'], + ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'DeletePolicyResponse', - 'description' => 'DeletePolicyResponse'."\n", 'type' => 'object', 'properties' => [ - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '33AA3AAE-89E1-5D3A-A51D-0C0A80850F68', - ], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], + 'VaultId' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'example' => 'v-*********************'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'TaskId' => ['description' => 'The ID of the job that is used to initialize the backup vault. You can call the DescribeTask operation to query the job status.'."\n", 'type' => 'string', 'example' => 't-*********************'], ], + 'description' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"33AA3AAE-89E1-5D3A-A51D-0C0A80850F68\\"\\n}","type":"json"}]', - 'title' => 'DeletePolicyV2', - 'description' => 'If you delete a backup policy, the backup policy is disassociated with all data sources. Proceed with caution.'."\n", - ], - 'UpdatePolicyV2' => [ - 'summary' => 'Modifies a backup policy.', - 'methods' => [ - 'post', - 'get', + 'title' => 'CreateReplicationVault', + 'summary' => 'Creates a mirror vault.', + 'description' => 'After a backup vault is created, the backup vault is in the INITIALIZING state, and the system automatically runs an initialization task to initialize the backup vault. After the initialization task is completed, the backup vault is in the CREATED state.Call this operation in the region where the mirror vault resides, which is specified by the VaultRegionId parameter.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateReplicationVault'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:CreateReplicationVault', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"VaultId\\": \\"v-*********************\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"TaskId\\": \\"t-*********************\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateReplicationVaultResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <VaultId>v-*********************</VaultId>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <TaskId>t-*********************</TaskId>\\n</CreateReplicationVaultResponse>","errorExample":""}]', + ], + 'CreateRestoreJob' => [ + 'summary' => 'Creates a restore job.', + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '162850', - 'abilityTreeNodes' => [ - 'FEATUREhbr56LH1C', - 'FEATUREhbrS7MI6C', - 'FEATUREhbrFWIWBG', - 'FEATUREhbrB1KQ9G', - 'FEATUREhbrQ3MV3B', - 'FEATUREhbr3BJQCT', - 'FEATUREhbrF83GXN', - ], + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeCode' => '95447', + 'abilityTreeNodes' => ['FEATUREhbr56LH1C', 'FEATUREhbrS7MI6C', 'FEATUREhbrFWIWBG', 'FEATUREhbrB1KQ9G', 'FEATUREhbrQ3MV3B', 'FEATUREhbr3BJQCT', 'FEATUREhbrF83GXN'], ], 'parameters' => [ [ - 'name' => 'PolicyId', + 'name' => 'RestoreType', + 'in' => 'query', + 'schema' => ['description' => 'The type of the destination data source. Valid values:'."\n" + ."\n" + .'- **ECS\\_FILE**: Restores Elastic Compute Service (ECS) files.'."\n" + ."\n" + .'- **OSS**: Restores data to Object Storage Service (OSS).'."\n" + ."\n" + .'- **NAS**: Restores data to NAS.'."\n" + ."\n" + .'- **COMMON\\_FILE\\_SYSTEM**: Restores data to Cloud Parallel File System (CPFS).'."\n" + ."\n" + .'- **OTS\\_TABLE**: Restores data to Tablestore.'."\n" + ."\n" + .'- **UDM\\_ECS\\_ROLLBACK**: Rolls back an entire ECS instance.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'ECS_FILE', 'title' => ''], + ], + [ + 'name' => 'VaultId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the backup repository to which the backup snapshot belongs.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'v-*********************', 'title' => ''], + ], + [ + 'name' => 'SnapshotId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the backup snapshot.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 's-********************', 'title' => ''], + ], + [ + 'name' => 'SnapshotHash', + 'in' => 'query', + 'schema' => ['description' => 'The hash value of the backup snapshot.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'f2fe...', 'title' => ''], + ], + [ + 'name' => 'SourceType', + 'in' => 'query', + 'schema' => ['description' => 'The type of the source data. Valid values:'."\n" + ."\n" + .'- **ECS\\_FILE**: ECS files.'."\n" + ."\n" + .'- **OSS**: OSS data.'."\n" + ."\n" + .'- **NAS**: NAS data.'."\n" + ."\n" + .'- **COMMON\\_FILE\\_SYSTEM**: CPFS data.'."\n" + ."\n" + .'- **OTS\\_TABLE**: Tablestore data.'."\n" + ."\n" + .'- **UDM\\_ECS**: An entire ECS instance.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'ECS_FILE', 'title' => ''], + ], + [ + 'name' => 'Options', + 'in' => 'query', + 'schema' => ['description' => 'Specifies the parameters for the restore job.', 'type' => 'string', 'required' => false, 'example' => '{\\"includes\\":[],\\"excludes\\":[],\\"conflictPolicy\\":\\"OVERWRITE_EXISTING\\"}', 'title' => ''], + ], + [ + 'name' => 'TargetFileSystemId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the destination file system. This parameter is valid only when **RestoreType** is set to **NAS**.', 'type' => 'string', 'required' => false, 'example' => '005494', 'title' => ''], + ], + [ + 'name' => 'TargetCreateTime', + 'in' => 'query', + 'schema' => ['description' => 'The time when the destination file system was created. This parameter is valid only when **RestoreType** is set to **NAS**.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1554347313', 'title' => ''], + ], + [ + 'name' => 'TargetPath', 'in' => 'formData', - 'schema' => [ - 'title' => 'required parameters', - 'description' => 'The ID of the backup policy.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'po-000************viy', - ], + 'schema' => ['description' => 'The destination path for the restore. This parameter is valid only when **RestoreType** is set to **ECS\\_FILE**.', 'type' => 'string', 'required' => false, 'example' => 'C:\\', 'title' => ''], ], [ - 'name' => 'PolicyName', + 'name' => 'TargetBucket', + 'in' => 'query', + 'schema' => ['description' => 'The name of the destination OSS bucket. This parameter is valid only when **RestoreType** is set to **OSS**.', 'type' => 'string', 'required' => false, 'example' => 'hbr-backup-oss', 'title' => ''], + ], + [ + 'name' => 'TargetPrefix', + 'in' => 'query', + 'schema' => ['description' => 'The prefix of the destination path for the objects that you want to restore. This parameter is valid only when **RestoreType** is set to **OSS**.', 'type' => 'string', 'required' => false, 'example' => 'hbr', 'title' => ''], + ], + [ + 'name' => 'UdmDetail', + 'in' => 'query', + 'style' => 'json', + 'schema' => ['description' => 'The details of the entire instance backup. This parameter is a JSON string and is valid only when SourceType is set to UDM\\_ECS. The content of this parameter varies based on the value of RestoreType:'."\n" + ."\n" + .'- **UDM\\_ECS\\_DISK**: Clones an ECS disk.'."\n" + ."\n" + .' - **targetInstanceId**: string, required. The ID of the destination ECS instance to which the cloned disk is attached.'."\n" + ."\n" + .' - **diskCategory**: string, required. The type of the destination disk.'."\n" + ."\n" + .' - diskPerformanceLevel: string. The performance level of the disk when diskCategory is set to **essd**. Valid values are PL0, PL1, PL2, and PL3. The default value is PL1.'."\n" + ."\n" + .'- **UDM\\_ECS\\_DISK\\_ROLLBACK**: Recovers an ECS disk.'."\n" + ."\n" + .' - **sourceInstanceId**: string, required. The ID of the source ECS instance.'."\n" + ."\n" + .' - forceRestore: boolean. The default value is false. Specifies whether to forcefully recover the disk. If you set **forceRestore** to true, the disk is recovered even if it has been uninstalled from the original ECS instance or attached to a new ECS instance. Use this option with caution.'."\n" + ."\n" + .' - **bootAfterRestore**: boolean. The default value is false. Specifies whether to start the ECS instance after recovery.'."\n" + ."\n" + .'- **UDM\\_ECS**: Clones an entire ECS instance.'."\n" + ."\n" + .' - **bootAfterRestore**: boolean. The default value is false. Specifies whether to start the ECS instance after recovery.'."\n" + ."\n" + .' - **diskCategory**: string, required. The type of the destination disk.'."\n" + ."\n" + .' - diskPerformanceLevel: string. The performance level of the disk when diskCategory is set to **essd**. Valid values are PL0, PL1, PL2, and PL3. The default value is PL1.'."\n" + ."\n" + .' - **instanceType**: string, required. The instance type of the destination ECS instance.'."\n" + ."\n" + .' - **restoredNetwork**: string, required. The ID of the vSwitch for the destination ECS instance.'."\n" + ."\n" + .' - **securityGroup**: string, required. The ID of the security group for the destination ECS instance.'."\n" + ."\n" + .' - **restoredName**: string, required. The name of the destination ECS instance.'."\n" + ."\n" + .' - **restoredHostName**: string, required. The hostname of the destination ECS instance.'."\n" + ."\n" + .' - **allocatePublicIp**: boolean. The default value is false. Specifies whether to assign a public IP address to the destination ECS instance.'."\n" + ."\n" + .' - **privateIpAddress**: string. The private IP address of the destination ECS instance. If you do not specify this parameter, a random IP address is assigned by DHCP.'."\n" + ."\n" + .'- **UDM\\_ECS\\_ROLLBACK**: Rolls back an entire ECS instance.'."\n" + ."\n" + .' - **sourceInstanceId**: string, required. The ID of the source ECS instance.'."\n" + ."\n" + .' - forceRestore: boolean. The default value is false. Specifies whether to forcefully recover the instance. If you set **forceRestore** to true, the disk is recovered even if it has been uninstalled from the original ECS instance or attached to a new ECS instance. Use this option with caution.'."\n" + ."\n" + .' - **bootAfterRestore**: boolean. The default value is false. Specifies whether to start the ECS instance after recovery.', 'type' => 'object', 'required' => false, 'example' => '{\\"sourceInstanceId\\":\\"i-uf62te6pm3iwsyxyz66q\\",\\"bootAfterRestore\\":false}', 'title' => ''], + ], + [ + 'name' => 'UdmRegionId', + 'in' => 'query', + 'schema' => ['description' => 'The destination region for the recovery. This parameter is valid only when **SourceType** is set to **UDM\\_ECS**.', 'type' => 'string', 'required' => false, 'example' => 'cn-shanghai', 'title' => ''], + ], + [ + 'name' => 'TargetInstanceId', 'in' => 'formData', - 'schema' => [ - 'description' => 'The name of the backup policy.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Daily Local Backup + Remote Backup'."\n", - ], + 'schema' => ['description' => 'The ID of the destination ECS instance. This parameter is valid only when **RestoreType** is set to **ECS\\_FILE**.', 'type' => 'string', 'required' => false, 'example' => 'i-*********************', 'title' => ''], ], [ - 'name' => 'PolicyDescription', + 'name' => 'Include', + 'in' => 'formData', + 'schema' => ['description' => 'The path from which to restore all documents. The path cannot exceed 255 characters in length.', 'type' => 'string', 'required' => false, 'example' => '["/home/alice/*.pdf", "/home/bob/*.txt"]', 'title' => ''], + ], + [ + 'name' => 'Exclude', + 'in' => 'formData', + 'schema' => ['description' => 'The paths of the files to exclude from the restore job. All files in the specified paths are not restored. The value is a JSON array of strings. Each path can be up to 255 characters in length.', 'type' => 'string', 'required' => false, 'example' => '["/var", "/proc"]', 'title' => ''], + ], + [ + 'name' => 'TargetContainer', + 'in' => 'query', + 'schema' => ['description' => 'The details of the destination container. This parameter is a JSON string.', 'type' => 'string', 'required' => false, 'example' => '{\\"host\\":\\"k8s-node1\\",\\"hostPrefix\\":\\"/var/lib/kubelet/pods/4acb31fe-8577-40ff-bc8c-eccabd835f73/volumes/kubernetes.io~csi/pvc-b050b00e-ef17-4792-aab1-1642355cf1f4/mount\\",\\"pvPath\\":\\"/\\"}', 'title' => ''], + ], + [ + 'name' => 'InitiatedByAck', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether the restore job is initiated by Container Service for Kubernetes (ACK). The default value is false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], + ], + [ + 'name' => 'TargetContainerClusterId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the destination container cluster.', 'type' => 'string', 'required' => false, 'example' => 'cc-000amjsc7o1h9506oob7', 'title' => ''], + ], + [ + 'name' => 'TargetInstanceName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the destination Tablestore instance.', 'type' => 'string', 'required' => false, 'example' => 'instancename', 'title' => ''], + ], + [ + 'name' => 'TargetTableName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the destination table in the Tablestore instance.', 'type' => 'string', 'required' => false, 'example' => 'tablename', 'title' => ''], + ], + [ + 'name' => 'TargetTime', + 'in' => 'query', + 'schema' => ['description' => 'The time to which you want to restore the Tablestore data. This is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1642496881', 'title' => ''], + ], + [ + 'name' => 'OtsDetail', 'in' => 'formData', + 'style' => 'json', + 'schema' => ['description' => 'The details of the Tablestore instance.', '$ref' => '#/components/schemas/OtsTableRestoreDetail', 'required' => false, 'title' => '', 'example' => ''], + ], + [ + 'name' => 'CrossAccountType', + 'in' => 'query', 'schema' => [ - 'description' => 'The description of the backup policy.'."\n", + 'description' => 'The type of the cross-account restore. Valid values:'."\n" + ."\n" + .'- SELF\\_ACCOUNT: Restores data within the same account.'."\n" + ."\n" + .'- CROSS\\_ACCOUNT: Restores data from a different account.', + 'enumValueTitles' => [], 'type' => 'string', 'required' => false, - 'example' => 'Data is backed up at 10:00:00 every day and replicated to the China (Shanghai) region for geo-redundancy.'."\n", + 'example' => 'SELF_ACCOUNT', + 'title' => '', ], ], [ - 'name' => 'Rules', - 'in' => 'formData', + 'name' => 'CrossAccountUserId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the source account that contains the backup data for a cross-account restore.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '158975xxxxx4625', 'title' => ''], + ], + [ + 'name' => 'CrossAccountRoleName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the RAM role that you create in the source account to perform a cross-account restore.', 'type' => 'string', 'required' => false, 'example' => 'BackupRole', 'title' => ''], + ], + [ + 'name' => 'FailbackDetail', + 'in' => 'query', 'style' => 'json', + 'schema' => ['description' => 'Specifies the details of an on-premises restore.', 'type' => 'object', 'required' => false, 'example' => '{"cpu":4,"extra":"{\\"restoreVMNamePrefix\\":\\"627-\\",\\"dataCenterName\\":\\"SDDC-Datacenter\\",\\"dataStoreId\\":\\"datastore-50\\",\\"folderId\\":\\"group-v49\\",\\"resourcePoolId\\":\\"resgroup-46\\",\\"locationName\\":\\"vcenter.pc-uf600a******1.acvs.aliyuncs.com/SDDC-Datacenter/Workloads\\",\\"computeResourceName\\":\\"SDDC-Datacenter/Default_c-uf600a******\\",\\"dataStoreName\\":\\"Default_c-uf600a******/WorkloadDatastore\\",\\"networkMoReference\\":\\"DistributedVirtualPortgroup:dvportgroup-1001\\",\\"useHotAdd\\":false}","instanceId":"i-2vc******z","memoryInMB":8192,"serverId":"0fdc0c86-eb92-4e05-91ab-eeaf9fb6ad01","uefiBoot":false}', 'title' => ''], + ], + [ + 'name' => 'Edition', + 'in' => 'query', + 'schema' => ['description' => 'The edition of Cloud Backup. Valid values:'."\n" + ."\n" + .'- **STANDARD**: Standard Edition. This is the default value.'."\n" + ."\n" + .'- **BASIC**: Basic Edition. This edition is available only for basic ECS file backup plans.', 'type' => 'string', 'required' => false, 'example' => 'STANDARD', 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The rules in the backup policy.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The details of the rule.'."\n", - 'type' => 'object', - 'properties' => [ - 'RuleId' => [ - 'description' => 'The rule ID.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rule-000************rof', - ], - 'RuleType' => [ - 'title' => 'TRANSITION: 过渡类规则, BACKUP: 定时类规则, REPLICATION: 镜像类规则', - 'description' => 'The type of the rule. Each backup policy must have at least one rule of the **BACKUP** type and only one rule of the **TRANSITION** type. Valid values:'."\n" - ."\n" - .'* **BACKUP**: backup rule'."\n" - .'* **TRANSITION**: lifecycle rule'."\n" - .'* **REPLICATION**: replication rule'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'BACKUP', - 'enum' => [], - ], - 'Schedule' => [ - 'description' => 'This parameter is required only if the **RuleType** parameter is set to **BACKUP**. This parameter specifies the backup schedule settings. Formats:'."\n" - ."\n" - .'* `I|{startTime}|{interval}`: The system runs the first backup job at a point in time that is specified in the {startTime} parameter and the subsequent backup jobs at an interval that is specified in the {interval} parameter. For example, `I|1631685600|P1D` indicates that the system runs the first backup job at 14:00:00 on September 15, 2021 and the subsequent backup jobs once a day.'."\n" - ."\n" - .' * startTime: the time at which the system starts to run a backup job. The time must follow the UNIX time format. Unit: seconds.'."\n" - .' * interval: the interval at which the system runs a backup job. The interval must follow the ISO 8601 standard. For example, `PT1H` specifies an interval of 1 hour. `P1D` specifies an interval of one day.'."\n" - ."\n" - .'* `C|{startTime}|{crontab}`: The system runs backup jobs at a point in time that is specified in the {startTime} parameter based on the {crontab} expression. For example, C|1631685600|0 0 2 ?\\* 3,5,7 indicates that the system runs backup jobs at 02:00:00 every Tuesday, Thursday, and Saturday from14:00:00 on September 15, 2021.``'."\n" - ."\n" - .' * startTime: the time at which the system starts to run a backup job. The time must follow the UNIX time format. Unit: seconds.'."\n" - .' * crontab: the crontab expression. For example, 0 0 2 ?\\* 3,5,7 indicates 02:00:00 every Tuesday, Thursday, and Saturday.``'."\n" - ."\n" - .'The system does not run a backup job before the specified point in time. Each backup job, except the first one, starts only after the previous backup job is completed.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'I|1648647166|P1D', - ], - 'BackupType' => [ - 'title' => 'Backup Rule (COMPLETE: Complete backup type, INCREMENTAL: Incremental backup type, DIFFERENTIAL: Differential backup type, LOG: Transaction log backup type, INDEX: 不备份数据,只对元数据建立索引, ARCHIVE: 归档, ARCHIVE_BY_SEARCH: 根据搜索结果进行归档)', - 'description' => 'This parameter is required only if the **RuleType** parameter is set to **BACKUP**. This parameter specifies the backup type. Valid value: **COMPLETE**, which indicates full backup.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'COMPLETE', - ], - 'Retention' => [ - 'title' => 'Expiration', - 'description' => 'This parameter is required only if the **RuleType** parameter is set to **TRANSITION** or **REPLICATION**.'."\n" - ."\n" - .'* If the **RuleType** parameter is set to **TRANSITION**, this parameter specifies the retention period of the backup data. Minimum value: 1. Unit: days.'."\n" - .'* If the **RuleType** parameter is set to **REPLICATION**, this parameter specifies the retention period of remote backups. Minimum value: 1. Unit: days.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '7', - 'default' => '0', - ], - 'ReplicationRegionId' => [ - 'title' => 'Replication', - 'description' => 'This parameter is required only if the **RuleType** parameter is set to **REPLICATION**. This parameter specifies the ID of the destination region.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cn-shanghai', - ], - 'ArchiveDays' => [ - 'description' => 'This parameter is required only if the **RuleType** parameter is set to **TRANSITION**. This parameter specifies the time when data is dumped from a backup vault to an archive vault. Unit: days.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '90', - 'default' => '0', - ], - 'ColdArchiveDays' => [ - 'description' => 'This parameter is required only if the **RuleType** parameter is set to **TRANSITION**. This parameter specifies the time when data is dumped from a backup vault to a cold archive vault. Unit: days.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '365', - 'default' => '0', - ], - 'VaultId' => [ - 'description' => 'This parameter is required only if the RuleType parameter is set to BACKUP. The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'v-0001************aseg', - ], - 'RetentionRules' => [ - 'description' => 'This parameter is required only if the **RuleType** parameter is set to **TRANSITION**. This parameter specifies the special retention rules.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The special retention rule.'."\n", - 'type' => 'object', - 'properties' => [ - 'AdvancedRetentionType' => [ - 'description' => 'The type of the special retention rule. Valid values:'."\n" - ."\n" - .'* **WEEKLY**: retains weekly backups'."\n" - .'* **MONTHLY**: retains monthly backups'."\n" - .'* **YEARLY**: retains yearly backups'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'YEARLY', - ], - 'WhichSnapshot' => [ - 'description' => 'Specifies which backup is retained based on the special retention rule. Only the first backup can be retained.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1', - ], - 'Retention' => [ - 'description' => 'The special retention period of backups. Minimum value: 1. Unit: days.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '365', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 99, - ], - 'KeepLatestSnapshots' => [ - 'description' => 'Specifies whether to enable the feature of keeping at least one backup version. Valid values:'."\n" - ."\n" - .'* 0: The feature is disabled.'."\n" - .'* 1: The feature is enabled.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1', - ], - 'DataSourceFilters' => [ - 'description' => 'This parameter is required only if the **RuleType** parameter is set to **TAG**. This parameter specifies the data source filter rule.'."\n", - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'SourceType' => [ - 'description' => 'The type of the data source. Valid values:'."\n" - ."\n" - .'* **UDM_ECS**: Elastic Compute Service (ECS) instance This type of data source is supported only if the **RuleType** parameter is set to **UDM_ECS_ONLY**.'."\n" - .'* **OSS**: Object Storage Service (OSS) bucket This type of data source is supported only if the **RuleType** parameter is set to **STANDARD**.'."\n" - .'* **NAS**: File Storage NAS (NAS) file system This type of data source is supported only if the **RuleType** parameter is set to **STANDARD**.'."\n" - .'* **ECS_FILE**: ECS file This type of data source is supported only if the **RuleType** parameter is set to **STANDARD**.'."\n" - .'* **OTS**: Tablestore instance This type of data source is supported only if the **RuleType** parameter is set to **STANDARD**.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'UDM_ECS', - ], - 'DataSourceIds' => [ - 'description' => 'This parameter is deprecated.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'This parameter is deprecated.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'deprecated', - ], - 'required' => false, - ], - ], - 'required' => false, - 'description' => '', - ], - 'required' => false, - ], - 'TagFilters' => [ - 'description' => 'This parameter is required only if the **RuleType** parameter is set to **TAG**. This parameter specifies the resource tag filter rule.'."\n", - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => 'The tag key.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'env', - ], - 'Value' => [ - 'description' => 'The tag value. If you leave this parameter empty, the value is any value.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'prod', - ], - 'Operator' => [ - 'description' => 'The tag-based matching rule. Valid values:'."\n" - ."\n" - .'* **EQUAL**: Both the tag key and tag value are matched.'."\n" - .'* **NOT**: The tag key is matched and the tag value is not matched.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'EQUAL', - ], - ], - 'required' => false, - 'description' => '', - ], - 'required' => false, - ], - 'Immutable' => [ - 'description' => 'This parameter is required only if the **PolicyType** parameter is set to **UDM_ECS_ONLY**. This parameter specifies whether to enable the immutable backup feature.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - ], - 'required' => false, + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => 'The return code. A value of 200 indicates that the call is successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'RestoreId' => ['description' => 'The ID of the restore job.', 'type' => 'string', 'example' => 'r-*********************', 'title' => ''], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true,\\n \\"RestoreId\\": \\"r-*********************\\"\\n}","type":"json"}]', + 'title' => 'CreateRestoreJob', + 'description' => '- This operation creates a restore job from a selected backup snapshot to a specified restore destination.'."\n" + ."\n" + .'- The source and destination must have the same data source type.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateRestoreJob'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:CreateRestoreJob', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], - 'required' => false, - 'maxItems' => 10, - 'minItems' => 1, ], ], ], + ], + 'CreateTempFileUploadUrl' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '146297', + 'abilityTreeNodes' => ['FEATUREhbrKJCQWH', 'FEATUREhbrS7MI6C'], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'FileName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the file to be uploaded.'."\n", 'type' => 'string', 'required' => true, 'example' => 'file-list.txt'], + ], + ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'UpdatePolicyResponse', - 'description' => 'UpdatePolicyResponse'."\n", 'type' => 'object', 'properties' => [ - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], + 'Endpoint' => ['description' => 'The endpoint that is used to upload the file to OSS.'."\n", 'type' => 'string', 'example' => 'oss-cn-shenzhen.aliyuncs.com'], + 'RequestId' => ['description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => 'F4EEB401-DD21-588D-AE3B-1E835C7655E1'], + 'ExpireTime' => ['description' => 'The expiration time of the signature that is used to upload the file to OSS. This value is a UNIX timestamp. Unit: seconds.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1654326678'], + 'Success' => ['description' => 'Indicates whether the call is successful. Valid values:'."\n" + ."\n" + .'* true: The call is successful.'."\n" + .'* false: The call fails.'."\n", 'type' => 'boolean', 'example' => 'true'], + 'Code' => ['description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", 'type' => 'string', 'example' => '200'], + 'TempFileKey' => ['description' => 'The key that is used to upload the file to OSS.'."\n", 'type' => 'string', 'example' => 'temp/1440155109798732/upload/2022-07-29/49bed34c-b430-4e7e-89b1-4be2b734f95c/iaclone.diff'], + 'Message' => ['description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'BucketName' => ['description' => 'The name of the OSS bucket to which the file is uploaded.'."\n", 'type' => 'string', 'example' => 'hbr-temp-bucket'], + 'OssAccessKeyId' => ['description' => 'The AccessKey ID that is used to upload the file to OSS.'."\n", 'type' => 'string', 'example' => 'LTAI****Up'], + 'Policy' => ['description' => 'The policy that is used to upload the file to OSS.'."\n", 'type' => 'string', 'example' => 'eyJleH****V19'], + 'Signature' => ['description' => 'The signature that is used to upload the file to OSS.'."\n", 'type' => 'string', 'example' => 'RmhI****0A='], ], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', - 'title' => 'UpdatePolicyV2', - 'description' => 'If you modify a backup policy, the modification takes effect on all data sources that are bound to the backup policy. Proceed with caution.'."\n", - ], - 'DescribePoliciesV2' => [ - 'summary' => 'Queries one or more backup policies.', - 'methods' => [ - 'post', - 'get', + 'title' => 'CreateTempFileUploadUrl', + 'summary' => 'Generates the parameters and signature required for a file upload URL.', + 'description' => '1. You can directly upload a file to Object Storage Service (OSS) by using a form based on the returned value of this operation.'."\n" + .'2. For more information about how to upload a file to OSS by using a form, see OSS documentation.'."\n" + .'3. The system periodically deletes files that are uploaded to OSS.'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateTempFileUploadUrl'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:CreateTempFileUploadUrl', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Endpoint\\": \\"oss-cn-shenzhen.aliyuncs.com\\",\\n \\"RequestId\\": \\"F4EEB401-DD21-588D-AE3B-1E835C7655E1\\",\\n \\"ExpireTime\\": 1654326678,\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"TempFileKey\\": \\"temp/1440155109798732/upload/2022-07-29/49bed34c-b430-4e7e-89b1-4be2b734f95c/iaclone.diff\\",\\n \\"Message\\": \\"successful\\",\\n \\"BucketName\\": \\"hbr-temp-bucket\\",\\n \\"OssAccessKeyId\\": \\"LTAI****Up\\",\\n \\"Policy\\": \\"eyJleH****V19\\",\\n \\"Signature\\": \\"RmhI****0A=\\"\\n}","type":"json"}]', + ], + 'CreateVault' => [ + 'summary' => 'Creates a backup vault.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', + 'operationType' => 'create', 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '162855', - 'abilityTreeNodes' => [ - 'FEATUREhbr56LH1C', - 'FEATUREhbrS7MI6C', - 'FEATUREhbrFWIWBG', - 'FEATUREhbr7WEYAR', - 'FEATUREhbrB1KQ9G', - 'FEATUREhbr3BJQCT', - 'FEATUREhbrF83GXN', - ], + 'chargeType' => 'paid', + 'abilityTreeCode' => '95458', + 'abilityTreeNodes' => ['FEATUREhbr56LH1C', 'FEATUREhbrFWIWBG', 'FEATUREhbr3BJQCT', 'FEATUREhbrIA0YQI', 'FEATUREhbrI97IXK', 'FEATUREhbrTH4MM4', 'FEATUREhbrAL60OZ', 'FEATUREhbr9ZUQY7'], + 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ - 'name' => 'NextToken', - 'in' => 'formData', + 'name' => 'VaultRegionId', + 'in' => 'query', + 'schema' => ['description' => 'The region ID of the backup vault.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-shanghai', 'title' => ''], + ], + [ + 'name' => 'VaultName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the backup vault. The name must be 1 to 64 characters in length.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'backupvaultname', 'title' => ''], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => ['description' => 'The description of the backup vault. The description can be 0 to 255 characters in length.', 'type' => 'string', 'required' => false, 'example' => 'description', 'title' => ''], + ], + [ + 'name' => 'VaultType', + 'in' => 'query', 'schema' => [ - 'description' => 'The token that is used to obtain the next page of backup policies.'."\n", + 'description' => 'The type of the backup vault. Valid values:'."\n" + ."\n" + .'- **STANDARD**: a standard backup vault.'."\n" + ."\n" + .'- **OTS\\_BACKUP**: a Tablestore backup vault.', + 'enumValueTitles' => ['OTS_BACKUP' => 'OTS backup vault', 'STANDARD' => 'Standard repository'], 'type' => 'string', 'required' => false, - 'example' => 'caeba0bbb2be03f84eb48b699f0a', + 'default' => 'STANDARD', + 'example' => 'STANDARD', + 'title' => '', ], ], [ - 'name' => 'MaxResults', - 'in' => 'formData', + 'name' => 'VaultStorageClass', + 'in' => 'query', 'schema' => [ - 'description' => 'The number of results for each query.'."\n" + 'description' => 'The storage class of the backup vault.'."\n" ."\n" - .'Valid values: 10 to 100. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', + .'- **STANDARD**: Standard.'."\n" + ."\n" + .'- **ARCHIVE**: This value is deprecated.'."\n" + ."\n" + .'- **COLD\\_ARCHIVE**: This value is deprecated.'."\n" + ."\n" + .'- **IA**: This value is deprecated.', + 'type' => 'string', 'required' => false, - 'example' => '10', - 'default' => '10', + 'default' => 'STANDARD', + 'enum' => ['STANDARD', 'IA', 'ARCHIVE', 'COLD_ARCHIVE'], + 'example' => 'STANDARD', + 'title' => '', ], ], [ - 'name' => 'PolicyId', - 'in' => 'formData', + 'name' => 'WormEnabled', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to enable backup locking.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], + ], + [ + 'name' => 'EncryptType', + 'in' => 'query', 'schema' => [ - 'description' => 'The ID of the backup policy.'."\n", + 'description' => 'The encryption type of the source data. This parameter is valid only if you set VaultType to STANDARD or OTS\\_BACKUP. Valid values:'."\n" + ."\n" + .'- **HBR\\_PRIVATE**: The backup vault is encrypted using the built-in encryption method of Cloud Backup.'."\n" + ."\n" + .'- **KMS**: The backup vault is encrypted using a customer master key (CMK) from Key Management Service (KMS).', + 'enumValueTitles' => ['KMS' => 'Use the Alibaba Cloud KMS service for custom key encryption.', 'HBR_PRIVATE' => 'HBR is fully managed and uses the built-in encryption of the backup service.'], 'type' => 'string', 'required' => false, - 'example' => 'po-000************2l6', + 'example' => 'KMS', + 'title' => '', ], ], + [ + 'name' => 'KmsKeyId', + 'in' => 'query', + 'schema' => ['description' => 'The ID or alias of the KMS key. This parameter is required only if you set EncryptType to KMS.', 'type' => 'string', 'required' => false, 'example' => 'alias/yzs-hhht', 'title' => ''], + ], + [ + 'name' => 'Replication', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to create a replication vault.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], + ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'DescribePoliciesResponse', - 'description' => 'DescribePoliciesResponse'."\n", 'type' => 'object', 'properties' => [ - 'Policies' => [ - 'description' => 'The backup policies.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The details of the backup policy.'."\n", - 'type' => 'object', - 'properties' => [ - 'CreatedTime' => [ - 'description' => 'The time when the backup policy was created. The value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1650248136', - ], - 'UpdatedTime' => [ - 'description' => 'The time when the backup policy was updated. The value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1662080404', - ], - 'PolicyId' => [ - 'description' => 'The ID of the backup policy.'."\n", - 'type' => 'string', - 'example' => 'po-000************bkz', - ], - 'PolicyName' => [ - 'description' => 'The name of the backup policy.'."\n", - 'type' => 'string', - 'example' => 'Daily Local Backup + Remote Backup'."\n", - ], - 'PolicyDescription' => [ - 'description' => 'The description of the backup policy.'."\n", - 'type' => 'string', - 'example' => 'Data is backed up at 10:00:00 every day and replicated to the China (Shanghai) region for geo-redundancy.'."\n", - ], - 'Rules' => [ - 'description' => 'The rules in the backup policy.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The details of the rule.'."\n", - 'type' => 'object', - 'properties' => [ - 'RuleId' => [ - 'description' => 'The rule ID.'."\n", - 'type' => 'string', - 'example' => 'rule-000************f1e', - ], - 'RuleType' => [ - 'title' => 'TRANSITION, BACKUP, REPLICATION', - 'description' => 'The type of the rule. Each backup policy must have at least one rule of the **BACKUP** type and only one rule of the **TRANSITION** type. Valid values:'."\n" - ."\n" - .'* **BACKUP**: backup rule'."\n" - .'* **TRANSITION**: lifecycle rule'."\n" - .'* **REPLICATION**: replication rule'."\n", - 'type' => 'string', - 'example' => 'BACKUP', - ], - 'Schedule' => [ - 'description' => 'This parameter is returned only if the value of the **RuleType** parameter is **BACKUP**. This parameter indicates the backup schedule settings. Format: `I|{startTime}|{interval}`. The system runs the first backup job at a point in time that is specified in the {startTime} parameter and the subsequent backup jobs at an interval that is specified in the {interval} parameter. The system does not run a backup job before the specified point in time. Each backup job, except the first one, starts only after the previous backup job is completed. For example, `I|1631685600|P1D` indicates that the system runs the first backup job at 14:00:00 on September 15, 2021 and the subsequent backup jobs once a day.'."\n" - ."\n" - .'* startTime: the time at which the system starts to run a backup job. The time follows the UNIX time format. Unit: seconds.'."\n" - .'* interval: the interval at which the system runs a backup job. The interval follows the ISO 8601 standard. For example, PT1H indicates an interval of 1 hour. P1D indicates an interval of one day.'."\n", - 'type' => 'string', - 'example' => 'I|1648647166|P1D', - ], - 'BackupType' => [ - 'title' => 'COMPLETE, INCREMENTAL, DIFFERENTIAL, LOG', - 'description' => 'This parameter is returned only if the value of the **RuleType** parameter is **BACKUP**. This parameter indicates the backup type. Valid value: **COMPLETE**, which indicates full backup.'."\n", - 'type' => 'string', - 'example' => 'COMPLETE', - ], - 'VaultId' => [ - 'description' => 'This parameter is returned only if the value of the RuleType parameter is BACKUP. The ID of the backup vault.'."\n", - 'type' => 'string', - 'example' => 'v-000**************kgm', - ], - 'ReplicationRegionId' => [ - 'description' => 'This parameter is returned only if the value of the **RuleType** parameter is **REPLICATION**. This parameter indicates the ID of the destination region.'."\n", - 'type' => 'string', - 'example' => 'cn-shanghai', - ], - 'Retention' => [ - 'description' => 'This parameter is returned only if the value of the **RuleType** parameter is **TRANSITION** or **REPLICATION**.'."\n" - ."\n" - .'* If the value of the **RuleType** parameter is **TRANSITION**, this parameter indicates the retention period of the backup data. Minimum value: 1. Unit: days.'."\n" - .'* If the value of the **RuleType** parameter is **REPLICATION**, this parameter indicates the retention period of remote backups. Minimum value: 1. Unit: days.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '7', - ], - 'RetentionRules' => [ - 'description' => 'This parameter is returned only if the value of the **RuleType** parameter is **TRANSITION**. This parameter indicates the special retention rules.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The special retention rules.'."\n", - 'type' => 'object', - 'properties' => [ - 'AdvancedRetentionType' => [ - 'title' => 'DAILY, WEEKLY, MONTHLY, YEARLY', - 'description' => 'The type of the special retention rule. Valid values:'."\n" - ."\n" - .'* **WEEKLY**: weekly backups'."\n" - .'* **MONTHLY**: monthly backups'."\n" - .'* **YEARLY**: yearly backups'."\n", - 'type' => 'string', - 'example' => 'YEARLY', - ], - 'WhichSnapshot' => [ - 'description' => 'Indicates which backup is retained based on the special retention rule. Only the first backup can be retained.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'Retention' => [ - 'description' => 'The special retention period of backups. Minimum value: 1. Unit: days.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '730', - ], - ], - ], - ], - 'ArchiveDays' => [ - 'description' => 'This parameter is returned only if the value of the **RuleType** parameter is **TRANSITION**. This parameter indicates the time when data is dumped from a backup vault to an archive vault. Unit: days.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '30', - ], - 'KeepLatestSnapshots' => [ - 'description' => 'Indicates whether the feature of keeping at least one backup version is enabled. Valid values:'."\n" - ."\n" - .'* **0**: The feature is disabled.'."\n" - .'* **1**: The feature is enabled.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'DataSourceFilters' => [ - 'description' => 'This parameter is required only when **RuleType** is set to **TAG**. It defines the data source filtering rule.', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'SourceType' => [ - 'description' => 'Data source type. The value range is as follows: '."\n" - .'- **UDM_ECS**: Indicates ECS server backup. '."\n" - .'- **OSS**: Indicates OSS backup. '."\n" - .'- **NAS**: Indicates Alibaba Cloud NAS backup. '."\n" - .'- **ECS_FILE**: Indicates ECS file backup. '."\n" - .'- **OTS**: Indicates Tablestore backup.', - 'type' => 'string', - 'example' => 'UDM_ECS', - ], - 'DataSourceIds' => [ - 'description' => 'Deprecated.', - 'type' => 'array', - 'items' => [ - 'description' => 'Deprecated.', - 'type' => 'string', - 'example' => 'Deprecated.'."\n", - ], - ], - ], - ], - ], - 'TagFilters' => [ - 'description' => 'This parameter is required only when **RuleType** is set to **TAG**. It defines the resource tag filtering rule.', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => 'Tag key', - 'type' => 'string', - 'example' => 'env', - ], - 'Value' => [ - 'description' => 'Tag value.', - 'type' => 'string', - 'example' => 'prod', - ], - 'Operator' => [ - 'description' => 'Tag matching rules, supporting: - **EQUAL**: Matches both the tag key and tag value. - **NOT**: Matches the tag key but not the tag value.', - 'type' => 'string', - 'example' => 'EQUAL', - ], - ], - ], - ], - 'Immutable' => [ - 'description' => 'This parameter is returned only if the **PolicyType** is **UDM_ECS_ONLY**. This parameter indicates whether the immutable backup feature is enabled.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - ], - ], - ], - 'PolicyBindingCount' => [ - 'description' => 'The number of data sources that are bound to the backup policy.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '5', - ], - 'PolicyType' => [ - 'description' => 'The policy type. Valid values:'."\n" - ."\n" - .'* **STANDARD**: the general backup policy. This type of policy applies to backups other than Elastic Compute Service (ECS) instance backup.'."\n" - .'* **UDM_ECS_ONLY**: the ECS instance backup policy. This type of policy applies only to ECS instance backup.'."\n", - 'type' => 'string', - 'example' => 'STANDARD', - ], - 'BusinessStatus' => [ - 'title' => '用户业务状态', - 'type' => 'string', - ], - ], - ], - ], - 'NextToken' => [ - 'description' => 'The token that is used to obtain the next page of backup policies.'."\n", - 'type' => 'string', - 'example' => 'caeba0bbb2be03f84eb48b699f0a', - ], - 'MaxResults' => [ - 'description' => 'The number of results for each query.'."\n" - ."\n" - .'Valid values: 10 to 100. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'TotalCount' => [ - 'description' => 'The total number of returned entries.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '12', - ], - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], + 'VaultId' => ['description' => 'The ID of the backup vault.', 'type' => 'string', 'example' => 'v-*********************', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request was successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The returned message. If the request was successful, \\`successful\\` is returned. If the request failed, an error message is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'TaskId' => ['description' => 'The ID of the backup vault initialization task. Use the DescribeTask operation to query the task status.', 'type' => 'string', 'example' => 't-*********************', 'title' => ''], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"VaultId\\": \\"v-*********************\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"TaskId\\": \\"t-*********************\\"\\n}","type":"json"}]', + 'title' => 'CreateVault', + 'description' => '- Each Alibaba Cloud account can create a maximum of 100 backup vaults.'."\n" + ."\n" + .'- After a backup vault is created, its status is INITIALIZING and an initialization task automatically starts. After the task is successfully completed, the status changes to CREATED. The backup vault can be used for backup jobs only when its status is CREATED.'."\n" + ."\n\n" + .' ><notice>'."\n" + ."\n" + .' Before you call this operation, make sure that you understand the billing methods and [pricing](https://www.aliyun.com/price/detail/hbr?) of Cloud Backup.'."\n" + ."\n" + .' ></notice>', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateVault'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:CreateVault', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Policies\\": [\\n {\\n \\"CreatedTime\\": 1650248136,\\n \\"UpdatedTime\\": 1662080404,\\n \\"PolicyId\\": \\"po-000************bkz\\",\\n \\"PolicyName\\": \\"每天备份 + 异地备份\\",\\n \\"PolicyDescription\\": \\"每天早上十点备份,异地复制到上海。\\",\\n \\"Rules\\": [\\n {\\n \\"RuleId\\": \\"rule-000************f1e\\",\\n \\"RuleType\\": \\"BACKUP\\",\\n \\"Schedule\\": \\"I|1648647166|P1D\\",\\n \\"BackupType\\": \\"COMPLETE\\",\\n \\"VaultId\\": \\"v-000**************kgm\\",\\n \\"ReplicationRegionId\\": \\"cn-shanghai\\",\\n \\"Retention\\": 7,\\n \\"RetentionRules\\": [\\n {\\n \\"AdvancedRetentionType\\": \\"YEARLY\\",\\n \\"WhichSnapshot\\": 1,\\n \\"Retention\\": 730\\n }\\n ],\\n \\"ArchiveDays\\": 30,\\n \\"KeepLatestSnapshots\\": 1,\\n \\"DataSourceFilters\\": [\\n {\\n \\"SourceType\\": \\"UDM_ECS\\",\\n \\"DataSourceIds\\": [\\n \\"已废弃。\\"\\n ]\\n }\\n ],\\n \\"TagFilters\\": [\\n {\\n \\"Key\\": \\"env\\",\\n \\"Value\\": \\"prod\\",\\n \\"Operator\\": \\"EQUAL\\"\\n }\\n ],\\n \\"Immutable\\": true\\n }\\n ],\\n \\"PolicyBindingCount\\": 5,\\n \\"PolicyType\\": \\"STANDARD\\",\\n \\"BusinessStatus\\": \\"ACTIVE\\"\\n }\\n ],\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a\\",\\n \\"MaxResults\\": 10,\\n \\"TotalCount\\": 12,\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', - 'title' => 'DescribePoliciesV2', - 'translator' => 'machine', + 'extraInfo' => ' ', ], - 'CreatePolicyBindings' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'CreateVaultReplication' => [ + 'summary' => 'Configures backup vault replication.', + 'path' => '', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', - 'abilityTreeCode' => '136856', - 'abilityTreeNodes' => [ - 'FEATUREhbr56LH1C', - 'FEATUREhbrFWIWBG', - 'FEATUREhbrAW9I1R', - 'FEATUREhbrB1KQ9G', - 'FEATUREhbr3BJQCT', - 'FEATUREhbr9ZUQY7', - ], + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeCode' => '95458', + 'abilityTreeNodes' => ['FEATUREhbrGSUVI2'], ], 'parameters' => [ [ - 'name' => 'PolicyId', - 'in' => 'formData', + 'name' => 'ReplicationSourceVaultId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the source backup vault.', 'type' => 'string', 'required' => true, 'example' => 'v-*********************', 'title' => ''], + ], + [ + 'name' => 'ReplicationTargetVaultId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the destination backup vault.', 'type' => 'string', 'required' => true, 'example' => 'r-*********************', 'title' => ''], + ], + [ + 'name' => 'ReplicationSourceRegionId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the source region. If you do not specify this parameter, the region where the API is called is used.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The ID of the backup policy.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'po-000************8ep', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '280DD872-EE25-52E8-9CB4-491067173DD0', 'title' => ''], + 'TaskId' => ['description' => 'The ID of the backup vault initialization task. Use DescribeTask to query the task status.', 'type' => 'string', 'example' => 't-*********************', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request was successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The returned message. If the request is successful, `successful` is returned. If the request fails, an error message is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + ], + 'title' => '', + 'description' => 'Schema of Response', + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'CreateVaultReplication', + 'description' => 'Call this method in the region where the destination backup vault is located. Before you use this API, review the billing methods and pricing of Cloud Backup.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ [ - 'name' => 'PolicyBindingList', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:CreateVaultReplication', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"280DD872-EE25-52E8-9CB4-491067173DD0\\",\\n \\"TaskId\\": \\"t-*********************\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\"\\n}","type":"json"}]', + ], + 'DeleteAirEcsInstance' => [ + 'methods' => ['post'], + 'schemes' => ['https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '201610', + 'abilityTreeNodes' => ['FEATUREhbrIF7VXM'], + ], + 'parameters' => [ + [ + 'name' => 'EcsInstanceId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the Elastic Compute Service (ECS) instance.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'i-uf6ir9y******hvisj'], + ], + [ + 'name' => 'UninstallClientSourceTypes', 'in' => 'query', 'style' => 'json', 'schema' => [ - 'description' => 'The data sources that you want to bind to the backup policy.'."\n", + 'description' => 'The data sources for which the client needs to be uninstalled.'."\n", 'type' => 'array', - 'items' => [ - 'description' => 'The details of the data sources that you want to bind to the backup policy.'."\n", - 'type' => 'object', - 'properties' => [ - 'PolicyBindingDescription' => [ - 'description' => 'The description of the association.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Bind data sources to a backup policy'."\n", - ], - 'DataSourceId' => [ - 'description' => 'The ID of the data source. The meaning of this parameter depends on the **SourceType** parameter. Valid values:'."\n" - ."\n" - .'* **UDM_ECS**: the ID of the Elastic Compute Service (ECS) instance'."\n" - .'* **OSS**: the name of the Object Storage Service (OSS) bucket'."\n" - .'* **NAS**: the ID of the File Storage NAS (NAS) file system'."\n" - .'* **COMMON_NAS**: the ID of the on-premises NAS file system'."\n" - .'* **ECS_FILE**: the ID of the ECS instance'."\n" - .'* **File**: the ID of the Cloud Backup client'."\n" - .'* **COMMON_FILE_SYSTEM**: the ID of the Cloud Parallel File Storage (CPFS) backup data source'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'i-bp1************dl8', - ], - 'Disabled' => [ - 'description' => 'Specifies whether to disable the backup policy for the data source. Valid values:'."\n" - ."\n" - .'* true: disables the backup policy for the data source'."\n" - .'* false: enables the backup policy for the data source'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'true', - ], - 'SourceType' => [ - 'description' => 'The type of the data source. Valid values:'."\n" - ."\n" - .'* **UDM_ECS**: ECS instance'."\n" - .'* **OSS**: OSS bucket'."\n" - .'* **NAS**: NAS file system'."\n" - .'* **COMMON_NAS**: on-premises NAS file system'."\n" - .'* **ECS_FILE**: ECS file'."\n" - .'* **File**: on-premises file'."\n" - .'* **COMMON_FILE_SYSTEM**: CPFS file system'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'UDM_ECS', - ], - 'Source' => [ - 'description' => '* If the SourceType parameter is set to **OSS**, set the Source parameter to the prefix of the path to the folder that you want to back up. If you do not specify the Source parameter, the entire bucket (root directory) is backed up.'."\n" - .'* If the SourceType parameter is set to **ECS_FILE** or **File**, set the Source parameter to the path to the files that you want to back up. If you do not specify the Source parameter, all paths are backed up.'."\n" - .'* This parameter is required if the SourceType parameter is set to **COMMON_FILE_SYSTEM**. This parameter specifies the path to be backed up. To back up the /src path, enter \\["/src"]. To back up the root path, enter \\["/"].'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'backup/', - ], - 'Include' => [ - 'description' => 'This parameter is required only if you set the **SourceType** parameter to **ECS_FILE**, **File**, **NAS**, **COMMON_NAS**, or **COMMON_FILE_SYSTEM**. This parameter specifies the type of files to be backed up. All files of the specified type are backed up. The value can be up to 255 characters in length.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '[\\"*.doc\\",\\"*.xltm\\"]', - ], - 'Exclude' => [ - 'description' => 'This parameter is required only if you set the **SourceType** parameter to **ECS_FILE**, **File**, **NAS**, **COMMON_NAS**, or **COMMON_FILE_SYSTEM**. This parameter specifies the type of files that do not need to be backed up. No files of the specified type are backed up. The value can be up to 255 characters in length.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '[\\"*.doc\\",\\"*.xltm\\"]', - ], - 'SpeedLimit' => [ - 'description' => 'This parameter is required only if you set the **SourceType** parameter to **ECS_FILE** or **File**. This parameter specifies the throttling rules. Format: `{start}{end}{bandwidth}`. Separate multiple throttling rules with vertical bars (|). The time ranges of the throttling rules cannot overlap.'."\n" - ."\n" - .'* **start**: the start hour.'."\n" - .'* **end**: the end hour.'."\n" - .'* **bandwidth**: the bandwidth. Unit: KB/s.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '0:24:1024', - ], - 'AdvancedOptions' => [ - 'description' => 'The advanced options.'."\n", - 'type' => 'object', - 'properties' => [ - 'UdmDetail' => [ - 'description' => 'The advanced options for ECS instance backup.'."\n", - 'type' => 'object', - 'properties' => [ - 'ExcludeDiskIdList' => [ - 'description' => 'The IDs of the disks that do not need to be protected. If the DiskIdList parameter is not empty, this parameter is ignored.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the disk that does not need to be protected.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'd-bp1************apo', - ], - 'required' => false, - ], - 'DiskIdList' => [ - 'description' => 'The IDs of the disks that need to be protected. If all disks need to be protected, this parameter is empty.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the disk that needs to be protected.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'd-bp1************apo', - ], - 'required' => false, - ], - 'SnapshotGroup' => [ - 'description' => 'Specifies whether to create a snapshot-consistent group. You can create a snapshot-consistent group only if all disks are Enterprise SSDs (ESSDs).'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - 'AppConsistent' => [ - 'description' => 'Specifies whether to enable application consistency. You can enable application consistency only if all disks are ESSDs.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], - 'RamRoleName' => [ - 'description' => 'This parameter is required only if you set the **AppConsistent** parameter to **true**. This parameter specifies the name of the Resource Access Management (RAM) role that is required to create application-consistent snapshots.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'AliyunECSInstanceForHbrRole', - ], - 'PreScriptPath' => [ - 'description' => 'This parameter is required only if you set the **AppConsistent** parameter to **true**. This parameter specifies the path of the pre-freeze scripts that are executed before application-consistent snapshots are created.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '/tmp/prescript.sh', - ], - 'PostScriptPath' => [ - 'description' => 'This parameter is required only if you set the **AppConsistent** parameter to **true**. This parameter specifies the path of the post-thaw scripts that are executed after application-consistent snapshots are created.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '/tmp/postscript.sh', - ], - 'EnableFsFreeze' => [ - 'description' => 'This parameter is required only if you set the **AppConsistent** parameter to **true**. This parameter specifies whether to enable Linux fsfreeze to put file systems into the read-only state before application-consistent snapshots are created. Default value: true.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - 'TimeoutInSeconds' => [ - 'description' => 'This parameter is required only if you set the **AppConsistent** parameter to **true**. This parameter specifies the I/O freeze timeout period. Default value: 30. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '30', - ], - 'EnableWriters' => [ - 'description' => 'This parameter is required only if you set the **AppConsistent** parameter to **true**. This parameter specifies whether to create application-consistent snapshots. Valid values:'."\n" - ."\n" - .'* true: creates application-consistent snapshots.'."\n" - .'* false: creates file system-consistent snapshots.'."\n" - ."\n" - .'Default value: true.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - ], - 'required' => false, - ], - 'OssDetail' => [ - 'description' => 'The advanced options for Object Storage Service (OSS) backup.'."\n", - 'type' => 'object', - 'properties' => [ - 'InventoryId' => [ - 'description' => 'The name of the OSS inventory. If this parameter is not empty, the OSS inventory is used for performance optimization.'."\n" - ."\n" - .'* If you want to back up more than 100 million OSS objects, we recommend that you use inventory lists to accelerate incremental backup. Storage fees for inventory lists are included into your OSS bills.'."\n" - .'* A certain amount of time is required for OSS to generate inventory lists. Before inventory lists are generated, OSS objects may fail to be backed up. In this case, you can back up the OSS objects in the next backup cycle.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'oss-inventory-default', - ], - 'InventoryCleanupPolicy' => [ - 'description' => 'Specifies whether the system deletes the inventory lists when a backup is completed. This parameter is valid only when OSS inventories are used. Valid values:'."\n" - ."\n" - .'* **NO_CLEANUP**: does not delete inventory lists.'."\n" - .'* **DELETE_CURRENT**: deletes the current inventory list.'."\n" - .'* **DELETE_CURRENT_AND_PREVIOUS**: deletes all inventory lists.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'NO_CLEANUP', - ], - 'IgnoreArchiveObject' => [ - 'title' => '不在任务统计和失败文件列表中提示归档型对象', - 'description' => 'Do not prompt for archival type objects in task statistics and failed file lists.', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - ], - 'required' => false, - ], - 'FileDetail' => [ - 'description' => 'The advanced options for file backup.'."\n", - 'type' => 'object', - 'properties' => [ - 'UseVSS' => [ - 'description' => 'Specifies whether to enable the Volume Shadow Copy Service (VSS) feature. Valid values:'."\n" - ."\n" - .'* **true**: enables the feature.'."\n" - .'* **false**: disables the feature.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - 'AdvPolicy' => [ - 'description' => 'Specifies whether to use an advanced policy. Valid values:'."\n" - ."\n" - .'* **true**: uses the advanced policy.'."\n" - .'* **false**: does not use the advanced policy.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - ], - 'required' => false, - ], - 'CommonNasDetail' => [ - 'description' => 'The advanced options for on-premises NAS backup.'."\n", - 'type' => 'object', - 'properties' => [ - 'FullOnIncrementFail' => [ - 'description' => 'Specifies whether the system performs full backup if incremental backup fails. Valid values:'."\n" - ."\n" - .'* **true**: The system performs full backup if incremental backup fails.'."\n" - .'* **false**: The system does not perform full backup if incremental backup fails.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - 'FetchSliceSize' => [ - 'description' => 'The size of backup shards (the number of files).'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '100000', - ], - 'ClusterId' => [ - 'description' => 'The ID of the backup client group. When you perform on-premises NAS backup, Cloud Backup selects clients from the specified backup client group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cl-000**************ggu', - ], - ], - 'required' => false, - ], - 'CommonFileSystemDetail' => [ - 'description' => 'The advanced options for CPFS backup.'."\n", - 'type' => 'object', - 'properties' => [ - 'FullOnIncrementFail' => [ - 'description' => 'Specifies whether the system performs full backup if incremental backup fails. Valid values:'."\n" - ."\n" - .'* **true**: The system performs full backup if incremental backup fails.'."\n" - .'* **false**: The system does not perform full backup if incremental backup fails.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - 'FetchSliceSize' => [ - 'description' => 'The size of backup shards (the number of files).'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '100000', - ], - ], - 'required' => false, - ], - ], - 'required' => false, - ], - 'CrossAccountType' => [ - 'description' => 'Specifies whether to back up and restore data within the same Alibaba Cloud account or across Alibaba Cloud accounts. Default value: SELF_ACCOUNT. Valid values:'."\n" - ."\n" - .'* **SELF_ACCOUNT**: backs up data within the same Alibaba Cloud account.'."\n" - .'* **CROSS_ACCOUNT**: backs up data across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'SELF_ACCOUNT', - ], - 'CrossAccountUserId' => [ - 'description' => 'The ID of the source Alibaba Cloud account that authorizes the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '144**********732', - ], - 'CrossAccountRoleName' => [ - 'description' => 'The name of the RAM role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'hbrcrossrole', - ], - ], - 'required' => false, - ], + 'items' => ['description' => 'The data source for which the client needs to be uninstalled.'."\n", 'type' => 'string', 'required' => false, 'example' => 'ECS_FILE'], 'required' => false, ], ], @@ -5107,999 +3316,645 @@ 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'CreatePolicyBindingsResponse', - 'description' => 'CreatePolicyBindingsResponse'."\n", + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '82CC5B6C-72F7-5D39-92F6-67887DF9AD46', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'Id of the request'."\n", 'type' => 'string', 'example' => '33AA3AAE-89E1-5D3A-A51D-0C0A80850F68'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'TaskId' => ['description' => 'The ID of the asynchronous job. You can call the DescribeTask operation to query the execution result of an asynchronous job.'."\n", 'type' => 'string', 'example' => 't-*********************'], ], ], ], ], - 'errorCodes' => [ - 400 => [ - [ - 'errorCode' => 'PolicyAlreadyBoundWithThisDataSource', - 'errorMessage' => 'This datasource has already been bound with the policy, please use another one.', - ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'DeleteAirEcsInstance', + 'summary' => 'Removes the Elastic Compute Service (ECS) instance that is used for restoration only in ECS Backup Essential Edition.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteAirEcsInstance'], ], ], - 'eventInfo' => [ - 'enable' => false, - 'eventNames' => [], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:DeleteAirEcsInstance', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"82CC5B6C-72F7-5D39-92F6-67887DF9AD46\\"\\n}","type":"json"}]', - 'title' => 'CreatePolicyBindings', - 'summary' => 'Binds one or more data sources to a backup policy.', - 'description' => '* You can bind data sources to only one policy in each request.'."\n" - .'* Elastic Compute Service (ECS) instances can be bound to only one policy.'."\n", + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"33AA3AAE-89E1-5D3A-A51D-0C0A80850F68\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"TaskId\\": \\"t-*********************\\"\\n}","type":"json"}]', ], - 'DeletePolicyBinding' => [ - 'summary' => 'Disassociates one or more data sources from a backup policy. After you disassociate the data sources from the backup policy, the backup policy no longer protects the data sources. Proceed with caution.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DeleteBackupClient' => [ + 'summary' => 'Deletes a Cloud Backup client.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREhbrS7MI6C', - 'FEATUREhbrQ3MV3B', - 'FEATUREhbrB1KQ9G', - 'FEATUREhbr3BJQCT', - 'FEATUREhbr56LH1C', - 'FEATUREhbrFWIWBG', - 'FEATUREhbr9ZUQY7', - 'FEATUREhbrAW9I1R', - ], + 'abilityTreeNodes' => ['FEATUREhbr3BJQCT', 'FEATUREhbrS7MI6C'], ], 'parameters' => [ [ - 'name' => 'PolicyId', - 'in' => 'formData', + 'name' => 'ClientId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the Cloud Backup client.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'c-*********************', 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The ID of the backup policy.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'po-000************hgp', + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'- true'."\n" + ."\n" + .'- false', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], + ], + 'title' => 'DeleteBackupClient', + 'description' => '- You cannot delete the active Cloud Backup clients that receive heartbeat packets within 1 hour. You can call the UninstallBackupClients operation to uninstall a Cloud Backup client. Then, the client becomes inactive.'."\n" + ."\n" + .'- When you perform this operation, resources that are associated with the client are also deleted, including:'."\n" + ."\n" + .' - Backup plans'."\n" + ."\n" + .' - Backup jobs'."\n" + ."\n" + .' - Snapshots', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteBackupClient'], + ], + ], + 'ramActions' => [ [ - 'name' => 'DataSourceIds', - 'in' => 'formData', - 'style' => 'json', - 'schema' => [ - 'description' => 'The IDs of the data sources that you want to disassociate from the backup policy.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the data source that you want to disassociate from the backup policy.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'i-2ze************quf', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:DeleteBackupClient', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], - 'required' => false, ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","type":"json"}]', + ], + 'DeleteBackupClientResource' => [ + 'summary' => 'Deletes the resources of a backup client.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'SourceType', + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'high', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREhbr3BJQCT'], + ], + 'parameters' => [ + [ + 'name' => 'ClientIds', 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the data source. Valid values:'."\n" - ."\n" - .'* **UDM_ECS**: ECS instance backup'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'UDM_ECS', - ], + 'style' => 'json', + 'schema' => ['description' => 'A list of client IDs. The list can contain up to 100 client IDs.', 'type' => 'object', 'required' => true, 'docRequired' => true, 'title' => '', 'example' => '["c-*********************"]'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'DeletePolicyBindingResponse', - 'description' => 'DeletePolicyBindingResponse'."\n", 'type' => 'object', 'properties' => [ - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '3E961A5E-C5C6-566D-BFC3-0362A6A52EBA', - ], + 'Code' => ['description' => 'The return code. A value of 200 indicates success.', 'type' => 'string', 'title' => '', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request is successful, \\`successful\\` is returned. If the request fails, an error message is returned.', 'type' => 'string', 'title' => '', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'title' => '', 'example' => 'true'], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"3E961A5E-C5C6-566D-BFC3-0362A6A52EBA\\"\\n}","type":"json"}]', - 'title' => 'DeletePolicyBinding', - ], - 'UpdatePolicyBinding' => [ - 'methods' => [ - 'post', - 'get', + 'title' => 'DeleteBackupClientResource', + 'description' => 'This operation does not delete the backup client. It only deletes the resources of the backup client, such as backup plans, backup jobs, and snapshots.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteBackupClientResource'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:DeleteBackupClientResource', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","type":"json"}]', + ], + 'DeleteBackupPlan' => [ + 'summary' => 'Deletes a backup plan.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '95465', + 'abilityTreeNodes' => ['FEATUREhbr56LH1C', 'FEATUREhbrS7MI6C', 'FEATUREhbrFWIWBG', 'FEATUREhbrAW9I1R', 'FEATUREhbrB1KQ9G', 'FEATUREhbrQ3MV3B', 'FEATUREhbr3BJQCT'], ], 'parameters' => [ [ - 'name' => 'PolicyId', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The ID of the backup policy.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'po-000************ky9', - ], + 'name' => 'PlanId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the backup plan.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'title' => '', 'example' => 'plan-*********************'], ], [ - 'name' => 'DataSourceId', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The ID of the data source.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'i-bp1************dtv', - ], + 'name' => 'VaultId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the backup vault. This parameter is required if the SourceType parameter is not set to UDM\\_ECS.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'title' => '', 'example' => 'v-*********************'], ], [ 'name' => 'SourceType', 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the data source. Valid values:'."\n" - ."\n" - .'* **UDM_ECS**: ECS instance backup'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'UDM_ECS', - ], + 'schema' => ['description' => 'The type of the data source. Valid values:'."\n" + ."\n" + .'- **ECS\\_FILE**: Backs up Elastic Compute Service (ECS) files.'."\n" + ."\n" + .'- **OSS**: Backs up Object Storage Service (OSS) buckets.'."\n" + ."\n" + .'- **NAS**: Backs up Network Attached Storage (NAS) file systems.'."\n" + ."\n" + .'- **UDM\\_ECS**: Backs up entire ECS instances.'."\n" + ."\n" + .'- **OTS**: Backs up Tablestore instances.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'ECS_FILE'], ], [ - 'name' => 'PolicyBindingDescription', + 'name' => 'RequireNoRunningJobs', 'in' => 'query', - 'schema' => [ - 'description' => 'The description of the association.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'po-000************5xx-i-2ze************nw4', - ], + 'schema' => ['description' => 'Specifies whether to prevent the deletion of the backup plan if backup jobs are running.', 'type' => 'boolean', 'required' => false, 'title' => '', 'example' => 'false'], ], [ - 'name' => 'Disabled', + 'name' => 'Edition', 'in' => 'query', + 'schema' => ['type' => 'string', 'title' => '', 'description' => 'The edition type. Valid values are BASIC and STANDARD. The default value is STANDARD.', 'required' => false, 'example' => 'STANDARD'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'Specifies whether to disable the backup policy for the data source. Valid values:'."\n" - ."\n" - .'* true: disables the backup policy for the data source'."\n" - .'* false: enables the backup policy for the data source'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request was successful.', 'type' => 'string', 'title' => '', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request is successful, \\`successful\\` is returned. If the request fails, an error message is returned.', 'type' => 'string', 'title' => '', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'title' => '', 'example' => 'true'], + ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'DeleteBackupPlan', + 'description' => '- Deleting a backup plan also deletes the associated backup jobs.'."\n" + ."\n" + .'- Deleting a backup plan does not delete existing snapshots.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteBackupPlan'], + ], + ], + 'ramActions' => [ [ - 'name' => 'Source', - 'in' => 'query', - 'schema' => [ - 'description' => '* If the SourceType parameter is set to **OSS**, set the Source parameter to the prefix of the path to the folder that you want to back up. If you do not specify the Source parameter, the entire bucket (root directory) is backed up.'."\n" - .'* If the SourceType parameter is set to **ECS_FILE** or **File**, set the Source parameter to the path to the files that you want to back up. If you do not specify the Source parameter, all paths backed up.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'backup/', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:DeleteBackupPlan', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], + ], + ], + 'DeleteClient' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'Include', - 'in' => 'query', - 'schema' => [ - 'description' => 'This parameter is required only if you set the **SourceType** parameter to **ECS_FILE** or **File**. This parameter specifies the type of files to be backed up. All files of the specified type are backed up. The value can be up to 255 characters in length.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '[\\"*.doc\\",\\"*.xltm\\"]', - ], + 'AK' => [], ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREhbrI97IXK'], + ], + 'parameters' => [ [ - 'name' => 'Exclude', + 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'This parameter is required only if you set the **SourceType** parameter to **ECS_FILE** or **File**. This parameter specifies the type of files that do not need to be backed up. No files of the specified type are backed up. The value can be up to 255 characters in length.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '[\\"*.doc\\",\\"*.xltm\\"]', - ], + 'schema' => ['description' => 'The ID of the backup repository.', 'type' => 'string', 'required' => false, 'example' => 'v-000************gs3', 'title' => ''], ], [ - 'name' => 'SpeedLimit', + 'name' => 'ClientId', 'in' => 'query', - 'schema' => [ - 'description' => 'This parameter is required only if you set the **SourceType** parameter to **ECS_FILE** or **File**. This parameter specifies the throttling rules. Format: `{start}{end}{bandwidth}`. Separate multiple throttling rules with vertical bars (|). The time ranges of the throttling rules cannot overlap.'."\n" - ."\n" - .'* **start**: the start hour.'."\n" - .'* **end**: the end hour.'."\n" - .'* **bandwidth**: the bandwidth. Unit: KB/s.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '0:24:5120', - ], + 'schema' => ['description' => 'The ID of the client.', 'type' => 'string', 'required' => false, 'example' => 'c-000************f3h', 'title' => ''], ], [ - 'name' => 'AdvancedOptions', + 'name' => 'ResourceGroupId', 'in' => 'query', - 'style' => 'json', + 'schema' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'required' => false, 'example' => 'rg-acf************kwy', 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The advanced options.'."\n", 'type' => 'object', 'properties' => [ - 'UdmDetail' => [ - 'description' => 'The details about Elastic Compute Service (ECS) instance backup.'."\n", - 'type' => 'object', - 'properties' => [ - 'ExcludeDiskIdList' => [ - 'description' => 'The IDs of the disks that do not need to be protected. If the DiskIdList parameter is not empty, this parameter is ignored.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the disk that does not need to be protected.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'd-bp1************apo', - ], - 'required' => false, - ], - 'DiskIdList' => [ - 'description' => 'The IDs of the disks that need to be protected. If all disks need to be protected, this parameter is empty.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the disk that needs to be protected.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'd-bp1************apo', - ], - 'required' => false, - ], - 'SnapshotGroup' => [ - 'description' => 'Specifies whether to create a snapshot-consistent group. You can create a snapshot-consistent group only if all disks are Enterprise SSDs (ESSDs).'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - 'AppConsistent' => [ - 'description' => 'Specifies whether to enable application consistency. You can enable application consistency only if all disks are ESSDs.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], - 'RamRoleName' => [ - 'description' => 'This parameter is required only if you set the **AppConsistent** parameter to **true**. This parameter specifies the name of the Resource Access Management (RAM) role that is required to create application-consistent snapshots.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'AliyunECSInstanceForHbrRole', - ], - 'PreScriptPath' => [ - 'description' => 'This parameter is required only if you set the **AppConsistent** parameter to **true**. This parameter specifies the path of the pre-freeze scripts that are executed before application-consistent snapshots are created.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '/tmp/prescript.sh', - ], - 'PostScriptPath' => [ - 'description' => 'This parameter is required only if you set the **AppConsistent** parameter to **true**. This parameter specifies the path of the post-thaw scripts that are executed after application-consistent snapshots are created.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '/tmp/postscript.sh', - ], - 'EnableFsFreeze' => [ - 'description' => 'This parameter is required only if you set the **AppConsistent** parameter to **true**. This parameter specifies whether to enable Linux fsfreeze to put file systems into the read-only state before application-consistent snapshots are created. Default value: true.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - 'TimeoutInSeconds' => [ - 'description' => 'This parameter is required only if you set the **AppConsistent** parameter to **true**. This parameter specifies the I/O freeze timeout period. Default value: 30. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '30', - ], - 'EnableWriters' => [ - 'description' => 'This parameter is required only if you set the **AppConsistent** parameter to **true**. This parameter specifies whether to create application-consistent snapshots. Valid values:'."\n" - ."\n" - .'* true: creates application-consistent snapshots'."\n" - .'* false: creates file system-consistent snapshots'."\n" - ."\n" - .'Default value: true.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - ], - 'required' => false, - ], - 'OssDetail' => [ - 'description' => 'The details about Object Storage Service (OSS) backup.'."\n", - 'type' => 'object', - 'properties' => [ - 'InventoryId' => [ - 'description' => 'The name of the OSS inventory. If this parameter is not empty, the OSS inventory is used for performance optimization.'."\n" - ."\n" - .'* If you want to back up more than 100 million OSS objects, we recommend that you use inventory lists to accelerate incremental backup. Storage fees for inventory lists are included into your OSS bills.'."\n" - .'* A certain amount of time is required for OSS to generate inventory lists. Before inventory lists are generated, OSS objects may fail to be backed up. In this case, you can back up the OSS objects in the next backup cycle.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '30663060', - ], - 'InventoryCleanupPolicy' => [ - 'description' => 'Specifies whether the system deletes the inventory lists when a backup is completed. This parameter is valid only when OSS inventories are used. Valid values:'."\n" - ."\n" - .'* **NO_CLEANUP**: does not delete inventory lists.'."\n" - .'* **DELETE_CURRENT**: deletes the current inventory list.'."\n" - .'* **DELETE_CURRENT_AND_PREVIOUS**: deletes all inventory lists.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'NO_CLEANUP', - ], - 'IgnoreArchiveObject' => [ - 'title' => '不在任务统计和失败文件列表中提示归档型对象', - 'description' => 'Do not prompt for archival type objects in task statistics and failed file lists.', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - ], - 'required' => false, - ], - 'CommonFileSystemDetail' => [ - 'description' => 'The details about large-scale file system backup.'."\n", - 'type' => 'object', - 'properties' => [ - 'FullOnIncrementFail' => [ - 'description' => 'Specifies whether the system performs full backup if incremental backup fails. Valid values:'."\n" - ."\n" - .'* **true**: The system performs full backup if incremental backup fails.'."\n" - .'* **false**: The system does not perform full backup if incremental backup fails.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], - 'FetchSliceSize' => [ - 'description' => 'The size of backup shards (the number of files).'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '100000', - ], - ], - 'required' => false, - ], + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request was successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The returned message. If the request is successful, \\`successful\\` is returned. If the request fails, an error message is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'C51A9094-64B7-5DC0-B9FE-5FC1AC7E081D', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + ], + 'title' => 'DeleteClient', + 'summary' => 'Deletes a client.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteClient'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:DeleteClient', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], - 'required' => false, ], ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"C51A9094-64B7-5DC0-B9FE-5FC1AC7E081D\\",\\n \\"Success\\": true\\n}","type":"json"}]', + ], + 'DeleteContainerCluster' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'abilityTreeCode' => '95472', + 'abilityTreeNodes' => ['FEATUREhbrAL60OZ'], + ], + 'parameters' => [ + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => ['description' => 'The cluster ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cc-0005**********hhjw', 'title' => ''], + ], + [ + 'name' => 'Force', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to forcibly delete active container backup clients.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], + ], + ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'UpdatePolicyBindingResponse', - 'description' => 'UpdatePolicyBindingResponse'."\n", 'type' => 'object', 'properties' => [ - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => 'B6F24C46-54B9-519B-9AB8-A8988D705E67', - ], + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request was successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'EB526A5D-1FE2-51C1-B790-1732C1DBA969', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'eventInfo' => [ - 'enable' => false, - 'eventNames' => [], + 'title' => 'DeleteContainerCluster', + 'summary' => 'Unregisters a container cluster record in Cloud Backup. After you unregister the cluster, you cannot recover backups of the cluster.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"B6F24C46-54B9-519B-9AB8-A8988D705E67\\"\\n}","type":"json"}]', - 'title' => 'UpdatePolicyBinding', - 'summary' => 'Modifies the association between a backup policy and a data source.', + 'ramActions' => [], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"EB526A5D-1FE2-51C1-B790-1732C1DBA969\\",\\n \\"Success\\": true\\n}","type":"json"}]', ], - 'DescribePolicyBindings' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DeleteCrossAccount' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', - 'abilityTreeCode' => '136855', - 'abilityTreeNodes' => [ - 'FEATUREhbr56LH1C', - 'FEATUREhbrS7MI6C', - 'FEATUREhbrFWIWBG', - 'FEATUREhbrB1KQ9G', - 'FEATUREhbrQ3MV3B', - 'FEATUREhbr3BJQCT', - 'FEATUREhbrF83GXN', - ], + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '137630', + 'abilityTreeNodes' => ['FEATUREhbrB08D1M'], ], 'parameters' => [ [ - 'name' => 'NextToken', - 'in' => 'formData', - 'schema' => [ - 'description' => 'Token required to fetch the next page of policy and data source associations.', - 'type' => 'string', - 'required' => false, - 'example' => 'caeba0bbb2be03f84eb48b699f0a', - ], + 'name' => 'CrossAccountUserId', + 'in' => 'query', + 'schema' => ['description' => 'The UID of the account to back up.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1841xxxxx3649795', 'title' => ''], ], [ - 'name' => 'MaxResults', - 'in' => 'formData', + 'name' => 'CrossAccountRoleName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the RAM role of the account to back up. This parameter is required when you configure cross-account backup by assuming a RAM role.', 'type' => 'string', 'required' => true, 'example' => 'hbrcrossrole', 'title' => ''], + ], + [ + 'name' => 'CrossAccountType', + 'in' => 'query', + 'schema' => ['description' => 'The type of cross-account backup. Valid values:'."\n" + ."\n" + .'- **CROSS\\_ACCOUNT**: Cross-account backup is configured by assuming a RAM role.'."\n" + ."\n" + .'- **CROSS\\_ACCOUNT\\_BY\\_RD**: Cross-account backup is configured based on a resource directory.', 'type' => 'string', 'required' => false, 'example' => 'CROSS_ACCOUNT', 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'Number of results per query.'."\n" - ."\n" - .'Range: 10~100. Default: 10.', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - 'default' => '10', + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request is successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The message returned. If the request is successful, \\`successful\\` is returned. If the request fails, an error message is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '921E9989-735C-5254-A29F-6B8A5DDC1ED1', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request is successful.'."\n" + ."\n" + .'- false: The request fails.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], + ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], + ], + 'title' => 'DeleteCrossAccount', + 'summary' => 'Deletes a cross-account management relationship.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"921E9989-735C-5254-A29F-6B8A5DDC1ED1\\",\\n \\"Success\\": true\\n}","type":"json"}]', + ], + 'DeleteHanaBackupPlan' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'PolicyId', - 'in' => 'formData', + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => ['operationType' => 'delete'], + 'parameters' => [ + [ + 'name' => 'VaultId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'required' => true, 'example' => 'v-0007o******1ssno'], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the SAP HANA instance.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cl-000br3******0ooy2'], + ], + [ + 'name' => 'PlanId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the backup plan.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'pl-00035lc8pwp1azdf3qku'], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the resource group.'."\n", 'type' => 'string', 'required' => false, 'example' => 'rg-acfm4ebtpkzx7zy'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'Policy ID.', - 'type' => 'string', - 'required' => false, - 'example' => 'po-000************hky', + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '071E4789-6256-526B-B22E-2A9CDDB9EB21'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], + ], + 'description' => '', ], ], + ], + 'title' => 'DeleteHanaBackupPlan', + 'summary' => 'Deletes an SAP HANA backup plan.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '200', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteHanaBackupPlan'], + ], + ], + 'ramActions' => [ [ - 'name' => 'DataSourceIds', - 'in' => 'formData', - 'style' => 'json', - 'schema' => [ - 'description' => 'List of data source IDs.', - 'type' => 'array', - 'items' => [ - 'description' => 'Data source ID.', - 'type' => 'string', - 'required' => false, - 'example' => 'i-uf6************68n', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:DeleteHanaBackupPlan', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], - 'required' => false, ], ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"071E4789-6256-526B-B22E-2A9CDDB9EB21\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteHanaBackupPlanResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>071E4789-6256-526B-B22E-2A9CDDB9EB21</RequestId>\\n <Success>true</Success>\\n</DeleteHanaBackupPlanResponse>","errorExample":""}]', + ], + 'DeleteHanaInstance' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => ['operationType' => 'delete'], + 'parameters' => [ [ - 'name' => 'SourceType', + 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'Data source type. Possible values:'."\n" - .'* **UDM_ECS**: Indicates ECS full machine backup.', - 'type' => 'string', - 'required' => false, - 'example' => 'UDM_ECS', - ], + 'schema' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'v-0008n2******ax3'], ], [ - 'name' => 'Filters', + 'name' => 'ClusterId', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'Query filters.', - 'type' => 'array', - 'items' => [ - 'description' => 'Query filters.', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => 'Key in the query filter. Possible values include:'."\n" - ."\n" - .'- **PolicyId**: Backup policy ID'."\n" - .'- **DataSourceId**: ECS instance ID'."\n" - .'- **DataSourceType**: Data source type', - 'type' => 'string', - 'required' => false, - 'example' => 'DataSourceType', - ], - 'Operator' => [ - 'description' => 'Matching method. Default is IN. This refers to the matching operation (Operator) supported by the Key and Value in the filter. Possible values include:'."\n" - ."\n" - .'- **EQUAL**: Equal to'."\n" - .'- **NOT_EQUAL**: Not equal to'."\n" - .'- **GREATER_THAN**: Greater than'."\n" - .'- **GREATER_THAN_OR_EQUAL**: Greater than or equal to'."\n" - .'- **LESS_THAN**: Less than'."\n" - .'- **LESS_THAN_OR_EQUAL**: Less than or equal to'."\n" - .'- **BETWEEN**: Range, where value is a JSON array `[lower_bound, upper_bound]`.'."\n" - .'- **IN**: In the set, where value is an array.', - 'type' => 'string', - 'required' => false, - 'example' => 'IN', - ], - 'Values' => [ - 'description' => 'Values to be matched in the query filter.', - 'type' => 'array', - 'items' => [ - 'description' => 'Values to be matched in the query filter.', - 'type' => 'string', - 'required' => false, - 'example' => 'UDM_ECS', - ], - 'required' => false, - 'maxItems' => 10, - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 100, - ], + 'schema' => ['description' => 'The ID of the SAP HANA instance.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cl-000g4z09******9cfc'], + ], + [ + 'name' => 'Sid', + 'in' => 'query', + 'schema' => ['description' => 'The security identifier (SID) of the SAP HANA database. You must specify a valid SID. The SID must be three characters in length and start with a letter. For more information, see [How to find sid user and instance number of HANA db?](https://answers.sap.com/questions/555192/how-to-find-sid-user-and-instance-number-of-hana-d.html?)'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'HXE'], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the resource group.'."\n", 'type' => 'string', 'required' => false, 'example' => 'rg-acfmwutpyat2kwy'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'DescribePolicyBindingsResponse', - 'description' => 'DescribePolicyBindingsResponse', 'type' => 'object', 'properties' => [ - 'PolicyBindings' => [ - 'description' => 'List of bound policies.', - 'type' => 'array', - 'items' => [ - 'description' => 'Details of the bound policy.', - 'type' => 'object', - 'properties' => [ - 'CreatedTime' => [ - 'description' => 'Creation time. UNIX timestamp, in seconds.', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1661399570', - ], - 'UpdatedTime' => [ - 'description' => 'Update time. UNIX timestamp, in seconds.', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1653611573', - ], - 'PolicyBindingId' => [ - 'description' => 'Bound policy ID.', - 'type' => 'string', - 'example' => 'pd-000************slc', - ], - 'PolicyBindingDescription' => [ - 'description' => 'Bound policy description.', - 'type' => 'string', - 'example' => 'po-000************eslc-i-uf6************y5g', - ], - 'PolicyId' => [ - 'description' => 'Policy ID.', - 'type' => 'string', - 'example' => 'po-000************56y', - ], - 'DataSourceId' => [ - 'description' => 'Data source ID.', - 'type' => 'string', - 'example' => 'i-8vb************5ly', - ], - 'Disabled' => [ - 'description' => 'Whether the policy is disbaled for this data source.'."\n" - .'- true: disabled'."\n" - .'- false: Not disabled', - 'type' => 'boolean', - 'example' => 'true', - ], - 'Source' => [ - 'description' => '- When **SourceType** is **OSS**, it indicates the prefix to be backed up. If not specified, it means backing up the entire root directory of the Bucket.'."\n" - .'- When **SourceType** is **ECS_FILE** or **File**, it indicates the file directory to be backed up. If not specified, it means backing up all directories.', - 'type' => 'string', - 'example' => 'backup/', - ], - 'Include' => [ - 'description' => 'This parameter is required only when **SourceType** is **ECS_FILE** or **File**. It specifies the file types to be backed up, and all files of these types will be backed up. Supports up to 255 characters.', - 'type' => 'string', - 'example' => '[\\"*.doc\\",\\"*.xltm\\"]', - ], - 'Exclude' => [ - 'description' => 'This parameter is required only when **SourceType** is **ECS_FILE** or **File**. It specifies the file types that should not be backed up, and all files of these types will be excluded. Supports up to 255 characters.', - 'type' => 'string', - 'example' => '[\\"*.doc\\",\\"*.xltm\\"]', - ], - 'SpeedLimit' => [ - 'description' => 'This parameter is required only when **SourceType** is **ECS_FILE** or **File**. It specifies the backup traffic control. The format is `{start}{end}{bandwidth}`. Multiple traffic control configurations are separated by commas, and the configured times must not overlap.'."\n" - ."\n" - .'- **start**: Start hour.'."\n" - .'- **end**: End hour.'."\n" - .'- **bandwidth**: Limit rate, in KB/s.', - 'type' => 'string', - 'example' => '0:24:10240', - ], - 'AdvancedOptions' => [ - 'description' => 'Advanced options.', - 'type' => 'object', - 'properties' => [ - 'UdmDetail' => [ - 'description' => 'Advanced options for full machine backup.', - 'type' => 'object', - 'properties' => [ - 'ExcludeDiskIdList' => [ - 'description' => 'List of disk IDs that do not need protection. This parameter is ignored if DiskIdList is not empty.', - 'type' => 'array', - 'items' => [ - 'description' => 'Disk ID that does not need protection.', - 'type' => 'string', - 'example' => 'd-bp1************apo'."\n", - ], - ], - 'DiskIdList' => [ - 'description' => 'List of disk IDs that need protection. This value is empty when protecting all disks.', - 'type' => 'array', - 'items' => [ - 'description' => 'Disk ID that needs protection.', - 'type' => 'string', - 'example' => 'd-bp1************apo'."\n", - ], - ], - 'SnapshotGroup' => [ - 'description' => 'Indicates whether to create a snapshot consistency group. Only supported when all disk types are ESSD.', - 'type' => 'boolean', - 'example' => 'true', - ], - 'AppConsistent' => [ - 'description' => '是否创建应用一致性。仅云盘类型全部为ESSD时,支持创建快照应用一致性。', - 'type' => 'boolean', - 'example' => 'false', - ], - 'RamRoleName' => [ - 'description' => 'This parameter is required when **AppConsistent** is **true**. It specifies the RAM role name needed for creating an application-consistent snapshot.', - 'type' => 'string', - 'example' => 'AliyunECSInstanceForHbrRole', - ], - 'PreScriptPath' => [ - 'description' => 'This parameter is required when **AppConsistent** is **true**. It specifies the path of the freeze script to be executed before creating an application-consistent snapshot.', - 'type' => 'string', - 'example' => '/tmp/prescript.sh', - ], - 'PostScriptPath' => [ - 'description' => 'This parameter is required when **AppConsistent** is **true**. It specifies the path of the unfreeze script to be executed after creating an application-consistent snapshot.', - 'type' => 'string', - 'example' => '/tmp/postscript.sh', - ], - 'EnableFsFreeze' => [ - 'description' => 'This parameter is required when **AppConsistent** is **true**. It indicates whether to use the Linux FsFreeze mechanism to ensure the file system is in a read-only consistent state before creating an application-consistent snapshot. The default value is true.', - 'type' => 'boolean', - 'example' => 'true', - ], - 'TimeoutInSeconds' => [ - 'description' => 'This parameter is required when **AppConsistent** is **true**. It specifies the IO freeze timeout duration. The default value is 30 seconds.', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '30', - ], - 'EnableWriters' => [ - 'description' => 'This parameter is required when **AppConsistent** is **true**. It determines whether to set an application-consistent snapshot:'."\n" - .'- **true**: Create an application-consistent snapshot'."\n" - .'- **false**: Create a file system-consistent snapshot'."\n" - ."\n" - .'The default value is true.', - 'type' => 'boolean', - 'example' => 'true', - ], - 'DestinationKmsKeyId' => [ - 'description' => 'The custom KMS key ID in the destination region. When this field is not empty and cross-region replication is enabled, the specified key will be used for encrypting the cross-region replication.', - 'type' => 'string', - 'example' => '4ed37b1e-da51-4187-aceb-9db4f9b7148b', - ], - ], - ], - 'OssDetail' => [ - 'description' => 'Advanced options for OSS backup.', - 'type' => 'object', - 'properties' => [ - 'InventoryId' => [ - 'description' => 'The name of the OSS inventory. If this value is not empty, the OSS inventory will be used for performance optimization.'."\n" - .'- It is recommended to use an inventory for backing up more than 100 million OSS objects to improve incremental performance. Storage costs for the inventory files are charged separately by the OSS service.'."\n" - .'- The generation of the OSS inventory file takes time, and the backup may fail before the inventory file is generated. You can wait for the next cycle to execute.', - 'type' => 'string', - 'example' => 'inventory_test', - ], - 'InventoryCleanupPolicy' => [ - 'description' => 'Whether to delete the inventory file after the backup. This is only effective when using an OSS inventory. Supported values:'."\n" - .'- **NO_CLEANUP**: Do not delete.'."\n" - .'- **DELETE_CURRENT**: Delete the current file.'."\n" - .'- **DELETE_CURRENT_AND_PREVIOUS**: Delete all files.', - 'type' => 'string', - 'example' => 'DELETE_CURRENT_AND_PREVIOUS', - ], - 'IgnoreArchiveObject' => [ - 'title' => '不在任务统计和失败文件列表中提示归档型对象', - 'description' => 'Do not prompt for archive-type objects in the task statistics and failed file list.', - 'type' => 'boolean', - 'example' => 'true', - ], - ], - ], - 'FileDetail' => [ - 'description' => 'Advanced options for file backup.', - 'type' => 'object', - 'properties' => [ - 'UseVSS' => [ - 'description' => 'Whether to enable VSS (Windows) functionality. Values:'."\n" - .'- **true**: Enable.'."\n" - .'- **false**: Disable.', - 'type' => 'boolean', - 'example' => 'false', - ], - 'AdvPolicy' => [ - 'description' => 'Whether to use advanced policies. Values:'."\n" - .'- **true**: Use.'."\n" - .'- **false**: Do not use.', - 'type' => 'boolean', - 'example' => 'false', - ], - ], - ], - 'CommonNasDetail' => [ - 'description' => 'Advanced options for local NAS.', - 'type' => 'object', - 'properties' => [ - 'FullOnIncrementFail' => [ - 'description' => 'Whether to switch to a full backup when an incremental backup fails. Values:'."\n" - .'- **true**: Switch to full backup on failure.'."\n" - .'- **false**: Do not switch to full backup on failure.', - 'type' => 'boolean', - 'example' => 'true', - ], - 'FetchSliceSize' => [ - 'description' => 'Backup slice size (number of files).', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '100000', - ], - 'ClientId' => [ - 'description' => 'Backup client ID.', - 'type' => 'string', - 'example' => 'c-0001eg6mcvjs93f46s2d', - ], - 'ClusterId' => [ - 'description' => 'Client group ID.', - 'type' => 'string', - 'example' => 'cl-000gkcofngi04j6k680a', - ], - ], - ], - 'CommonFileSystemDetail' => [ - 'description' => 'Advanced options for large-scale file system backup.', - 'type' => 'object', - 'properties' => [ - 'FullOnIncrementFail' => [ - 'description' => 'Whether to switch to a full backup when an incremental backup fails. Values:'."\n" - .'- **true**: Switch to full backup on failure.'."\n" - .'- **false**: Do not switch to full backup on failure.', - 'type' => 'boolean', - 'example' => 'true', - ], - 'FetchSliceSize' => [ - 'description' => 'Backup shard size (number of files).', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '100000', - ], - ], - ], - ], - ], - 'SourceType' => [ - 'description' => 'Data source type, with the value range:'."\n" - .'- **UDM_ECS**: indicates ECS full machine backup', - 'type' => 'string', - 'example' => 'UDM_ECS', - ], - 'CrossAccountType' => [ - 'description' => 'Cross-account backup type. Supported values: '."\n" - .'- SELF_ACCOUNT: Backup within the same account'."\n" - .'- CROSS_ACCOUNT: Cross-account backup', - 'type' => 'string', - 'example' => 'CROSS_ACCOUNT', - ], - 'CrossAccountUserId' => [ - 'description' => 'The ID of the original account for cross-account backup.', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1480************', - ], - 'CrossAccountRoleName' => [ - 'description' => 'The name of the role created in the RAM of the original account for cross-account backup.', - 'type' => 'string', - 'example' => 'hbrcrossrole', - ], - 'CreatedByTag' => [ - 'description' => 'Whether the resource is automatically associated through the backup policy resource tag.', - 'type' => 'boolean', - 'example' => 'false', - ], - 'HitTags' => [ - 'description' => 'Hit tag rules.', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => 'Tag key.', - 'type' => 'string', - 'example' => 'env', - ], - 'Value' => [ - 'description' => 'Tag value.', - 'type' => 'string', - 'example' => 'prod', - ], - 'Operator' => [ - 'description' => 'Tag matching rule.'."\n" - .'- **EQUAL**: Matches both the tag key and tag value.'."\n" - .'- **NOT**: Matches the tag key but not the tag value.', - 'type' => 'string', - 'example' => 'EQUAL', - ], - ], - ], - ], - ], - ], - ], - 'NextToken' => [ - 'description' => 'The token required to fetch the next page of policy and data source bindings.', - 'type' => 'string', - 'example' => 'caeba0bbb2be03f84eb48b699f0a', - ], - 'MaxResults' => [ - 'description' => 'The number of results per query.'."\n" - ."\n" - .'Range: 10~100. Default: 10.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'TotalCount' => [ - 'description' => 'Total number of records.', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '38', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful.'."\n" - ."\n" - .'- true: Success'."\n" - .'- false: Failure', - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'Return code, 200 indicates success.', - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'Description of the return message. A successful response usually returns \'successful\', while an error will return a corresponding error message.', - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'Request ID.', - 'type' => 'string', - 'example' => '5225929A-4EBD-55EE-9FE1-4A130E582A76', - ], + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '28EAF89A-E0D8-5C04-9A1D-B373B29BCFB9'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], ], + 'description' => '', ], ], ], - 'eventInfo' => [ - 'enable' => false, - 'eventNames' => [], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PolicyBindings\\": [\\n {\\n \\"CreatedTime\\": 1661399570,\\n \\"UpdatedTime\\": 1653611573,\\n \\"PolicyBindingId\\": \\"pd-000************slc\\",\\n \\"PolicyBindingDescription\\": \\"po-000************eslc-i-uf6************y5g\\",\\n \\"PolicyId\\": \\"po-000************56y\\",\\n \\"DataSourceId\\": \\"i-8vb************5ly\\",\\n \\"Disabled\\": true,\\n \\"Source\\": \\"backup/\\",\\n \\"Include\\": \\"[\\\\\\\\\\\\\\"*.doc\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"*.xltm\\\\\\\\\\\\\\"]\\",\\n \\"Exclude\\": \\"[\\\\\\\\\\\\\\"*.doc\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"*.xltm\\\\\\\\\\\\\\"]\\",\\n \\"SpeedLimit\\": \\"0:24:10240\\",\\n \\"AdvancedOptions\\": {\\n \\"UdmDetail\\": {\\n \\"ExcludeDiskIdList\\": [\\n \\"d-bp1************apo\\\\n\\"\\n ],\\n \\"DiskIdList\\": [\\n \\"d-bp1************apo\\\\n\\"\\n ],\\n \\"SnapshotGroup\\": true,\\n \\"AppConsistent\\": false,\\n \\"RamRoleName\\": \\"AliyunECSInstanceForHbrRole\\",\\n \\"PreScriptPath\\": \\"/tmp/prescript.sh\\",\\n \\"PostScriptPath\\": \\"/tmp/postscript.sh\\",\\n \\"EnableFsFreeze\\": true,\\n \\"TimeoutInSeconds\\": 30,\\n \\"EnableWriters\\": true,\\n \\"DestinationKmsKeyId\\": \\"4ed37b1e-da51-4187-aceb-9db4f9b7148b\\"\\n },\\n \\"OssDetail\\": {\\n \\"InventoryId\\": \\"inventory_test\\",\\n \\"InventoryCleanupPolicy\\": \\"DELETE_CURRENT_AND_PREVIOUS\\",\\n \\"IgnoreArchiveObject\\": true\\n },\\n \\"FileDetail\\": {\\n \\"UseVSS\\": false,\\n \\"AdvPolicy\\": false\\n },\\n \\"CommonNasDetail\\": {\\n \\"FullOnIncrementFail\\": true,\\n \\"FetchSliceSize\\": 100000,\\n \\"ClientId\\": \\"c-0001eg6mcvjs93f46s2d\\",\\n \\"ClusterId\\": \\"cl-000gkcofngi04j6k680a\\"\\n },\\n \\"CommonFileSystemDetail\\": {\\n \\"FullOnIncrementFail\\": true,\\n \\"FetchSliceSize\\": 100000\\n }\\n },\\n \\"SourceType\\": \\"UDM_ECS\\",\\n \\"CrossAccountType\\": \\"CROSS_ACCOUNT\\",\\n \\"CrossAccountUserId\\": 0,\\n \\"CrossAccountRoleName\\": \\"hbrcrossrole\\",\\n \\"CreatedByTag\\": false,\\n \\"HitTags\\": [\\n {\\n \\"Key\\": \\"env\\",\\n \\"Value\\": \\"prod\\",\\n \\"Operator\\": \\"EQUAL\\"\\n }\\n ]\\n }\\n ],\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a\\",\\n \\"MaxResults\\": 10,\\n \\"TotalCount\\": 38,\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"5225929A-4EBD-55EE-9FE1-4A130E582A76\\"\\n}","type":"json"}]', - 'title' => 'DescribePolicyBindings', - 'summary' => 'Query one or more data sources bound to a policy, or query one or more policies bound to a data source.', - 'translator' => 'machine', - ], - 'ExecutePolicyV2' => [ - 'summary' => 'Execute a policy for one or all bound data sources.', - 'methods' => [ - 'post', - 'get', + 'title' => 'DeleteHanaInstance', + 'summary' => 'Deletes an SAP HANA instance.', + 'description' => 'If you delete an SAP HANA instance, the existing backup data is also deleted and the running backup and restore jobs fail to be completed. Before you delete the SAP HANA instance, make sure that you no longer need the backup data of the instance and no backup or restore jobs are running for the instance. To delete an SAP HANA instance, you must specify the security identifier (SID) of the instance. The SID is three characters in length and starts with a letter. For more information, see [How to find sid user and instance number of HANA db?](https://answers.sap.com/questions/555192/how-to-find-sid-user-and-instance-number-of-hana-d.html?)'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '200', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteHanaInstance'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:DeleteHanaInstance', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"28EAF89A-E0D8-5C04-9A1D-B373B29BCFB9\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteHanaInstanceResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>28EAF89A-E0D8-5C04-9A1D-B373B29BCFB9</RequestId>\\n <Success>true</Success>\\n</DeleteHanaInstanceResponse>","errorExample":""}]', + ], + 'DeletePolicyBinding' => [ + 'summary' => 'Detaches a data source from a policy. After the data source is detached, the policy no longer protects it. Use this operation with caution.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -6108,141 +3963,208 @@ 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', + 'operationType' => 'delete', 'riskType' => 'none', - 'chargeType' => 'paid', - 'abilityTreeCode' => '163243', - 'abilityTreeNodes' => [ - 'FEATUREhbr4JQRTT', - ], + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREhbrS7MI6C', 'FEATUREhbrQ3MV3B', 'FEATUREhbrB1KQ9G', 'FEATUREhbr3BJQCT', 'FEATUREhbr56LH1C', 'FEATUREhbrFWIWBG', 'FEATUREhbr9ZUQY7', 'FEATUREhbrAW9I1R'], ], 'parameters' => [ [ 'name' => 'PolicyId', 'in' => 'formData', - 'schema' => [ - 'description' => 'Policy ID.', - 'type' => 'string', - 'required' => true, - 'example' => 'po-000************hky', - ], + 'schema' => ['description' => 'The policy ID.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => 'po-000************hgp'], ], [ - 'name' => 'DataSourceId', + 'name' => 'DataSourceIds', 'in' => 'formData', + 'style' => 'json', 'schema' => [ - 'description' => 'Data source ID.', - 'type' => 'string', + 'description' => 'The IDs of the data sources to detach from the policy.', + 'type' => 'array', + 'items' => ['description' => 'The ID of a data source to detach from the policy.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'i-2ze************quf'], 'required' => false, - 'example' => 'i-bp1************dtv', + 'title' => '', + 'example' => '', ], ], [ 'name' => 'SourceType', 'in' => 'query', + 'schema' => ['description' => 'The type of the data source. Valid values:'."\n" + ."\n" + .'- **UDM\\_ECS**: indicates an ECS instance backup.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'UDM_ECS'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'Data source type, with the value range as follows:'."\n" - ."\n" - .'- **UDM_ECS**: Represents ECS full machine backup.', - 'type' => 'string', - 'required' => false, - 'example' => 'UDM_ECS', + 'title' => 'DeletePolicyBindingResponse', + 'description' => 'DeletePolicyBindingResponse', + 'type' => 'object', + 'properties' => [ + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'title' => '', 'example' => 'true'], + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request was successful.', 'type' => 'string', 'title' => '', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request is successful, "successful" is returned. If the request fails, an error message is returned.', 'type' => 'string', 'title' => '', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '3E961A5E-C5C6-566D-BFC3-0362A6A52EBA'], + ], + 'example' => '', ], ], + ], + 'title' => 'DeletePolicyBinding', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeletePolicyBinding'], + ], + ], + 'ramActions' => [ [ - 'name' => 'RuleId', - 'in' => 'query', - 'schema' => [ - 'description' => 'Rule ID, limited to executing rules of **RuleType** **BACKUP**.', - 'type' => 'string', - 'required' => true, - 'example' => 'rule-0002*****ux8', + 'operationType' => '', + 'ramAction' => [ + 'action' => 'hbr:DeletePolicyBinding', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"3E961A5E-C5C6-566D-BFC3-0362A6A52EBA\\"\\n}","type":"json"}]', + ], + 'DeletePolicyV2' => [ + 'summary' => 'Deletes a policy.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREhbrS7MI6C', 'FEATUREhbrQ3MV3B', 'FEATUREhbrB1KQ9G', 'FEATUREhbr3BJQCT', 'FEATUREhbr56LH1C', 'FEATUREhbrFWIWBG', 'FEATUREhbr9ZUQY7', 'FEATUREhbrAW9I1R'], + ], + 'parameters' => [ + [ + 'name' => 'PolicyId', + 'in' => 'formData', + 'schema' => ['description' => 'The policy ID.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'po-000************2l6'], + ], + ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'ExecutePolicyResponse', - 'description' => 'ExecutePolicyResponse', + 'title' => 'DeletePolicyResponse', + 'description' => 'DeletePolicyResponse', 'type' => 'object', 'properties' => [ - 'Success' => [ - 'description' => 'Indicates whether the request was successful.'."\n" - ."\n" - .'- true: Success'."\n" - .'- false: Failure', - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'Return code, 200 indicates success.', - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'Description of the return message, usually returns \'successful\' on success, and corresponding error messages on failure.', - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'Request ID.', - 'type' => 'string', - 'example' => 'F4EEB401-DD21-588D-AE3B-1E835C7655E1', - ], - 'JobId' => [ - 'description' => 'Backup job ID.', - 'type' => 'string', - 'example' => 'job-*********************', - ], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'title' => '', 'example' => 'true'], + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request was successful.', 'type' => 'string', 'title' => '', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, \\`successful\\` is returned. If the request failed, an error message is returned.', 'type' => 'string', 'title' => '', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '33AA3AAE-89E1-5D3A-A51D-0C0A80850F68'], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'DeletePolicyV2', + 'description' => 'When you delete a policy, it is detached from all associated data sources. Proceed with caution.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeletePolicyV2'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => '', + 'ramAction' => [ + 'action' => 'hbr:DeletePolicyV2', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"F4EEB401-DD21-588D-AE3B-1E835C7655E1\\",\\n \\"JobId\\": \\"job-*********************\\"\\n}","type":"json"}]', - 'title' => 'Execute Policy', - 'translator' => 'machine', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"33AA3AAE-89E1-5D3A-A51D-0C0A80850F68\\"\\n}","type":"json"}]', ], - 'DeleteBackupClient' => [ - 'summary' => 'Deletes a Cloud Backup client.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DeleteSnapshot' => [ + 'summary' => 'Deletes a backup snapshot.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', - 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREhbr3BJQCT', - 'FEATUREhbrS7MI6C', - ], + 'chargeType' => 'paid', + 'abilityTreeCode' => '95482', + 'abilityTreeNodes' => ['FEATUREhbr56LH1C', 'FEATUREhbrFWIWBG', 'FEATUREhbrB1KQ9G', 'FEATUREhbr3BJQCT', 'FEATUREhbrS7MI6C', 'FEATUREhbrQ3MV3B'], ], 'parameters' => [ [ + 'name' => 'Token', + 'in' => 'query', + 'schema' => ['description' => 'The token used for the deletion.', 'type' => 'string', 'required' => false, 'example' => '02WJDOE7', 'title' => ''], + ], + [ + 'name' => 'VaultId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the backup repository.', 'type' => 'string', 'required' => false, 'example' => 'v-*********************', 'title' => ''], + ], + [ 'name' => 'ClientId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the Cloud Backup client.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'c-*********************', - ], + 'schema' => ['description' => 'The client ID. To delete an ECS File Backup snapshot, specify either this parameter or **InstanceId**.', 'type' => 'string', 'required' => false, 'example' => 'c-*********************', 'title' => ''], + ], + [ + 'name' => 'SnapshotId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the backup snapshot.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 's-*********************', 'title' => ''], + ], + [ + 'name' => 'SourceType', + 'in' => 'query', + 'schema' => ['description' => 'The type of the backup source. Valid values:'."\n" + ."\n" + .'- **ECS\\_FILE**: ECS File Backup snapshot.'."\n" + ."\n" + .'- **OSS**: OSS backup snapshot.'."\n" + ."\n" + .'- **NAS**: NAS backup snapshot.'."\n" + ."\n" + .'- **UDM\\_ECS**: ECS instance backup snapshot.', 'type' => 'string', 'required' => false, 'example' => 'ECS_FILE', 'title' => ''], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the ECS instance. To delete an ECS File Backup snapshot, specify either this parameter or **ClientId**.', 'type' => 'string', 'required' => false, 'example' => 'i-*********************', 'title' => ''], + ], + [ + 'name' => 'Force', + 'in' => 'query', + 'schema' => ['description' => 'This parameter is deprecated.', 'type' => 'boolean', 'example' => 'Deprecated.', 'deprecated' => true, 'required' => false, 'title' => ''], ], ], 'responses' => [ @@ -6250,133 +4172,113 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The return code. A value of 200 indicates success.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The returned message. If the request is successful, "successful" is returned. If the request fails, an error message is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteBackupClientResponse>\\n<Message>successful</Message>\\n<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n<Code>200</Code>\\n<Success>true</Success>\\n</DeleteBackupClientResponse>","errorExample":""}]', - 'title' => 'DeleteBackupClient', - 'description' => '* You cannot delete the active Cloud Backup clients that receive heartbeat packets within 1 hour. You can call the UninstallBackupClients operation to uninstall a Cloud Backup client. Then, the client becomes inactive.'."\n" - ."\n" - .'* When you perform this operation, resources that are associated with the client are also deleted, including:'."\n" - ."\n" - .' * Backup plans'."\n" - .' * Backup jobs'."\n" - .' * Snapshots'."\n", - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'DeleteBackupClientResource' => [ - 'summary' => 'Deletes the resources that are related to one or more HBR clients.', - 'methods' => [ - 'post', - 'get', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'DeleteSnapshot', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteSnapshot'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:DeleteSnapshot', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'translator' => 'machine', + ], + 'DeleteUdmDisk' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', - 'riskType' => 'high', + 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREhbr3BJQCT', - ], + 'abilityTreeCode' => '230674', + 'abilityTreeNodes' => ['FEATUREhbrB1KQ9G'], ], 'parameters' => [ [ - 'name' => 'ClientIds', + 'name' => 'DiskId', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'description' => 'The IDs of HBR clients. The value can be a JSON array that consists of up to 100 client IDs. Separate the IDs with commas (,).', - 'type' => 'object', - 'required' => true, - 'docRequired' => true, - 'example' => '["c-0007kyu045r0********", "c-000b6818umvo********"]', - ], + 'schema' => ['description' => 'The disk ID.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'd-bp15************xy70'], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'Id of the request'."\n", 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteBackupClientResourceResponse>\\n<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n<Message>successful</Message>\\n<Code>200</Code>\\n<Success>true</Success>\\n</DeleteBackupClientResourceResponse>","errorExample":""}]', - 'title' => 'DeleteBackupClientResource', - 'description' => 'This operation deletes only the resources that are related to HBR clients. The resources include backup plans, backup jobs, and backup snapshots. The operation does not delete HBR clients.'."\n", - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'UpdateClientSettings' => [ - 'methods' => [ - 'post', - 'get', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'DeleteUdmDisk', + 'summary' => 'Cancels a protected disk.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteUdmDisk'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:DeleteUdmDisk', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"Success\\": true\\n}","type":"json"}]', + ], + 'DeleteUdmEcsInstance' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -6385,184 +4287,166 @@ 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '95671', - 'abilityTreeNodes' => [ - 'FEATUREhbr9ZUQY7', - ], + 'operationType' => 'delete', + 'abilityTreeCode' => '95487', + 'abilityTreeNodes' => ['FEATUREhbrB1KQ9G'], ], 'parameters' => [ [ - 'name' => 'UseHttps', + 'name' => 'InstanceId', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to transmit the data on the data plane over HTTPS. Valid values:'."\n" - ."\n" - .'* true: Data is transmitted over HTTPS.'."\n" - .'* false: Data is transmitted over HTTP.'."\n", - 'type' => 'boolean', - 'required' => false, - 'docRequired' => true, - 'example' => 'false', - ], + 'schema' => ['description' => 'The ID of the ECS instance.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'i-2zed************tlrm'], ], - [ - 'name' => 'VaultId', - 'in' => 'query', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The ID of the backup vault. This parameter is required for the old HBR client.'."\n", - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 'v-*********************', + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '0497C0D3-82B5-56B2-8D64-D62E61B90E95'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], + ], + 'description' => '', ], ], - [ - 'name' => 'ClientId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the HBR client.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'c-*********************', - ], + ], + 'title' => 'DeleteUdmEcsInstance', + 'summary' => 'Stops protection for Elastic Compute Service (ECS) instance backup.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteUdmEcsInstance'], ], + ], + 'ramActions' => [ [ - 'name' => 'DataNetworkType', - 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the endpoint on the data plane. Valid values:'."\n" - ."\n" - .'* **PUBLIC**: Internet'."\n" - .'* **VPC**: virtual private cloud (VPC)'."\n" - .'* **CLASSIC**: classic network'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'VPC', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:DeleteUdmEcsInstance', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"0497C0D3-82B5-56B2-8D64-D62E61B90E95\\",\\n \\"Success\\": true\\n}","type":"json"}]', + ], + 'DeleteVault' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'MaxCpuCore', - 'in' => 'query', - 'schema' => [ - 'description' => 'The number of CPU cores used by a single backup job. The value 0 indicates that the number is unlimited.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '999', - 'minimum' => '0', - 'example' => '1', - ], + 'AK' => [], ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'delete', + 'abilityTreeNodes' => ['FEATUREhbrS7MI6C'], + ], + 'parameters' => [ [ - 'name' => 'MaxWorker', + 'name' => 'Token', 'in' => 'query', - 'schema' => [ - 'description' => 'The number of concurrent backup jobs. The value 0 indicates that the number is unlimited.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '999', - 'minimum' => '0', - 'example' => '1', - ], + 'schema' => ['description' => 'The token.'."\n", 'type' => 'string', 'required' => false, 'example' => 'caeba0bbb2be03f84eb48b699f0a*'], ], [ - 'name' => 'DataProxySetting', + 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The proxy configuration on the data plane. Valid values:'."\n" - ."\n" - .'* **DISABLE**: The proxy is not used.'."\n" - .'* **USE_CONTROL_PROXY** (default): The configuration is the same as that on the control plane.'."\n" - .'* **CUSTOM**: The configuration is customized (HTTP).'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'USE_CONTROL_PROXY', - 'enum' => [ - 'DISABLE', - 'USE_CONTROL_PROXY', - 'CUSTOM', - ], - ], + 'schema' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'required' => false, 'example' => 'v-*********************'], ], [ - 'name' => 'ProxyHost', + 'name' => 'ResourceGroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The custom host IP address of the proxy server on the data plane.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '192.168.11.100', - ], + 'schema' => ['description' => 'The ID of the resource group.'."\n", 'type' => 'string', 'required' => false, 'example' => 'rg-acfmoiyerpacj4q'], ], - [ - 'name' => 'ProxyPort', - 'in' => 'query', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The custom host port of the proxy server on the data plane.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '65536', - 'minimum' => '1', - 'example' => '3128', + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], + ], + 'description' => '', ], ], + ], + 'title' => 'DeleteVault', + 'summary' => 'Deletes a backup vault.', + 'description' => '* You cannot delete a backup vault within 2 hours after the backup vault is created or a backup vault that is in the INITIALIZING state.'."\n" + .'* After you delete a backup vault, all resources that are associated with the backup vault are deleted. The resources include the Cloud Backup client of the old version, backup plans, backup jobs, snapshots, and restore jobs.'."\n", + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteVault'], + ], + ], + 'ramActions' => [ [ - 'name' => 'ProxyUser', - 'in' => 'query', - 'schema' => [ - 'description' => 'The custom username of the proxy server on the data plane.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'user', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:DeleteVault', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteVaultResponse>\\n<Message>successful</Message>\\n<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n<Code>200</Code>\\n<Success>true</Success>\\n</DeleteVaultResponse>","errorExample":""}]', + ], + 'DeleteVaultReplication' => [ + 'summary' => 'Stops backup vault replication.', + 'path' => '', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'ProxyPassword', - 'in' => 'query', - 'schema' => [ - 'description' => 'The custom password of the proxy server on the data plane.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '******', - ], + 'AK' => [], ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '95458', + 'abilityTreeNodes' => ['FEATUREhbrGSUVI2'], + ], + 'parameters' => [ [ - 'name' => 'ResourceGroupId', + 'name' => 'ReplicationSourceVaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the resource group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rg-*********************', - ], + 'schema' => ['description' => 'The ID of the source backup vault.', 'type' => 'string', 'required' => true, 'example' => 'v-*********************', 'title' => ''], ], [ - 'name' => 'MaxMemory', + 'name' => 'ReplicationTargetVaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The maximum memory that can be used by the client. Unit: bytes. Only V2.13.0 and later are supported.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'maximum' => '1099511627776', - 'exclusiveMaximum' => false, - 'minimum' => '0', - 'example' => '4096', - ], + 'schema' => ['description' => 'The ID of the destination backup vault.', 'type' => 'string', 'required' => true, 'example' => 'r-*********************', 'title' => ''], ], [ - 'name' => 'AlertOnPartialComplete', + 'name' => 'ReplicationSourceRegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to generate alert for partially completed jobs. This parameter is valid only for on-premises file backup and ECS file backup.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => 'The ID of the source region. If you leave this parameter empty, the region where you call the API is used.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ @@ -6570,51 +4454,46 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C438054F-9088-5D1B-AED0-0EA86D9C65F4', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request is successful.'."\n" + ."\n" + .'- true: The request is successful.'."\n" + ."\n" + .'- false: The request fails.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request is successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The message returned. If the request is successful, `successful` is returned. If the request fails, an error message is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], ], - 'description' => '', + 'title' => '', + 'description' => 'The response object.', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateClientSettingsResponse>\\n<Message>successful</Message>\\n<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n<Code>200</Code>\\n<Success>true</Success>\\n</UpdateClientSettingsResponse>","errorExample":""}]', - 'title' => 'UpdateClientSettings', - 'summary' => 'Updates the configurations of an HBR client.', - 'description' => 'You can call this operation to update the configurations of both the old and new HBR clients.'."\n", - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'DescribeBackupClients' => [ - 'methods' => [ - 'post', - 'get', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'DeleteVaultReplication', + 'description' => 'You can call this method in the region of the destination backup vault.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:DeleteVaultReplication', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C438054F-9088-5D1B-AED0-0EA86D9C65F4\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\"\\n}","type":"json"}]', + ], + 'DescribeBackupClients' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -6625,82 +4504,54 @@ 'systemTags' => [ 'operationType' => 'get', 'abilityTreeCode' => '95500', - 'abilityTreeNodes' => [ - 'FEATUREhbr9ZUQY7', - ], + 'abilityTreeNodes' => ['FEATUREhbr9ZUQY7'], ], 'parameters' => [ [ 'name' => 'PageNumber', 'in' => 'query', - 'schema' => [ - 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '1', - 'example' => '1', - 'default' => '1', - ], + 'schema' => ['description' => 'The page number. Pages start from page 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'title' => '', 'example' => '1'], ], [ 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '100', - 'minimum' => '1', - 'example' => '10', - 'default' => '10', - ], + 'schema' => ['description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'title' => '', 'example' => '10'], ], [ 'name' => 'ClientType', 'in' => 'query', 'schema' => [ - 'description' => 'The type of the HBR client. Valid values:'."\n" + 'description' => 'The type of the backup client. Valid values:'."\n" + ."\n" + .'- **ECS\\_CLIENT**: an ECS file backup client.'."\n" ."\n" - .'* **ECS_CLIENT**: HBR client for Elastic Compute Service (ECS) file backup'."\n" - .'* **CONTAINER_CLIENT**: HBR client for container backup'."\n", + .'- **CONTAINER\\_CLIENT**: a container backup client.'."\n" + ."\n" + .'- **LOCAL\\_CLIENT**: a client for NAS backup, CPFS backup, data archiving, or data synchronization.', 'type' => 'string', 'required' => true, 'docRequired' => true, - 'enumValueTitles' => [ - 'CONTAINER_CLIENT' => 'CONTAINER_CLIENT', - 'LOCAL_CLIENT' => 'LOCAL_CLIENT', - 'ECS_CLIENT' => 'ECS_CLIENT', - ], + 'enumValueTitles' => ['CONTAINER_CLIENT' => 'CONTAINER\\_CLIENT', 'LOCAL_CLIENT' => 'LOCAL\\_CLIENT', 'ECS_CLIENT' => 'ECS\\_CLIENT'], + 'title' => '', 'example' => 'ECS_CLIENT', ], ], [ 'name' => 'ClusterId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the cluster for the backup.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cl-000ge4wa61b4d337xblq', - ], + 'schema' => ['description' => 'The ID of the backup cluster.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'cl-000ge4wa61b4d337xblq'], ], [ 'name' => 'ClientIds', 'in' => 'formData', 'style' => 'json', 'schema' => [ - 'description' => 'The IDs of HBR clients.'."\n", + 'description' => 'A list of backup client IDs.', 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the HBR client.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'c-*********************', - ], + 'items' => ['description' => 'The backup client ID.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'c-*********************'], 'required' => false, 'example' => '["c-*********************"]', + 'title' => '', ], ], [ @@ -6708,16 +4559,12 @@ 'in' => 'formData', 'style' => 'json', 'schema' => [ - 'description' => 'The IDs of ECS instances.'."\n", + 'description' => 'A list of ECS instance IDs.', 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the ECS instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'i-*********************', - ], + 'items' => ['description' => 'The ECS instance ID.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'i-*********************'], 'required' => false, 'example' => '["i-*********************"]', + 'title' => '', ], ], [ @@ -6725,73 +4572,54 @@ 'in' => 'formData', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The tags.'."\n", + 'description' => 'The tags that are added to the resource.', 'type' => 'array', 'items' => [ - 'description' => 'The tag information.'."\n", + 'description' => 'The tag information.', 'type' => 'object', 'properties' => [ - 'Key' => [ - 'description' => 'The tag key of the backup vault. Valid values of N: 1 to 20.'."\n" - ."\n" - .'* The tag key cannot start with `aliyun` or `acs:`.'."\n" - .'* The tag key cannot contain `http://` or `https://`.'."\n" - .'* The tag key cannot be an empty string.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'TestKey', - ], - 'Value' => [ - 'description' => 'The tag value of the backup vault. Valid values of N: 1 to 20.'."\n" - ."\n" - .'* The tag value cannot start with `aliyun` or `acs:`.'."\n" - .'* The tag value cannot contain `http://` or `https://`.'."\n" - .'* The tag value cannot be an empty string.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'TestValue', - ], + 'Key' => ['description' => 'The tag key of the repository. N can be an integer from 1 to 20.'."\n" + ."\n" + .'- The tag key cannot start with `aliyun` or `acs:`.'."\n" + ."\n" + .'- The tag key cannot contain `http://` or `https://`.'."\n" + ."\n" + .'- The tag key cannot be an empty string.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'TestKey'], + 'Value' => ['description' => 'The tag value of the repository. N can be an integer from 1 to 20.'."\n" + ."\n" + .'- The tag value cannot start with `aliyun` or `acs:`.'."\n" + ."\n" + .'- The tag value cannot contain `http://` or `https://`.'."\n" + ."\n" + .'- The tag value cannot be an empty string.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'TestValue'], ], 'required' => false, + 'title' => '', ], 'required' => false, 'example' => '33738719#', 'maxItems' => 21, + 'title' => '', ], ], [ 'name' => 'CrossAccountType', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether data is backed up within the same Alibaba Cloud account or across Alibaba Cloud accounts. Valid values:'."\n" - ."\n" - .'* SELF_ACCOUNT: Data is backed up within the same Alibaba Cloud account.'."\n" - .'* CROSS_ACCOUNT: Data is backed up across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'CROSS_ACCOUNT', - ], + 'schema' => ['description' => 'The type of the cross-account backup. Valid values:'."\n" + ."\n" + .'- SELF\\_ACCOUNT: backups of the current account'."\n" + ."\n" + .'- CROSS\\_ACCOUNT: cross-account backups', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'CROSS_ACCOUNT'], ], [ 'name' => 'CrossAccountUserId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the source Alibaba Cloud account that authorizes the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '129374672382xxxx', - ], + 'schema' => ['description' => 'The ID of the source account for the cross-account backup.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'title' => '', 'example' => '129374672382xxxx'], ], [ 'name' => 'CrossAccountRoleName', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the RAM role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'hbrcrossrole', - ], + 'schema' => ['description' => 'The name of the RAM role that is created in the source account for the cross-account backup.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'hbrcrossrole'], ], [ 'name' => 'Filters', @@ -6802,19 +4630,24 @@ 'items' => [ 'type' => 'object', 'properties' => [ - 'Key' => [ - 'type' => 'string', - ], + 'Key' => ['type' => 'string', 'description' => 'The key of the filter.', 'required' => false, 'title' => '', 'example' => 'InstanceId'], 'Values' => [ 'type' => 'array', - 'items' => [ - 'type' => 'string', - ], + 'items' => ['type' => 'string', 'description' => 'The value of the filter.', 'required' => false, 'title' => '', 'example' => 'i-*********************'."\n"], 'maxItems' => 100, + 'description' => 'The values of the filter.', + 'required' => false, + 'title' => '', ], ], + 'description' => 'The filter.', + 'required' => false, + 'title' => '', ], 'maxItems' => 5, + 'description' => 'The filters used to query resources.', + 'required' => false, + 'title' => '', ], ], ], @@ -6823,358 +4656,339 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'PageNumber' => [ - 'description' => 'The page number of the returned page. Pages start from page 1. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'PageSize' => [ - 'description' => 'The number of entries returned on each page. Valid values: 1 to 99. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'TotalCount' => [ - 'description' => 'The total number of returned HBR clients that meet the specified conditions.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '8', - ], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'title' => '', 'example' => 'true'], + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request was successful.', 'type' => 'string', 'title' => '', 'example' => '200'], + 'Message' => ['description' => 'The message that is returned. If the request is successful, \\`successful\\` is returned. If the request fails, an error message is returned.', 'type' => 'string', 'title' => '', 'example' => 'successful'], + 'PageNumber' => ['description' => 'The page number. Pages start from page 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '1'], + 'PageSize' => ['description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '10'], + 'TotalCount' => ['description' => 'The total number of backup clients that meet the specified conditions.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '8'], 'Clients' => [ - 'description' => 'The queried backup clients.'."\n", + 'description' => 'The list of backup clients.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ - 'Status' => [ - 'description' => 'The status of the backup client. Valid values:'."\n" - ."\n" - .'* **REGISTERED**: The backup client is registered.'."\n" - .'* **ACTIVATED**: The backup client is activated.'."\n" - .'* **DEACTIVATED**: The backup client fails to be activated.'."\n" - .'* **INSTALLING**: The backup client is being installed.'."\n" - .'* **INSTALL_FAILED**: The backup client fails to be installed.'."\n" - .'* **NOT_INSTALLED**: The backup client is not installed.'."\n" - .'* **UPGRADING**: The backup client is being upgraded.'."\n" - .'* **UPGRADE_FAILED**: The backup client fails to be upgraded.'."\n" - .'* **UNINSTALLING**: The backup client is being uninstalled.'."\n" - .'* **UNINSTALL_FAILED**: The backup client fails to be uninstalled.'."\n" - .'* **STOPPED**: The backup client is out of service.'."\n" - .'* **UNKNOWN**: The backup client is disconnected.'."\n", - 'type' => 'string', - 'example' => 'ACTIVATED', - ], - 'BackupStatus' => [ - 'description' => 'The protection status of the backup client. Valid values:'."\n" - ."\n" - .'* **UNPROTECTED**: The backup client is not protected.'."\n" - .'* **PROTECTED**: The backup client is protected.'."\n", - 'type' => 'string', - 'example' => 'PROTECTED', - ], - 'ArchType' => [ - 'description' => 'This parameter is valid only if the **ClientType** parameter is set to **ECS_CLIENT**. This parameter indicates the system architecture where the backup client resides. Valid values:'."\n" - ."\n" - .'* **amd64**'."\n" - .'* **386**'."\n", - 'type' => 'string', - 'example' => 'amd64', - ], - 'ClientId' => [ - 'description' => 'The ID of the backup client.'."\n", - 'type' => 'string', - 'example' => 'c-*********************', - ], - 'MaxClientVersion' => [ - 'description' => 'The latest version number of the backup client.'."\n", - 'type' => 'string', - 'example' => '2.4.5', - ], - 'PrivateIpV4' => [ - 'description' => 'This parameter is valid only if the **ClientType** parameter is set to **ECS_CLIENT**. This parameter indicates the internal IP address of the ECS instance.'."\n", - 'type' => 'string', - 'example' => '192.168.1.1', - ], - 'InstanceName' => [ - 'description' => 'This parameter is valid only if the **ClientType** parameter is set to **ECS_CLIENT**. This parameter indicates the name of the ECS instance.'."\n", - 'type' => 'string', - 'example' => 'instancename', - ], - 'CreatedTime' => [ - 'description' => 'The time when the backup client was created. The value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1554347313', - ], - 'LastHeartBeatTime' => [ - 'description' => 'The last heartbeat time of the backup client. The value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1554347313', - ], - 'ClientType' => [ - 'description' => 'The type of the backup client. Valid value: **ECS_CLIENT**, which indicates a client for ECS file backup.'."\n", - 'type' => 'string', - 'example' => 'ECS_CLIENT', - ], - 'Hostname' => [ - 'description' => 'The hostname of the backup client.'."\n", - 'type' => 'string', - 'example' => 'hostname', - ], - 'InstanceId' => [ - 'description' => 'The instance ID.'."\n" - ."\n" - .'* If the client is used to back up ECS files, this parameter indicates the ID of an ECS instance.'."\n" - .'* If the client is used to back up on-premises files, this parameter indicates the hardware fingerprint that is generated based on the system information.'."\n", - 'type' => 'string', - 'example' => 'i-*********************', - ], - 'Appliance' => [ - 'description' => 'Indicates whether the client is installed on an all-in-one PC that integrates hardware and monitoring program. Valid values:'."\n" - ."\n" - .'* true: The client is installed on an all-in-one PC that integrates hardware and monitoring program.'."\n" - .'* false: The client is not installed on an all-in-one PC that integrates hardware and monitoring program.'."\n", - 'type' => 'boolean', - 'example' => 'false', - ], - 'UpdatedTime' => [ - 'description' => 'The time when the backup client was updated. The value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1554347313', - ], - 'OsType' => [ - 'description' => 'This parameter is valid only if the **ClientType** parameter is set to **ECS_CLIENT**. This parameter indicates the operating system type of the backup client. Valid values:'."\n" - ."\n" - .'* **windows**'."\n" - .'* **linux**'."\n", - 'type' => 'string', - 'example' => 'linux', - ], - 'ZoneId' => [ - 'description' => 'This parameter is valid only if the **ClientType** parameter is set to **ECS_CLIENT**. This parameter indicates the zone of the backup client.'."\n", - 'type' => 'string', - 'example' => 'cn-hangzhou-f', - ], - 'ClientVersion' => [ - 'description' => 'The version number of the backup client.'."\n", - 'type' => 'string', - 'example' => '2.4.5', - ], + 'Status' => ['description' => 'The status of the backup client. Valid values:'."\n" + ."\n" + .'- **REGISTERED**: The client is registered.'."\n" + ."\n" + .'- **ACTIVATED**: The client is activated.'."\n" + ."\n" + .'- **DEACTIVATED**: The client is deactivated.'."\n" + ."\n" + .'- **INSTALLING**: The client is being installed.'."\n" + ."\n" + .'- **INSTALL\\_FAILED**: The installation failed.'."\n" + ."\n" + .'- **NOT\\_INSTALLED**: The client is not installed.'."\n" + ."\n" + .'- **UPGRADING**: The client is being upgraded.'."\n" + ."\n" + .'- **UPGRADE\\_FAILED**: The upgrade failed.'."\n" + ."\n" + .'- **UNINSTALLING**: The client is being uninstalled.'."\n" + ."\n" + .'- **UNINSTALL\\_FAILED**: The uninstallation failed.'."\n" + ."\n" + .'- **STOPPED**: The client service is stopped.'."\n" + ."\n" + .'- **UNKNOWN**: The client is disconnected.', 'type' => 'string', 'title' => '', 'example' => 'ACTIVATED'], + 'BackupStatus' => ['description' => 'The protection status of the backup client. Valid values:'."\n" + ."\n" + .'- **UNPROTECTED**: The server is not protected.'."\n" + ."\n" + .'- **PROTECTED**: The server is protected.', 'type' => 'string', 'title' => '', 'example' => 'PROTECTED'], + 'ArchType' => ['description' => 'This parameter is returned only if **ClientType** is set to **ECS\\_CLIENT**. This parameter indicates the system architecture of the host where the backup client is deployed. Valid values:'."\n" + ."\n" + .'- **amd64**'."\n" + ."\n" + .'- **386**', 'type' => 'string', 'title' => '', 'example' => 'amd64'], + 'ClientId' => ['description' => 'The backup client ID.', 'type' => 'string', 'title' => '', 'example' => 'c-*********************'], + 'MaxClientVersion' => ['description' => 'The latest version number of the backup client.', 'type' => 'string', 'title' => '', 'example' => '2.4.5'], + 'PrivateIpV4' => ['description' => 'This parameter is returned only if **ClientType** is set to **ECS\\_CLIENT**. This parameter indicates the private IP address of the ECS instance.', 'type' => 'string', 'title' => '', 'example' => '192.168.1.1'], + 'InstanceName' => ['description' => 'This parameter is returned only if **ClientType** is set to **ECS\\_CLIENT**. This parameter indicates the name of the ECS instance.', 'type' => 'string', 'title' => '', 'example' => 'instancename'], + 'CreatedTime' => ['description' => 'The time when the backup client was created. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1554347313'], + 'LastHeartBeatTime' => ['description' => 'The last heartbeat time of the backup client. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1554347313'], + 'ClientType' => ['description' => 'The type of the backup client. The value **ECS\\_CLIENT** indicates an ECS file backup client.', 'type' => 'string', 'title' => '', 'example' => 'ECS_CLIENT'], + 'Hostname' => ['description' => 'The hostname of the host where the backup client is deployed.', 'type' => 'string', 'title' => '', 'example' => 'hostname'], + 'InstanceId' => ['description' => 'The instance ID.'."\n" + ."\n" + .'- If the client is an ECS file backup client, this parameter indicates the ID of the ECS instance.'."\n" + ."\n" + .'- If the client is a local file backup client, this parameter indicates the hardware fingerprint that is generated based on system information.', 'type' => 'string', 'title' => '', 'example' => 'i-*********************'], + 'Appliance' => ['description' => 'Indicates whether the client is a backup-archive all-in-one machine.'."\n" + ."\n" + .'- true: The client is a backup-archive all-in-one machine.'."\n" + ."\n" + .'- false: The client is not a backup-archive all-in-one machine.', 'type' => 'boolean', 'title' => '', 'example' => 'false'], + 'UpdatedTime' => ['description' => 'The time when the backup client was updated. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1554347313'], + 'OsType' => ['description' => 'This parameter is returned only if **ClientType** is set to **ECS\\_CLIENT**. This parameter indicates the operating system type of the client. Valid values:'."\n" + ."\n" + .'- **windows**'."\n" + ."\n" + .'- **linux**', 'type' => 'string', 'title' => '', 'example' => 'linux'], + 'ZoneId' => ['description' => 'This parameter is returned only if **ClientType** is set to **ECS\\_CLIENT**. This parameter indicates the zone ID.', 'type' => 'string', 'title' => '', 'example' => 'cn-hangzhou-f'], + 'ClientVersion' => ['description' => 'The version number of the backup client.', 'type' => 'string', 'title' => '', 'example' => '2.4.5'], 'Tags' => [ - 'description' => 'The tag information.'."\n", + 'description' => 'The tag information.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ - 'Key' => [ - 'description' => 'The tag key of the backup vault. Valid values of N: 1 to 20'."\n" - ."\n" - .'* The tag key cannot start with `aliyun` or `acs:`.'."\n" - .'* The tag key cannot contain `http://` or `https://`.'."\n" - .'* The tag key cannot be an empty string.'."\n", - 'type' => 'string', - 'example' => 'TestKey', - ], - 'Value' => [ - 'description' => 'The tag value of the backup vault. Valid values of N: 1 to 20'."\n" - ."\n" - .'* The tag value cannot start with `aliyun` or `acs:`.'."\n" - .'* The tag value cannot contain `http://` or `https://`.'."\n" - .'* The tag value cannot be an empty string.'."\n", - 'type' => 'string', - 'example' => 'TestValue', - ], + 'Key' => ['description' => 'The tag key of the repository. N can be an integer from 1 to 20.'."\n" + ."\n" + .'- The tag key cannot start with `aliyun` or `acs:`.'."\n" + ."\n" + .'- The tag key cannot contain `http://` or `https://`.'."\n" + ."\n" + .'- The tag key cannot be an empty string.', 'type' => 'string', 'title' => '', 'example' => 'TestKey'], + 'Value' => ['description' => 'The tag value of the repository. N can be an integer from 1 to 20.'."\n" + ."\n" + .'- The tag value cannot start with `aliyun` or `acs:`.'."\n" + ."\n" + .'- The tag value cannot contain `http://` or `https://`.'."\n" + ."\n" + .'- The tag value cannot be an empty string.', 'type' => 'string', 'title' => '', 'example' => 'TestValue'], ], + 'description' => '', + 'title' => '', ], + 'title' => '', ], 'Settings' => [ - 'description' => 'The configuration information of the backup client.'."\n", + 'description' => 'The backup client settings.', 'type' => 'object', 'properties' => [ - 'ProxyHost' => [ - 'description' => 'The custom host IP address of the proxy server on the data plane.'."\n", - 'type' => 'string', - 'example' => '192.168.11.100', - ], - 'MaxCpuCore' => [ - 'description' => 'The number of CPU cores used by a single backup job. The value 0 indicates that the number is unlimited.'."\n", - 'type' => 'string', - 'example' => '1', - ], - 'ProxyPort' => [ - 'description' => 'The custom host port of the proxy server on the data plane.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '3128', - ], - 'UseHttps' => [ - 'description' => 'Indicates whether data on the data plane is transmitted over HTTPS. Valid values:'."\n" - ."\n" - .'* true: Data is transmitted over HTTPS.'."\n" - .'* false: Data is transmitted over HTTP.'."\n", - 'type' => 'string', - 'example' => 'false', - ], - 'ProxyPassword' => [ - 'description' => 'The custom password of the proxy server on the data plane.'."\n", - 'type' => 'string', - 'example' => '******', - ], - 'ProxyUser' => [ - 'description' => 'The custom username of the proxy server on the data plane.'."\n", - 'type' => 'string', - 'example' => 'user', - ], - 'DataProxySetting' => [ - 'description' => 'The proxy configuration on the data plane. Valid values:'."\n" - ."\n" - .'* **DISABLE**: The proxy is not used.'."\n" - .'* **USE_CONTROL_PROXY** (default): The configuration is the same as that on the control plane.'."\n" - .'* **CUSTOM**: The configuration is customized (HTTP).'."\n", - 'type' => 'string', - 'example' => 'USE_CONTROL_PROXY', - ], - 'DataNetworkType' => [ - 'description' => 'The type of the endpoint on the data plane. Valid values:'."\n" - ."\n" - .'* **PUBLIC**: Internet'."\n" - .'* **VPC**: virtual private cloud (VPC)'."\n" - .'* **CLASSIC**: classic network'."\n", - 'type' => 'string', - 'example' => 'VPC', - ], - 'MaxWorker' => [ - 'description' => 'The number of concurrent backup jobs. The value 0 indicates that the number is unlimited.'."\n", - 'type' => 'string', - 'example' => '1', - ], - 'MaxMemory' => [ - 'description' => 'The maximum memory that can be used by the client. Unit: bytes. Only V2.13.0 and later are supported.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'AlertOnPartialComplete' => [ - 'description' => 'Indicates whether alerts are generated for partially completed jobs. This parameter is valid only for on-premises file backup and ECS file backup.'."\n", - 'type' => 'boolean', - 'example' => 'false', - ], + 'ProxyHost' => ['description' => 'The IP address of the custom proxy server for the data plane.', 'type' => 'string', 'title' => '', 'example' => '192.168.11.100'], + 'MaxCpuCore' => ['description' => 'The number of CPU cores that are used by a single backup job. A value of 0 indicates that the number of CPU cores is not limited.', 'type' => 'string', 'title' => '', 'example' => '1'], + 'ProxyPort' => ['description' => 'The port number of the custom proxy server for the data plane.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '3128'], + 'UseHttps' => ['description' => 'Indicates whether data is transmitted over HTTPS on the data plane.'."\n" + ."\n" + .'- true: Data is transmitted over HTTPS.'."\n" + ."\n" + .'- false: Data is transmitted over HTTP.', 'type' => 'string', 'title' => '', 'example' => 'false'], + 'ProxyPassword' => ['description' => 'The password for the custom proxy server for the data plane.', 'type' => 'string', 'title' => '', 'example' => '******'], + 'ProxyUser' => ['description' => 'The username for the custom proxy server for the data plane.', 'type' => 'string', 'title' => '', 'example' => 'user'], + 'DataProxySetting' => ['description' => 'The proxy settings for the data plane. Valid values:'."\n" + ."\n" + .'- **DISABLE**: A proxy is not used.'."\n" + ."\n" + .'- **USE\\_CONTROL\\_PROXY** (default): The proxy settings are the same as the control plane.'."\n" + ."\n" + .'- **CUSTOM**: Custom settings are used. The HTTP protocol is used.', 'type' => 'string', 'title' => '', 'example' => 'USE_CONTROL_PROXY'], + 'DataNetworkType' => ['description' => 'The network type of the data plane. Valid values:'."\n" + ."\n" + .'- **PUBLIC**: Internet'."\n" + ."\n" + .'- **VPC**: VPC'."\n" + ."\n" + .'- **CLASSIC**: classic network', 'type' => 'string', 'title' => '', 'example' => 'VPC'], + 'MaxWorker' => ['description' => 'The number of concurrent backup jobs. A value of 0 indicates that the number of concurrent backup jobs is not limited.', 'type' => 'string', 'title' => '', 'example' => '1'], + 'MaxMemory' => ['description' => 'The maximum memory that the client can use. Unit: bytes. This parameter is supported only for client versions 2.13.0 and later.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '0'], + 'AlertOnPartialComplete' => ['description' => 'Indicates whether to generate an alert for partially completed jobs. This parameter is valid only for local file backup and ECS file backup.', 'type' => 'boolean', 'title' => '', 'example' => 'false'], ], + 'title' => '', ], ], + 'description' => '', + 'title' => '', ], 'example' => '{\'Client\': []}', + 'title' => '', ], ], 'description' => '', + 'title' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 8,\\n \\"Clients\\": [\\n {\\n \\"Status\\": \\"ACTIVATED\\",\\n \\"BackupStatus\\": \\"PROTECTED\\",\\n \\"ArchType\\": \\"amd64\\",\\n \\"ClientId\\": \\"c-*********************\\",\\n \\"MaxClientVersion\\": \\"2.4.5\\",\\n \\"PrivateIpV4\\": \\"192.168.1.1\\",\\n \\"InstanceName\\": \\"instancename\\",\\n \\"CreatedTime\\": 1554347313,\\n \\"LastHeartBeatTime\\": 1554347313,\\n \\"ClientType\\": \\"ECS_CLIENT\\",\\n \\"Hostname\\": \\"hostname\\",\\n \\"InstanceId\\": \\"i-*********************\\",\\n \\"Appliance\\": false,\\n \\"UpdatedTime\\": 1554347313,\\n \\"OsType\\": \\"linux\\",\\n \\"ZoneId\\": \\"cn-hangzhou-f\\",\\n \\"ClientVersion\\": \\"2.4.5\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"TestKey\\",\\n \\"Value\\": \\"TestValue\\"\\n }\\n ],\\n \\"Settings\\": {\\n \\"ProxyHost\\": \\"192.168.11.100\\",\\n \\"MaxCpuCore\\": \\"1\\",\\n \\"ProxyPort\\": 3128,\\n \\"UseHttps\\": \\"false\\",\\n \\"ProxyPassword\\": \\"******\\",\\n \\"ProxyUser\\": \\"user\\",\\n \\"DataProxySetting\\": \\"USE_CONTROL_PROXY\\",\\n \\"DataNetworkType\\": \\"VPC\\",\\n \\"MaxWorker\\": \\"1\\",\\n \\"MaxMemory\\": 0,\\n \\"AlertOnPartialComplete\\": false\\n }\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeBackupClientsResponse>\\n<TotalCount>8</TotalCount>\\n<PageSize>10</PageSize>\\n<Message>successful</Message>\\n<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n<PageNumber>1</PageNumber>\\n<Clients>\\n <Status>ACTIVATED</Status>\\n <PrivateIpV4>192.168.1.1</PrivateIpV4>\\n <ClientType>ECS_CLIENT</ClientType>\\n <CreatedTime>1554347313</CreatedTime>\\n <ZoneId>cn-hangzhou-f</ZoneId>\\n <InstanceId>i-*********************</InstanceId>\\n <Hostname>hostname</Hostname>\\n <ClientVersion>2.4.5</ClientVersion>\\n <InstanceName>instancename</InstanceName>\\n <MaxClientVersion>2.4.5</MaxClientVersion>\\n <Appliance>false</Appliance>\\n <ArchType>amd64</ArchType>\\n <OsType>linux</OsType>\\n <LastHeartBeatTime>1554347313</LastHeartBeatTime>\\n <ClientId>c-*********************</ClientId>\\n <UpdatedTime>1554347313</UpdatedTime>\\n <BackupStatus>PROTECTED</BackupStatus>\\n <Tags>\\n <Value>TestValue</Value>\\n <Key>TestKey</Key>\\n </Tags>\\n <Settings>\\n <MaxCpuCore>1</MaxCpuCore>\\n <DataNetworkType>VPC</DataNetworkType>\\n <UseHttps>false</UseHttps>\\n <DataProxySetting>USE_CONTROL_PROXY</DataProxySetting>\\n <MaxWorker>1</MaxWorker>\\n <ProxyPassword>******</ProxyPassword>\\n <ProxyUser>user</ProxyUser>\\n <ProxyHost>192.168.11.100</ProxyHost>\\n <ProxyPort>3128</ProxyPort>\\n </Settings>\\n</Clients>\\n<Code>200</Code>\\n<Success>true</Success>\\n</DescribeBackupClientsResponse>","errorExample":""}]', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 8,\\n \\"Clients\\": [\\n {\\n \\"Status\\": \\"ACTIVATED\\",\\n \\"BackupStatus\\": \\"PROTECTED\\",\\n \\"ArchType\\": \\"amd64\\",\\n \\"ClientId\\": \\"c-*********************\\",\\n \\"MaxClientVersion\\": \\"2.4.5\\",\\n \\"PrivateIpV4\\": \\"192.168.1.1\\",\\n \\"InstanceName\\": \\"instancename\\",\\n \\"CreatedTime\\": 1554347313,\\n \\"LastHeartBeatTime\\": 1554347313,\\n \\"ClientType\\": \\"ECS_CLIENT\\",\\n \\"Hostname\\": \\"hostname\\",\\n \\"InstanceId\\": \\"i-*********************\\",\\n \\"Appliance\\": false,\\n \\"UpdatedTime\\": 1554347313,\\n \\"OsType\\": \\"linux\\",\\n \\"ZoneId\\": \\"cn-hangzhou-f\\",\\n \\"ClientVersion\\": \\"2.4.5\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"TestKey\\",\\n \\"Value\\": \\"TestValue\\"\\n }\\n ],\\n \\"Settings\\": {\\n \\"ProxyHost\\": \\"192.168.11.100\\",\\n \\"MaxCpuCore\\": \\"1\\",\\n \\"ProxyPort\\": 3128,\\n \\"UseHttps\\": \\"false\\",\\n \\"ProxyPassword\\": \\"******\\",\\n \\"ProxyUser\\": \\"user\\",\\n \\"DataProxySetting\\": \\"USE_CONTROL_PROXY\\",\\n \\"DataNetworkType\\": \\"VPC\\",\\n \\"MaxWorker\\": \\"1\\",\\n \\"MaxMemory\\": 0,\\n \\"AlertOnPartialComplete\\": false\\n }\\n }\\n ]\\n}","type":"json"}]', 'title' => 'DescribeBackupClients', - 'summary' => 'Queries the information about one or more HBR clients that meet the specified conditions.', + 'summary' => 'Queries the information about one or more backup clients that meet specified conditions.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', - ], - 'InstallBackupClients' => [ - 'summary' => 'Installs an HBR client on one or more Elastic Compute Service (ECS) instances.', - 'methods' => [ - 'post', - 'get', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeBackupClients'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeBackupClients', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'DescribeBackupJobs2' => [ + 'summary' => 'Queries backup jobs that meet the specified criteria.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', + 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeCode' => '95625', - 'abilityTreeNodes' => [ - 'FEATUREhbrS7MI6C', - ], + 'abilityTreeCode' => '95502', + 'abilityTreeNodes' => ['FEATUREhbrB1KQ9G', 'FEATUREhbrS7MI6C', 'FEATUREhbr3BJQCT', 'FEATUREhbrQ3MV3B', 'FEATUREhbr56LH1C', 'FEATUREhbrFWIWBG', 'FEATUREhbrAW9I1R'], ], 'parameters' => [ [ - 'name' => 'InstanceIds', + 'name' => 'PageNumber', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'description' => 'The IDs of the ECS instances. You can specify up to 20 IDs.'."\n", - 'type' => 'object', - 'required' => true, - 'docRequired' => true, - 'example' => '["i-0xi5wj5*****v3j3bh2gj5"]', - ], + 'schema' => ['description' => 'The page number. Pages start from page 1. The default value is 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''], ], [ - 'name' => 'CrossAccountType', + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => ['description' => 'The number of entries per page. Valid values: 1 to 99. The default value is 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], + ], + [ + 'name' => 'SourceType', + 'in' => 'query', + 'schema' => ['description' => 'The type of the data source. Valid values:'."\n" + ."\n" + .'- **ECS\\_FILE**: Backs up Elastic Compute Service (ECS) files.'."\n" + ."\n" + .'- **OSS**: Backs up Alibaba Cloud Object Storage Service (OSS) buckets.'."\n" + ."\n" + .'- **NAS**: Backs up Alibaba Cloud Apsara File Storage NAS (NAS) file systems.'."\n" + ."\n" + .'- **OTS**: Backs up Alibaba Cloud Tablestore instances.'."\n" + ."\n" + .'- **UDM\\_ECS**: Backs up entire ECS instances.'."\n" + ."\n" + .'- **UDM\\_ECS\\_DISK**: A sub-task for disk backup in an ECS instance backup job.'."\n" + ."\n" + .'- **COMMON\\_NAS**: A generic NAS data source. This includes archive NAS and on-premises NAS data sources. Use the Values parameter of Filters to specify the data source type.'."\n" + ."\n" + .'- **File**: Backs up on-premises files.'."\n" + ."\n" + .'- **SYNC**: Data synchronization.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'ECS_FILE', 'title' => ''], + ], + [ + 'name' => 'SortDirection', 'in' => 'query', 'schema' => [ - 'description' => 'Specifies whether data is backed up within the same Alibaba Cloud account or across Alibaba Cloud accounts. Valid values:'."\n" + 'description' => 'The sort direction. Valid values:'."\n" ."\n" - .'* SELF_ACCOUNT: Data is backed up within the same Alibaba Cloud account.'."\n" - .'* CROSS_ACCOUNT: Data is backed up across Alibaba Cloud accounts.'."\n", + .'- **ASCEND**: Ascending order.'."\n" + ."\n" + .'- **DESCEND** (Default): Descending order.', 'type' => 'string', 'required' => false, - 'example' => 'CROSS_ACCOUNT', + 'default' => 'DESCEND', + 'enum' => ['ASCEND', 'DESCEND'], + 'example' => 'DESCEND', + 'title' => '', ], ], [ - 'name' => 'CrossAccountUserId', + 'name' => 'Filters', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The ID of the source Alibaba Cloud account that authorizes the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", - 'type' => 'integer', - 'format' => 'int64', + 'description' => 'The key-value pairs of the filter.', + 'type' => 'array', + 'items' => [ + 'description' => 'The filter.', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => 'The key of the filter. Valid values:'."\n" + ."\n" + .'- **RegionId**: The region ID.'."\n" + ."\n" + .'- **PlanId**: The backup plan ID.'."\n" + ."\n" + .'- **JobId**: The backup job ID.'."\n" + ."\n" + .'- **VaultId**: The repository ID.'."\n" + ."\n" + .'- **InstanceId**: The ECS instance ID.'."\n" + ."\n" + .'- **Bucket**: The name of the OSS bucket.'."\n" + ."\n" + .'- **FileSystemId**: The file system ID.'."\n" + ."\n" + .'- **Status**: The job status.'."\n" + ."\n" + .'- **CreatedTime**: The start time of the job.'."\n" + ."\n" + .'- **CompleteTime**: The end time of the job.'."\n" + ."\n" + .'- **InstanceName**: The name of the Tablestore instance.'."\n" + ."\n" + .'- **BackupType**: The backup job. This parameter is required only when SourceType is set to COMMON\\_NAS.'."\n" + ."\n" + .'- **ParentId**: The ID of the parent job. This parameter is required when you query sub-tasks. For example, if you set SourceType to UDM\\_ECS\\_DISK, you must specify the ID of the UDM\\_ECS job.', 'type' => 'string', 'required' => false, 'example' => 'VaultId', 'title' => ''], + 'Values' => [ + 'description' => 'The value of the filter.', + 'type' => 'array', + 'items' => ['description' => 'The value of the filter.'."\n" + ."\n" + .'COMPLETE: On-premises NAS backup.'."\n" + ."\n" + .'0: ARCHIVE: Archive NAS data source.'."\n" + ."\n" + .'1: ARCHIVE\\_BY\\_SEARCH: Archive NAS data source.', 'type' => 'string', 'required' => false, 'example' => 'COMPLETE', 'title' => ''], + 'required' => false, + 'maxItems' => 500, + 'title' => '', + 'example' => '', + ], + 'Operator' => ['description' => 'The matching operator. The default value is IN. This parameter specifies the operator to use for matching the Key and Value. Valid values:'."\n" + ."\n" + .'- **EQUAL**: Equal to.'."\n" + ."\n" + .'- **NOT\\_EQUAL**: Not equal to.'."\n" + ."\n" + .'- **GREATER\\_THAN**: Greater than.'."\n" + ."\n" + .'- **GREATER\\_THAN\\_OR\\_EQUAL**: Greater than or equal to.'."\n" + ."\n" + .'- **LESS\\_THAN**: Less than.'."\n" + ."\n" + .'- **LESS\\_THAN\\_OR\\_EQUAL**: Less than or equal to.'."\n" + ."\n" + .'- **BETWEEN**: The value is a JSON array in the format of `[start,end]`.'."\n" + ."\n" + .'- **IN**: The value is an array.'."\n" + ."\n" + .'> The IN operator is not supported when you use **CompleteTime** as the key for a query.', 'type' => 'string', 'required' => false, 'example' => 'IN', 'title' => ''], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], 'required' => false, - 'example' => '16392782xxxxxx', + 'maxItems' => 5, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'CrossAccountRoleName', + 'name' => 'Edition', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the RAM role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'BackupRole', - ], + 'schema' => ['description' => 'The edition. Valid values: BASIC and STANDARD. The default value is STANDARD.', 'type' => 'string', 'example' => 'STANDARD', 'title' => '', 'required' => false], ], ], 'responses' => [ @@ -7182,161 +4996,344 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'TaskId' => [ - 'description' => 'The ID of the asynchronous job. You can call the DescribeTask operation to query the execution result of an asynchronous job.'."\n", - 'type' => 'string', - 'example' => 't-*********************', - ], - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'InstanceStatuses' => [ - 'description' => 'The status of the ECS instance.'."\n", - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'ValidInstance' => [ - 'description' => 'Indicates whether an HBR client can be installed on the ECS instance. Valid values:'."\n" - ."\n" - .'* true: An HBR client can be installed on the ECS instance.'."\n" - .'* false: An HBR client cannot be installed on the ECS instance.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'InstanceId' => [ - 'description' => 'The ID of the ECS instance.'."\n", - 'type' => 'string', - 'example' => 'i-0xi5w***v3j3bh2gj5', - ], - 'ErrorCode' => [ - 'description' => 'The error code that is returned. Valid values:'."\n" - ."\n" - .'* If the value is empty, the call is successful.'."\n" - .'* **InstanceNotExists**: The ECS instance does not exist.'."\n" - .'* **InstanceNotRunning**: The ECS instance is not running.'."\n" - .'* **CloudAssistNotRunningOnInstance**: Cloud Assistant is unavailable.'."\n", - 'type' => 'string', - 'example' => 'InstanceNotExists', + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request was successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The message that is returned. If the request was successful, successful is returned. If the request failed, an error message is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'PageNumber' => ['description' => 'The page number. Pages start from page 1. The default value is 1.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'PageSize' => ['description' => 'The number of entries per page. Valid values: 1 to 99. The default value is 10.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], + 'TotalCount' => ['description' => 'The total number of backup jobs that meet the specified criteria.', 'type' => 'integer', 'format' => 'int64', 'example' => '8', 'title' => ''], + 'BackupJobs' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'BackupJob' => [ + 'description' => 'The list of backup jobs that meet the specified criteria.', + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the backup job.', + 'type' => 'object', + 'properties' => [ + 'Status' => ['description' => 'The status of the backup job. Valid values:'."\n" + ."\n" + .'- **COMPLETE**: The job is successful.'."\n" + ."\n" + .'- **PARTIAL\\_COMPLETE**: The job is partially successful.'."\n" + ."\n" + .'- **FAILED**: The job failed.', 'type' => 'string', 'example' => 'COMPLETE', 'title' => ''], + 'ErrorMessage' => ['description' => 'The error message for the backup job.', 'type' => 'string', 'example' => 'PARTIAL_COMPLETE', 'title' => ''], + 'ActualItems' => ['description' => 'This parameter is valid only when **SourceType** is set to **ECS\\_FILE**. It indicates the actual number of items in the backup job.', 'type' => 'integer', 'format' => 'int64', 'example' => '6', 'title' => ''], + 'VaultId' => ['description' => 'The ID of the backup repository.', 'type' => 'string', 'example' => 'v-0006******q', 'title' => ''], + 'ActualBytes' => ['description' => 'The actual data volume of the backup job after deduplication. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '600', 'title' => ''], + 'CreateTime' => ['description' => 'This parameter is valid only when **SourceType** is set to **NAS**. It indicates the time when the file system was created. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1607436917', 'title' => ''], + 'BackupType' => ['description' => 'The backup type. The value **COMPLETE** indicates a full backup.', 'type' => 'string', 'example' => 'COMPLETE', 'title' => ''], + 'Prefix' => ['description' => 'This parameter is valid only when **SourceType** is set to **OSS**. It indicates the prefix of the backup object.', 'type' => 'string', 'example' => 'example/', 'title' => ''], + 'SourceType' => ['description' => 'The type of the data source. Valid values:'."\n" + ."\n" + .'- **ECS\\_FILE**: Backs up ECS files.'."\n" + ."\n" + .'- **OSS**: Backs up Alibaba Cloud OSS buckets.'."\n" + ."\n" + .'- **NAS**: Backs up Alibaba Cloud NAS file systems.', 'type' => 'string', 'example' => 'ECS_FILE', 'title' => ''], + 'Options' => ['description' => 'This parameter is required only when **SourceType** is set to **ECS\\_FILE**. It indicates whether to use Volume Shadow Copy Service (VSS) to define the backup path.'."\n" + ."\n" + .'- This feature is available only for Windows ECS instances.'."\n" + ."\n" + .'- If data in the backup source is changed, set this parameter to `{"UseVSS":true}` to ensure data consistency between the backup and the source.'."\n" + ."\n" + .'- After you enable VSS, you cannot back up multiple file directories at the same time.', 'type' => 'string', 'example' => '{"UseVSS":false}', 'title' => ''], + 'ClientId' => ['description' => 'This parameter is valid only when **SourceType** is set to **ECS\\_FILE**. It indicates the ID of the backup client.', 'type' => 'string', 'example' => 'c-*********************', 'title' => ''], + 'ItemsDone' => ['description' => 'This parameter is valid only when **SourceType** is set to **ECS\\_FILE**. It indicates the number of backup items.', 'type' => 'integer', 'format' => 'int64', 'example' => '8', 'title' => ''], + 'BytesTotal' => ['description' => 'The total data volume of the data source. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000', 'title' => ''], + 'Exclude' => ['description' => 'This parameter is required only when **SourceType** is set to **ECS\\_FILE**. It indicates the path to files that do not need to be backed up. All files in this path are excluded. The path can be up to 255 characters long.', 'type' => 'string', 'example' => '["/var", "/proc"]', 'title' => ''], + 'JobName' => ['description' => 'The name of the backup job.', 'type' => 'string', 'example' => 'jobname', 'title' => ''], + 'CompleteTime' => ['description' => 'The time when the backup job was completed. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1554347313', 'title' => ''], + 'CreatedTime' => ['description' => 'The time when the backup job was created. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1554347313', 'title' => ''], + 'Bucket' => ['description' => 'This parameter is valid only when **SourceType** is set to **OSS**. It indicates the name of the OSS bucket.', 'type' => 'string', 'example' => 'hbr-backup-oss', 'title' => ''], + 'Progress' => ['description' => 'The backup progress. The value is calculated as 100% × 100.', 'type' => 'integer', 'format' => 'int32', 'example' => '10000', 'title' => ''], + 'SpeedLimit' => ['description' => 'This parameter is required only when **SourceType** is set to **ECS\\_FILE**. It indicates the traffic shaping settings for the backup. The format is `{start}|{end}|{bandwidth}`. Use the `|` character to separate multiple traffic shaping configurations. The time ranges of the configurations cannot overlap.'."\n" + ."\n" + .'- **start**: The start hour.'."\n" + ."\n" + .'- **end**: The end hour.'."\n" + ."\n" + .'- **bandwidth**: The throttling speed. Unit: KB/s.', 'type' => 'string', 'example' => '0:24:5120', 'title' => ''], + 'InstanceId' => ['description' => 'This parameter is valid only when **SourceType** is set to **NAS**. It indicates the ECS instance ID.', 'type' => 'string', 'example' => 'i-*********************', 'title' => ''], + 'PlanId' => ['description' => 'The backup plan ID.', 'type' => 'string', 'example' => 'plan-20********35', 'title' => ''], + 'FileSystemId' => ['description' => 'This parameter is valid only when **SourceType** is set to **NAS**. It indicates the file system ID.', 'type' => 'string', 'example' => '005494', 'title' => ''], + 'StartTime' => ['description' => 'The time when the backup job started. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1554347313', 'title' => ''], + 'UpdatedTime' => ['description' => 'The time when the backup job was updated. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1554347313', 'title' => ''], + 'JobId' => ['description' => 'The backup job ID.', 'type' => 'string', 'example' => 'job-000g********w7', 'title' => ''], + 'ItemsTotal' => ['description' => 'This parameter is valid only when **SourceType** is set to **ECS\\_FILE**. It indicates the total number of items in the data source.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''], + 'Include' => ['description' => 'The source paths included in the backup job.', 'type' => 'string', 'example' => '["/home/alice/*.pdf", "/home/bob/*.txt"]', 'title' => ''], + 'BytesDone' => ['description' => 'The data volume of the incremental backup. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '800', 'title' => ''], + 'Paths' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Path' => [ + 'description' => 'The source path of the backup.', + 'type' => 'array', + 'items' => ['description' => 'The source path.', 'type' => 'string', 'example' => '"/home"', 'title' => ''], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'Detail' => [ + 'description' => 'The details of the ECS instance backup job.', + 'type' => 'object', + 'properties' => [ + 'DoCopy' => ['description' => 'Indicates whether a remote replication is performed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'DestinationNativeSnapshotId' => ['description' => 'The ID of the remote replication snapshot.', 'type' => 'string', 'example' => 's-******************', 'title' => ''], + 'DestinationNativeSnapshotProgress' => ['description' => 'The progress of the remote replication.', 'type' => 'integer', 'format' => 'int32', 'example' => '85', 'title' => ''], + 'DestinationNativeSnapshotStatus' => ['description' => 'The status of the remote replication.', 'type' => 'string', 'example' => 'COMPLETE', 'title' => ''], + 'DestinationRetention' => ['description' => 'The retention period of the remote replication backup.', 'type' => 'integer', 'format' => 'int64', 'example' => '30', 'title' => ''], + 'DestinationSnapshotId' => ['description' => 'The ID of the remote replication backup.', 'type' => 'string', 'example' => 's-******************', 'title' => ''], + 'DestinationNativeSnapshotErrorMessage' => ['description' => 'The error message for the failed remote replication.', 'type' => 'string', 'example' => 'ECS.CreatingSnapshot', 'title' => ''], + 'NativeSnapshotId' => ['description' => 'The snapshot ID.', 'type' => 'string', 'example' => 's-******************', 'title' => ''], + 'DiskNativeSnapshotIdList' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DiskNativeSnapshotId' => [ + 'description' => 'The mapping between snapshots and disks.', + 'type' => 'array', + 'items' => ['description' => 'The snapshot ID.', 'type' => 'string', 'example' => 's-******************', 'title' => ''], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'InstanceInfos' => ['description' => 'The information about the ECS instance, including the instance name and instance type.', 'type' => 'object', 'example' => '{'."\n" + .' "i-xxxxxxxx": {'."\n" + .' "hostName": "test",'."\n" + .' "instanceName": "test",'."\n" + .' "instanceType": "ecs.c7.xlarge",'."\n" + .' "osType": "linux",'."\n" + .' "diskIds": ['."\n" + .' "d-xxxxxxxx01",'."\n" + .' "d-xxxxxxxx02"'."\n" + .' ],'."\n" + .' "osNameEn": "Rocky Linux 8.8 64 bit",'."\n" + .' "osName": "Rocky Linux 8.8 64position",'."\n" + .' "platform": "Rocky Linux"'."\n" + .' }'."\n" + .'}', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'InstanceName' => ['description' => 'The name of the Tablestore instance.', 'type' => 'string', 'example' => 'instancename', 'title' => ''], + 'OtsDetail' => [ + 'description' => 'The details of the Tablestore instance.', + 'type' => 'object', + 'properties' => [ + 'TableNames' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'TableName' => [ + 'description' => 'The list of data table names in the Tablestore instance.', + 'type' => 'array', + 'items' => ['description' => 'The name of a data table in the Tablestore instance.', 'type' => 'string', 'example' => '["table1", "table2", "table3"]', 'title' => ''], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'Speed' => ['description' => 'The actual average backup speed. Unit: KB/s.', 'type' => 'integer', 'format' => 'int64', 'example' => '500', 'title' => ''], + 'TableName' => ['description' => 'The name of the data table in the Tablestore instance.', 'type' => 'string', 'example' => 'table1', 'title' => ''], + 'CrossAccountType' => [ + 'description' => 'The type of the cross-account backup. Valid values:'."\n" + ."\n" + .'- SELF\\_ACCOUNT: Backs up data within the same account.'."\n" + ."\n" + .'- CROSS\\_ACCOUNT: Backs up data across accounts.', + 'enumValueTitles' => [], + 'type' => 'string', + 'example' => 'SELF_ACCOUNT', + 'title' => '', + ], + 'CrossAccountUserId' => ['description' => 'The ID of the source account that is managed by the current account for cross-account backup.', 'type' => 'integer', 'format' => 'int64', 'example' => '158975xxxxx4625', 'title' => ''], + 'CrossAccountRoleName' => ['description' => 'The name of the RAM role that is created in the source account for cross-account backup and managed by the current account.', 'type' => 'string', 'example' => 'BackupRole', 'title' => ''], + 'Report' => [ + 'description' => 'The job report.', + 'type' => 'object', + 'properties' => [ + 'TotalFiles' => ['description' => 'The list of all files. This parameter is not returned for data synchronization.', 'type' => 'string', 'example' => '/temp/report/158975xxxxxx4625/job-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_total.csv', 'title' => ''], + 'SuccessFiles' => ['description' => 'The list of successful files.', 'type' => 'string', 'example' => '/temp/report/158975xxxxxx4625/r-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_success.zip', 'title' => ''], + 'FailedFiles' => ['description' => 'The list of failed files.', 'type' => 'string', 'example' => '/temp/report/158975xxxxxx4625/r-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_failed.zip', 'title' => ''], + 'SkippedFiles' => ['description' => 'The list of skipped files.', 'type' => 'string', 'example' => '/temp/report/158975xxxxxx4625/r-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_skipped.zip', 'title' => ''], + 'ReportTaskStatus' => ['description' => 'The status of report generation.', 'type' => 'string', 'example' => 'COMPLETE', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'Identifier' => ['description' => 'This parameter is returned only when SourceType is set to CONTAINER. It indicates the ID of the cluster that is backed up by the container backup job. If the cluster is a Container Service for Kubernetes (ACK) cluster, this parameter indicates the ACK cluster ID.', 'type' => 'string', 'title' => '', 'example' => 'c83**************************b76'], + 'DestSourceType' => ['description' => 'The type of the destination data source. This parameter is required only for synchronization.', 'type' => 'string', 'example' => 'OSS', 'title' => ''], + 'DestDataSourceId' => ['description' => 'The ID of the destination data source. This parameter is required only for synchronization.', 'type' => 'string', 'example' => 'ds-000cov4ufudxklj24zdk', 'title' => ''], + 'DestDataSourceDetail' => ['description' => 'The details of the destination data source. This parameter is required only for synchronization.', 'type' => 'string', 'example' => '{\\"prefix\\":\\"/\\"}', 'title' => ''], + 'ChangeListPath' => ['description' => 'The configuration of the incremental file synchronization list. This parameter is required only for synchronization.', 'type' => 'string', 'example' => '{"dataSourceId": "ds-123456789", "path": "/changelist"}', 'title' => ''], + 'FilesTotal' => ['description' => 'The total number of files to be processed.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''], + 'FilesDone' => ['description' => 'The number of processed files.', 'type' => 'integer', 'format' => 'int64', 'example' => '9', 'title' => ''], + 'ActualFiles' => ['description' => 'The actual number of processed files.', 'type' => 'integer', 'format' => 'int64', 'example' => '8', 'title' => ''], + 'TriggerMode' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + ], + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TaskId\\": \\"t-*********************\\",\\n \\"Success\\": true,\\n \\"InstanceStatuses\\": [\\n {\\n \\"ValidInstance\\": true,\\n \\"InstanceId\\": \\"i-0xi5w***v3j3bh2gj5\\",\\n \\"ErrorCode\\": \\"InstanceNotExists\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<InstallBackupClientsResponse>\\n<TaskId>t-*********************</TaskId>\\n<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n<Message>successful</Message>\\n<InstanceStatuses>\\n <InstanceId>i-0xi5w***v3j3bh2gj5</InstanceId>\\n <ErrorCode>InstanceNotExists</ErrorCode>\\n <ValidInstance>true</ValidInstance>\\n</InstanceStatuses>\\n<Code>200</Code>\\n<Success>true</Success>\\n</InstallBackupClientsResponse>","errorExample":""}]', - 'title' => 'InstallBackupClients', - 'description' => '* This operation creates an asynchronous job at the backend and calls Cloud Assistant to install an HBR client on an ECS instance.'."\n" - .'* You can call the [DescribeTask](~~431265~~) operation to query the execution result of an asynchronous job.'."\n" - .'* The timeout period of an asynchronous job is 15 minutes. We recommend that you call the DescribeTask operation to run the first query 60 seconds after you call the InstallBackupClients operation to install HBR clients. Then, run the next queries at an interval of 30 seconds.'."\n", - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'UninstallBackupClients' => [ - 'methods' => [ - 'post', - 'get', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 8,\\n \\"BackupJobs\\": {\\n \\"BackupJob\\": [\\n {\\n \\"Status\\": \\"COMPLETE\\",\\n \\"ErrorMessage\\": \\"PARTIAL_COMPLETE\\",\\n \\"ActualItems\\": 6,\\n \\"VaultId\\": \\"v-0006******q\\",\\n \\"ActualBytes\\": 600,\\n \\"CreateTime\\": 1607436917,\\n \\"BackupType\\": \\"COMPLETE\\",\\n \\"Prefix\\": \\"example/\\",\\n \\"SourceType\\": \\"ECS_FILE\\",\\n \\"Options\\": \\"{\\\\\\"UseVSS\\\\\\":false}\\",\\n \\"ClientId\\": \\"c-*********************\\",\\n \\"ItemsDone\\": 8,\\n \\"BytesTotal\\": 1000,\\n \\"Exclude\\": \\"[\\\\\\"/var\\\\\\", \\\\\\"/proc\\\\\\"]\\",\\n \\"JobName\\": \\"jobname\\",\\n \\"CompleteTime\\": 1554347313,\\n \\"CreatedTime\\": 1554347313,\\n \\"Bucket\\": \\"hbr-backup-oss\\",\\n \\"Progress\\": 10000,\\n \\"SpeedLimit\\": \\"0:24:5120\\",\\n \\"InstanceId\\": \\"i-*********************\\",\\n \\"PlanId\\": \\"plan-20********35\\",\\n \\"FileSystemId\\": \\"005494\\",\\n \\"StartTime\\": 1554347313,\\n \\"UpdatedTime\\": 1554347313,\\n \\"JobId\\": \\"job-000g********w7\\",\\n \\"ItemsTotal\\": 10,\\n \\"Include\\": \\"[\\\\\\"/home/alice/*.pdf\\\\\\", \\\\\\"/home/bob/*.txt\\\\\\"]\\",\\n \\"BytesDone\\": 800,\\n \\"Paths\\": {\\n \\"Path\\": [\\n \\"\\\\\\"/home\\\\\\"\\"\\n ]\\n },\\n \\"Detail\\": {\\n \\"DoCopy\\": true,\\n \\"DestinationNativeSnapshotId\\": \\"s-******************\\",\\n \\"DestinationNativeSnapshotProgress\\": 85,\\n \\"DestinationNativeSnapshotStatus\\": \\"COMPLETE\\",\\n \\"DestinationRetention\\": 30,\\n \\"DestinationSnapshotId\\": \\"s-******************\\",\\n \\"DestinationNativeSnapshotErrorMessage\\": \\"ECS.CreatingSnapshot\\",\\n \\"NativeSnapshotId\\": \\"s-******************\\",\\n \\"DiskNativeSnapshotIdList\\": {\\n \\"DiskNativeSnapshotId\\": [\\n \\"s-******************\\"\\n ]\\n },\\n \\"InstanceInfos\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n }\\n },\\n \\"InstanceName\\": \\"instancename\\",\\n \\"OtsDetail\\": {\\n \\"TableNames\\": {\\n \\"TableName\\": [\\n \\"[\\\\\\"table1\\\\\\", \\\\\\"table2\\\\\\", \\\\\\"table3\\\\\\"]\\"\\n ]\\n }\\n },\\n \\"Speed\\": 500,\\n \\"TableName\\": \\"table1\\",\\n \\"CrossAccountType\\": \\"SELF_ACCOUNT\\",\\n \\"CrossAccountUserId\\": 0,\\n \\"CrossAccountRoleName\\": \\"BackupRole\\",\\n \\"Report\\": {\\n \\"TotalFiles\\": \\"/temp/report/158975xxxxxx4625/job-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_total.csv\\",\\n \\"SuccessFiles\\": \\"/temp/report/158975xxxxxx4625/r-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_success.zip\\",\\n \\"FailedFiles\\": \\"/temp/report/158975xxxxxx4625/r-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_failed.zip\\",\\n \\"SkippedFiles\\": \\"/temp/report/158975xxxxxx4625/r-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_skipped.zip\\",\\n \\"ReportTaskStatus\\": \\"COMPLETE\\"\\n },\\n \\"Identifier\\": \\"c83**************************b76\\",\\n \\"DestSourceType\\": \\"OSS\\",\\n \\"DestDataSourceId\\": \\"ds-000cov4ufudxklj24zdk\\",\\n \\"DestDataSourceDetail\\": \\"{\\\\\\\\\\\\\\"prefix\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"/\\\\\\\\\\\\\\"}\\",\\n \\"ChangeListPath\\": \\"{\\\\\\"dataSourceId\\\\\\": \\\\\\"ds-123456789\\\\\\", \\\\\\"path\\\\\\": \\\\\\"/changelist\\\\\\"}\\",\\n \\"FilesTotal\\": 10,\\n \\"FilesDone\\": 9,\\n \\"ActualFiles\\": 8,\\n \\"TriggerMode\\": \\"\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'DescribeBackupJobs2', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeBackupJobs2'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeBackupJobs2', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'translator' => 'machine', + ], + 'DescribeBackupPlans' => [ + 'summary' => 'Gets one or more backup plans that meet specified conditions.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '95660', - 'abilityTreeNodes' => [ - 'FEATUREhbrS7MI6C', - ], + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '95503', + 'abilityTreeNodes' => ['FEATUREhbr56LH1C', 'FEATUREhbrS7MI6C', 'FEATUREhbrFWIWBG', 'FEATUREhbrAW9I1R', 'FEATUREhbrB1KQ9G', 'FEATUREhbrQ3MV3B', 'FEATUREhbr3BJQCT'], ], 'parameters' => [ [ - 'name' => 'InstanceIds', + 'name' => 'PageNumber', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'description' => 'The IDs of Elastic Compute Service (ECS) instances. You can specify a maximum of 20 ECS instances.'."\n", - 'type' => 'object', - 'required' => false, - 'docRequired' => true, - 'example' => '["i-0xi5wj5*****v3j3bh2gj5"]', - 'default' => '[]', - ], + 'schema' => ['description' => 'The page number. Pages start from page 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'title' => '', 'example' => '1'], ], [ - 'name' => 'ClientIds', + 'name' => 'PageSize', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'description' => 'The IDs of Cloud Backup clients. The sum of the number of Cloud Backup client IDs and the number of ECS instance IDs cannot exceed 20. Otherwise, an error occurs.'."\n", - 'type' => 'object', - 'required' => false, - 'example' => '["c-*********************"]', - 'default' => '[]', - ], + 'schema' => ['description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'title' => '', 'example' => '10'], ], [ - 'name' => 'CrossAccountType', + 'name' => 'SourceType', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether data is backed up and restored within the same Alibaba Cloud account or across Alibaba Cloud accounts. Valid values:'."\n" - ."\n" - .'* SELF_ACCOUNT: Data is backed up and restored within the same Alibaba Cloud account.'."\n" - .'* CROSS_ACCOUNT: Data is backed up and restored across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'CROSS_ACCOUNT', - ], + 'schema' => ['description' => 'The type of the data source. Valid values:'."\n" + ."\n" + .'- **ECS\\_FILE**: Files of an Elastic Compute Service (ECS) instance.'."\n" + ."\n" + .'- **OSS**: Objects in Object Storage Service (OSS).'."\n" + ."\n" + .'- **NAS**: File systems of Apsara File Storage NAS (NAS).'."\n" + ."\n" + .'- **OTS**: Tablestore instances.'."\n" + ."\n" + .'- **UDM\\_ECS**: Entire ECS instances.'."\n" + ."\n" + .'- **SYNC**: Data synchronization.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'title' => '', 'example' => 'ECS_FILE'], ], [ - 'name' => 'CrossAccountUserId', + 'name' => 'Filters', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The ID of the source Alibaba Cloud account that authorizes the current Alibaba Cloud account to back up and restore data across Alibaba Cloud accounts.'."\n", - 'type' => 'integer', - 'format' => 'int64', + 'description' => 'The filters.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => 'The key in the filter. Valid values:'."\n" + ."\n" + .'- **regionId**: The region ID.'."\n" + ."\n" + .'- **planId**: The ID of the backup plan.'."\n" + ."\n" + .'- **sourceType**: The type of the backup source.'."\n" + ."\n" + .'- **vaultId**: The ID of the backup repository.'."\n" + ."\n" + .'- **instanceName**: The name of the instance.'."\n" + ."\n" + .'- **instanceId**: The ID of the instance.'."\n" + ."\n" + .'- **planName**: The name of the backup plan.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'vaultId'], + 'Values' => [ + 'description' => 'The value to match in the filter.', + 'type' => 'array', + 'items' => ['description' => 'The value to match in the filter.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'v-*********************'], + 'required' => false, + 'example' => '["v-*********************"]', + 'maxItems' => 500, + 'title' => '', + ], + ], + 'required' => false, + 'description' => 'The filter.', + 'title' => '', + 'example' => '', + ], 'required' => false, - 'example' => '129349237xxxxx', + 'maxItems' => 5, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'CrossAccountRoleName', + 'name' => 'Edition', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the RAM role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up and restore data across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'BackupRole', - ], + 'schema' => ['type' => 'string', 'title' => '', 'description' => 'The edition of the backup plan. Valid values: BASIC and STANDARD. Default value: STANDARD.', 'required' => false, 'example' => 'STANDARD'], ], ], 'responses' => [ @@ -7344,160 +5341,348 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the request is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the request is successful, a value of successful is returned. If the request fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'TaskId' => [ - 'description' => 'The ID of the asynchronous job. You can call the DescribeTask operation to query the execution result of the asynchronous job.'."\n", - 'type' => 'string', - 'example' => 't-*********************', - ], - 'Success' => [ - 'description' => 'Indicates whether the request is successful.'."\n" - ."\n" - .'* true: The request is successful.'."\n" - .'* false: The request fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'InstanceStatuses' => [ - 'description' => 'The status of the ECS instance.'."\n", - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'ValidInstance' => [ - 'description' => 'Indicates whether a backup client can be installed on the ECS instance.'."\n" - ."\n" - .'* true: A backup client can be installed on the ECS instance.'."\n" - .'* false: A backup client cannot be installed on the ECS instance.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'InstanceId' => [ - 'description' => 'The ID of the ECS instance.'."\n", - 'type' => 'string', - 'example' => 'i-0xi5w***v3j3bh2gj5', - ], - 'ErrorCode' => [ - 'description' => 'The error code. Valid values:'."\n" - ."\n" - .'* If the value is empty, the request is successful.'."\n" - .'* **InstanceNotExists**: The ECS instance does not exist.'."\n" - .'* **InstanceNotRunning**: The ECS instance is not running.'."\n" - .'* **CloudAssistNotRunningOnInstance**: Cloud Assistant is unavailable.'."\n", - 'type' => 'string', - 'example' => 'InstanceNotExists', + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'title' => '', 'example' => 'true'], + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request was successful.', 'type' => 'string', 'title' => '', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request is successful, "successful" is returned. If the request fails, an error message is returned.', 'type' => 'string', 'title' => '', 'example' => 'successful'], + 'PageNumber' => ['description' => 'The page number. Pages start from page 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '1'], + 'PageSize' => ['description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '10'], + 'TotalCount' => ['description' => 'The total number of backup plans that meet the specified conditions.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '8'], + 'BackupPlans' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'BackupPlan' => [ + 'description' => 'The backup plans that meet the specified conditions.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'VaultId' => ['description' => 'The ID of the backup repository.', 'type' => 'string', 'title' => '', 'example' => 'v-*********************'], + 'BackupType' => ['description' => 'The backup type. The value **COMPLETE** indicates a full backup.', 'type' => 'string', 'title' => '', 'example' => 'COMPLETE'], + 'CreateTime' => ['description' => 'The time when the file system was created. This parameter is valid only if **SourceType** is set to **NAS**. This value is a UNIX timestamp, in seconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1554347313'], + 'DataSourceId' => ['description' => 'The ID of the data source.', 'type' => 'string', 'title' => '', 'example' => 'ds-000ht6o9*****w61'], + 'SourceType' => ['description' => 'The type of the data source. Valid values:'."\n" + ."\n" + .'- **ECS\\_FILE**: Files of an ECS instance.'."\n" + ."\n" + .'- **OSS**: Objects in OSS.'."\n" + ."\n" + .'- **NAS**: File systems of NAS.'."\n" + ."\n" + .'- **OTS**: Tablestore instances.'."\n" + ."\n" + .'- **UDM\\_ECS**: Entire ECS instances.'."\n" + ."\n" + .'- **SYNC**: Data synchronization.', 'type' => 'string', 'title' => '', 'example' => 'ECS_FILE'], + 'Disabled' => ['description' => 'Specifies whether the backup plan is paused.'."\n" + ."\n" + .'- true: The backup plan is paused.'."\n" + ."\n" + .'- false: The backup plan is not paused.', 'type' => 'boolean', 'title' => '', 'example' => 'false'], + 'Prefix' => ['description' => 'The prefix of the objects to back up. This parameter is valid only if **SourceType** is set to **OSS**.', 'type' => 'string', 'title' => '', 'example' => 'oss-prefix'], + 'Options' => ['description' => 'Specifies whether to use Windows Volume Shadow Copy Service (VSS) to create a shadow copy. This parameter is valid only if **SourceType** is set to **ECS\\_FILE**.', 'type' => 'string', 'title' => '', 'example' => '{"UseVSS":false}'], + 'ClientId' => ['description' => 'The ID of the client.', 'type' => 'string', 'title' => '', 'example' => 'c-000ge4w*****1qb'], + 'Exclude' => ['description' => 'The path to the files to exclude from the backup. This parameter is valid only if **SourceType** is set to **ECS\\_FILE**. Files in the specified path are not backed up.', 'type' => 'string', 'title' => '', 'example' => '["/var", "/proc"] '], + 'Retention' => ['description' => 'The retention period of the backup data, in days.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '7'], + 'CreatedTime' => ['description' => 'The time when the backup plan was created. This value is a UNIX timestamp, in seconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1554347313'], + 'ClusterId' => ['description' => 'The ID of the client group.', 'type' => 'string', 'title' => '', 'example' => 'cl-000ht6o9******h'], + 'Bucket' => ['description' => 'The name of the OSS bucket. This parameter is valid only if **SourceType** is set to **OSS**.', 'type' => 'string', 'title' => '', 'example' => 'hbr-backup-oss'], + 'Detail' => ['description' => 'The details of the ECS instance backup.', 'type' => 'string', 'title' => '', 'example' => '{\\"doCopy\\":true,\\"doBackup\\":false,\\"instanceName\\":\\"instance example\\",\\"appConsistent\\":false,\\"destinationRegionId\\":\\"cn-shanghai\\",\\"enableFsFreeze\\":true,\\"osNameEn\\":\\"Windows Server 2019 Data Center Edition 64bit Chinese Edition\\",\\"osName\\":\\"Windows Server 2019 Data Center Edition 64bit Chinese Edition\\",\\"diskIdList\\":[],\\"backupVaultId\\":\\"\\",\\"snapshotGroup\\":true,\\"destinationRetention\\":35,\\"platform\\":\\"Windows Server 2012\\",\\"timeoutInSeconds\\":60,\\"backupRetention\\":1,\\"osType\\":\\"windows\\",\\"preScriptPath\\":\\"\\",\\"postScriptPath\\":\\"\\",\\"enableWriters\\":true,\\"ecsDeleted\\":false}'], + 'Schedule' => ['description' => 'The backup policy, formatted as `I|{startTime}|{interval}`. A backup job runs every `{interval}` starting from `{startTime}`. Overdue jobs are skipped. A new job does not start if the previous one is still running. For example, `I|1631685600|P1D` means a backup job runs daily starting from 2021-09-15 14:00:00.'."\n" + ."\n" + .'- **startTime**: The start time of the backup. This is a UNIX timestamp in seconds.'."\n" + ."\n" + .'- **interval**: The backup interval in the ISO 8601 format. For example, PT1H means one hour and P1D means one day.', 'type' => 'string', 'title' => '', 'example' => 'I|1602673264|P1D'], + 'SpeedLimit' => ['description' => 'The traffic shaping policy for the backup. This parameter is valid only if **SourceType** is set to **ECS\\_FILE**. Format: `{start}|{end}|{bandwidth}`. Separate multiple policies with a pipe character (`|`). The time periods of the policies cannot overlap.'."\n" + ."\n" + .'- start: The start hour.'."\n" + ."\n" + .'- end: The end hour.'."\n" + ."\n" + .'- bandwidth: The bandwidth limit. Unit: KB.', 'type' => 'string', 'title' => '', 'example' => '0:24:5120'], + 'InstanceId' => ['description' => 'The ID of the ECS instance. This parameter is valid only if **SourceType** is set to **ECS\\_FILE**.', 'type' => 'string', 'title' => '', 'example' => 'i-*********************'], + 'PlanId' => ['description' => 'The ID of the backup plan.', 'type' => 'string', 'title' => '', 'example' => 'plan-*********************'], + 'BackupSourceGroupId' => ['description' => 'The ID of the backup data source group.', 'type' => 'string', 'title' => '', 'example' => 'System-Database'], + 'FileSystemId' => ['description' => 'The ID of the file system. This parameter is valid only if **SourceType** is set to **NAS**.', 'type' => 'string', 'title' => '', 'example' => '00594'], + 'OtsDetail' => [ + 'description' => 'The details of the Tablestore instance.', + 'type' => 'object', + 'properties' => [ + 'TableNames' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'TableName' => [ + 'description' => 'The tables in the Tablestore instance.', + 'type' => 'array', + 'items' => ['description' => 'The name of the data table in the Tablestore instance.', 'type' => 'string', 'title' => '', 'example' => 'test2_HBR_RESTORED'], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'InstanceName' => ['description' => 'The name of the Tablestore instance.', 'type' => 'string', 'title' => '', 'example' => 'instancename'], + 'UpdatedTime' => ['description' => 'The time when the backup plan was updated. This value is a UNIX timestamp, in seconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1554347313'], + 'PlanName' => ['description' => 'The name of the backup plan.', 'type' => 'string', 'title' => '', 'example' => 'planname'], + 'Include' => ['description' => 'The path to the files to back up. This parameter is valid only if **SourceType** is set to **ECS\\_FILE**. All files in the specified path are backed up.', 'type' => 'string', 'title' => '', 'example' => '["/home/alice/*.pdf", "/home/bob/*.txt"]'], + 'Rules' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Rule' => [ + 'description' => 'The backup policies. This parameter is valid only for disk backups.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'DestinationRetention' => ['description' => 'The retention period of the geo-redundant backup, in days.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '90'], + 'Schedule' => ['description' => 'The backup policy, formatted as `I|{startTime}|{interval}`. A backup job runs every `{interval}` starting from `{startTime}`. Overdue jobs are skipped. A new job does not start if the previous one is still running. For example, `I|1631685600|P1D` means a backup job runs daily starting from 2021-09-15 14:00:00.'."\n" + ."\n" + .'- `startTime`: The start time of the backup. This is a UNIX timestamp in seconds.'."\n" + ."\n" + .'- `interval`: The backup interval in the ISO 8601 format. For example, PT1H means one hour and P1D means one day.', 'type' => 'string', 'title' => '', 'example' => 'I|1631685600|P1D'], + 'Retention' => ['description' => 'The retention period of the backup data, in days.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '90'], + 'Disabled' => ['description' => 'Specifies whether the policy is disabled.', 'type' => 'boolean', 'title' => '', 'example' => 'true'], + 'DoCopy' => ['description' => 'Specifies whether to copy the backup snapshot to the backup repository.', 'type' => 'boolean', 'title' => '', 'example' => 'false'], + 'DestinationRegionId' => ['description' => 'The ID of the destination region for the geo-redundant backup.', 'type' => 'string', 'title' => '', 'example' => 'cn-shanghai'], + 'RuleId' => ['description' => 'The ID of the policy.', 'type' => 'string', 'title' => '', 'example' => 'rule-0008i52rf0ulpni6kn6m'], + 'RuleName' => ['description' => 'The name of the policy.', 'type' => 'string', 'title' => '', 'example' => 'Disk Golden Rule'], + 'BackupType' => ['description' => 'The backup type. The value **COMPLETE** indicates a full backup.', 'type' => 'string', 'title' => '', 'example' => 'COMPLETE'], + ], + 'description' => 'The backup policy.', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'Resources' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Resource' => [ + 'description' => 'The backup resources. This parameter is valid only for disk backups.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'SourceType' => ['description' => 'The type of the data source. Valid value: **UDM\\_DISK**.', 'type' => 'string', 'title' => '', 'example' => 'UDM_DISK'], + 'ResourceId' => ['description' => 'The ID of the data source.', 'type' => 'string', 'title' => '', 'example' => 'd-j6cgioir6m******lu4'], + 'Extra' => ['description' => 'The extended information about the data source.', 'type' => 'string', 'title' => '', 'example' => '{\\"doBackup\\":false,\\"diskName\\":\\"data_disk\\",\\"size\\":100,\\"type\\":\\"data\\",\\"category\\":\\"cloud_essd\\",\\"imageId\\":\\"\\",\\"device\\":\\"/dev/xvdb\\",\\"encrypted\\":false}'], + ], + 'description' => 'The backup resource.', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'Paths' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Path' => [ + 'description' => 'The backup paths. This parameter is valid only if **SourceType** is set to **ECS\\_FILE**.', + 'type' => 'array', + 'items' => ['description' => 'The backup path.', 'type' => 'string', 'title' => '', 'example' => '["/home"]'], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'TrialInfo' => [ + 'description' => 'The free trial information.', + 'type' => 'object', + 'properties' => [ + 'TrialStartTime' => ['description' => 'The time when the free trial starts.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1579413159'], + 'TrialVaultReleaseTime' => ['description' => 'The time when the free trial repository is released.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1594965600'], + 'TrialExpireTime' => ['description' => 'The time when the free trial expires.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1584597600'], + 'KeepAfterTrialExpiration' => ['description' => 'Specifies whether to convert the plan to a pay-as-you-go plan after the free trial ends.', 'type' => 'boolean', 'title' => '', 'example' => 'true'], + ], + 'title' => '', + 'example' => '', + ], + 'InstanceGroupId' => ['description' => 'The ID of the instance group.', 'type' => 'string', 'title' => '', 'example' => 'i-**'], + 'CrossAccountType' => [ + 'description' => 'The type of the cross-account backup. Valid values:'."\n" + ."\n" + .'- SELF\\_ACCOUNT'."\n" + ."\n" + .'- CROSS\\_ACCOUNT', + 'type' => 'string', + 'enumValueTitles' => [], + 'title' => '', + 'example' => 'CROSS_ACCOUNT', + ], + 'CrossAccountUserId' => ['description' => 'The ID of the source account for the cross-account backup.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1841642xxxxx9795'], + 'CrossAccountRoleName' => ['description' => 'The name of the RAM role in the source account for the cross-account backup.', 'type' => 'string', 'title' => '', 'example' => 'BackupRole'], + 'KeepLatestSnapshots' => ['description' => 'Specifies whether to retain at least one backup version.'."\n" + ."\n" + .'- 0: Does not retain.'."\n" + ."\n" + .'- 1: Retains.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '0'], + 'DestSourceType' => ['description' => 'The type of the destination data source. This parameter is required only for data synchronization.', 'type' => 'string', 'title' => '', 'example' => 'OSS'], + 'DestDataSourceId' => ['description' => 'The ID of the destination data source. This parameter is required only for data synchronization.', 'type' => 'string', 'title' => '', 'example' => 'ds-*********************'], + 'DestDataSourceDetail' => ['description' => 'The details of the destination data source. This parameter is required only for data synchronization.', 'type' => 'string', 'title' => '', 'example' => '{\\"prefix\\":\\"/\\"}'], + 'ChangeListPath' => ['description' => 'The configurations of the incremental file synchronization. This parameter is required only for data synchronization.', 'type' => 'string', 'title' => '', 'example' => '{"dataSourceId": "ds-123456789", "path": "/changelist"}'], + 'LatestExecuteJobId' => ['description' => 'The ID of the last backup job run by the plan.', 'type' => 'string', 'title' => '', 'example' => 'job-12345678'], + 'LatestFinishJobId' => ['type' => 'string', 'title' => '', 'description' => 'The ID of the last completed backup job.', 'example' => 'job-00**************9khz'], + 'CreatedByTag' => ['description' => 'Specifies whether the backup plan was automatically created based on tags.', 'type' => 'boolean', 'title' => '', 'example' => 'false'], + 'HitTags' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'HitTag' => [ + 'description' => 'The matched tag rules.', + 'type' => 'array', + 'items' => [ + 'description' => 'The matched tag rules.', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => 'The tag key.', 'type' => 'string', 'title' => '', 'example' => 'type'], + 'Value' => ['description' => 'The tag value.', 'type' => 'string', 'title' => '', 'example' => '0'], + 'Operator' => ['description' => 'The tag matching rule. Valid values:'."\n" + ."\n" + .'- **EQUAL**: Matches the tag key and tag value.'."\n" + ."\n" + .'- **NOT**: Matches the tag key but not the tag value.', 'type' => 'string', 'title' => '', 'example' => 'EQUAL'], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'BusinessStatus' => ['type' => 'string', 'description' => 'The business status.', 'title' => '', 'example' => 'ACTIVE'], + ], + 'description' => '', + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TaskId\\": \\"t-*********************\\",\\n \\"Success\\": true,\\n \\"InstanceStatuses\\": [\\n {\\n \\"ValidInstance\\": true,\\n \\"InstanceId\\": \\"i-0xi5w***v3j3bh2gj5\\",\\n \\"ErrorCode\\": \\"InstanceNotExists\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<UninstallBackupClientsResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <TaskId>t-*********************</TaskId>\\n <Success>true</Success>\\n <InstanceStatuses>\\n <ValidInstance>true</ValidInstance>\\n <InstanceId>i-0xi5w***v3j3bh2gj5</InstanceId>\\n <ErrorCode>InstanceNotExists</ErrorCode>\\n </InstanceStatuses>\\n</UninstallBackupClientsResponse>","errorExample":""}]', - 'title' => 'UninstallBackupClients', - 'summary' => 'Uninstalls a Cloud Backup client from one or more Elastic Compute Service (ECS) instance.', - 'description' => '* This operation creates an asynchronous job at the backend and calls Cloud Assistant to uninstall a backup client from an ECS instance.'."\n" - .'* You can call the DescribeTask operation to query the execution result of an asynchronous job.'."\n" - .'* The timeout period of an asynchronous job is 15 minutes. We recommend that you call the DescribeTask operation to run the first query 30 seconds after you call the UninstallBackupClients operation to uninstall backup clients. Then, run the next queries at an interval of 30 seconds.'."\n", - ], - 'UpgradeBackupClients' => [ - 'methods' => [ - 'post', - 'get', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 8,\\n \\"BackupPlans\\": {\\n \\"BackupPlan\\": [\\n {\\n \\"VaultId\\": \\"v-*********************\\",\\n \\"BackupType\\": \\"COMPLETE\\",\\n \\"CreateTime\\": 1554347313,\\n \\"DataSourceId\\": \\"ds-000ht6o9*****w61\\",\\n \\"SourceType\\": \\"ECS_FILE\\",\\n \\"Disabled\\": false,\\n \\"Prefix\\": \\"oss-prefix\\",\\n \\"Options\\": \\"{\\\\\\"UseVSS\\\\\\":false}\\",\\n \\"ClientId\\": \\"c-000ge4w*****1qb\\",\\n \\"Exclude\\": \\"[\\\\\\"/var\\\\\\", \\\\\\"/proc\\\\\\"]\\\\t\\",\\n \\"Retention\\": 7,\\n \\"CreatedTime\\": 1554347313,\\n \\"ClusterId\\": \\"cl-000ht6o9******h\\",\\n \\"Bucket\\": \\"hbr-backup-oss\\",\\n \\"Detail\\": \\"{\\\\\\\\\\\\\\"doCopy\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"doBackup\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"instanceName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"instance example\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"appConsistent\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"destinationRegionId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"cn-shanghai\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"enableFsFreeze\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"osNameEn\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Windows Server 2019 Data Center Edition 64bit Chinese Edition\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"osName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Windows Server 2019 Data Center Edition 64bit Chinese Edition\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"diskIdList\\\\\\\\\\\\\\":[],\\\\\\\\\\\\\\"backupVaultId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"snapshotGroup\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"destinationRetention\\\\\\\\\\\\\\":35,\\\\\\\\\\\\\\"platform\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Windows Server 2012\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"timeoutInSeconds\\\\\\\\\\\\\\":60,\\\\\\\\\\\\\\"backupRetention\\\\\\\\\\\\\\":1,\\\\\\\\\\\\\\"osType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"windows\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"preScriptPath\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"postScriptPath\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"enableWriters\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"ecsDeleted\\\\\\\\\\\\\\":false}\\",\\n \\"Schedule\\": \\"I|1602673264|P1D\\",\\n \\"SpeedLimit\\": \\"0:24:5120\\",\\n \\"InstanceId\\": \\"i-*********************\\",\\n \\"PlanId\\": \\"plan-*********************\\",\\n \\"BackupSourceGroupId\\": \\"System-Database\\",\\n \\"FileSystemId\\": \\"00594\\",\\n \\"OtsDetail\\": {\\n \\"TableNames\\": {\\n \\"TableName\\": [\\n \\"test2_HBR_RESTORED\\"\\n ]\\n }\\n },\\n \\"InstanceName\\": \\"instancename\\",\\n \\"UpdatedTime\\": 1554347313,\\n \\"PlanName\\": \\"planname\\",\\n \\"Include\\": \\"[\\\\\\"/home/alice/*.pdf\\\\\\", \\\\\\"/home/bob/*.txt\\\\\\"]\\",\\n \\"Rules\\": {\\n \\"Rule\\": [\\n {\\n \\"DestinationRetention\\": 90,\\n \\"Schedule\\": \\"I|1631685600|P1D\\",\\n \\"Retention\\": 90,\\n \\"Disabled\\": true,\\n \\"DoCopy\\": false,\\n \\"DestinationRegionId\\": \\"cn-shanghai\\",\\n \\"RuleId\\": \\"rule-0008i52rf0ulpni6kn6m\\",\\n \\"RuleName\\": \\"Disk Golden Rule\\",\\n \\"BackupType\\": \\"COMPLETE\\"\\n }\\n ]\\n },\\n \\"Resources\\": {\\n \\"Resource\\": [\\n {\\n \\"SourceType\\": \\"UDM_DISK\\",\\n \\"ResourceId\\": \\"d-j6cgioir6m******lu4\\",\\n \\"Extra\\": \\"{\\\\\\\\\\\\\\"doBackup\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"diskName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"data_disk\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"size\\\\\\\\\\\\\\":100,\\\\\\\\\\\\\\"type\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"data\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"category\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"cloud_essd\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"imageId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"device\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"/dev/xvdb\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"encrypted\\\\\\\\\\\\\\":false}\\"\\n }\\n ]\\n },\\n \\"Paths\\": {\\n \\"Path\\": [\\n \\"[\\\\\\"/home\\\\\\"]\\"\\n ]\\n },\\n \\"TrialInfo\\": {\\n \\"TrialStartTime\\": 1579413159,\\n \\"TrialVaultReleaseTime\\": 1594965600,\\n \\"TrialExpireTime\\": 1584597600,\\n \\"KeepAfterTrialExpiration\\": true\\n },\\n \\"InstanceGroupId\\": \\"i-**\\",\\n \\"CrossAccountType\\": \\"CROSS_ACCOUNT\\",\\n \\"CrossAccountUserId\\": 0,\\n \\"CrossAccountRoleName\\": \\"BackupRole\\",\\n \\"KeepLatestSnapshots\\": 0,\\n \\"DestSourceType\\": \\"OSS\\",\\n \\"DestDataSourceId\\": \\"ds-*********************\\",\\n \\"DestDataSourceDetail\\": \\"{\\\\\\\\\\\\\\"prefix\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"/\\\\\\\\\\\\\\"}\\",\\n \\"ChangeListPath\\": \\"{\\\\\\"dataSourceId\\\\\\": \\\\\\"ds-123456789\\\\\\", \\\\\\"path\\\\\\": \\\\\\"/changelist\\\\\\"}\\",\\n \\"LatestExecuteJobId\\": \\"job-12345678\\",\\n \\"LatestFinishJobId\\": \\"job-00**************9khz\\",\\n \\"CreatedByTag\\": false,\\n \\"HitTags\\": {\\n \\"HitTag\\": [\\n {\\n \\"Key\\": \\"type\\",\\n \\"Value\\": \\"0\\",\\n \\"Operator\\": \\"EQUAL\\"\\n }\\n ]\\n },\\n \\"BusinessStatus\\": \\"ACTIVE\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'DescribeBackupPlans', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeBackupPlans'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeBackupPlans', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'DescribeClients' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', - 'deprecated' => false, + 'operationType' => 'read', 'systemTags' => [ - 'operationType' => 'update', - 'abilityTreeCode' => '95706', - 'abilityTreeNodes' => [ - 'FEATUREhbrS7MI6C', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '95507', + 'abilityTreeNodes' => ['FEATUREhbrI97IXK'], ], 'parameters' => [ [ - 'name' => 'InstanceIds', + 'name' => 'VaultId', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'description' => 'The IDs of Elastic Compute Service (ECS) instances. The total number of ECS instance IDs and Cloud Backup client IDs cannot exceed 100.'."\n", - 'type' => 'object', - 'required' => false, - 'docRequired' => true, - 'example' => '["c-*********************"]', - 'default' => '[]', - ], + 'schema' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'v-0001vk0z******xdyr'], ], [ - 'name' => 'ClientIds', + 'name' => 'ClientId', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'description' => 'The IDs of Cloud Backup clients. The total number of Cloud Backup client IDs and ECS instance IDs cannot exceed 100.'."\n", - 'type' => 'object', - 'required' => false, - 'docRequired' => true, - 'example' => '["i-0xi5wj******3j3bh2gj5"]', - 'default' => '[]', - ], + 'schema' => ['description' => 'The ID of the Cloud Backup client.'."\n", 'type' => 'string', 'required' => false, 'example' => 'c-000ed600******6b0'], ], [ - 'name' => 'CrossAccountType', + 'name' => 'PageNumber', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether data is backed up within the same Alibaba Cloud account or across Alibaba Cloud accounts. Valid values:'."\n" - ."\n" - .'* SELF_ACCOUNT: Data is backed up within the same Alibaba Cloud account.'."\n" - .'* CROSS_ACCOUNT: Data is backed up across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'CROSS_ACCOUNT', - ], + 'schema' => ['description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '1', 'default' => '1'], ], [ - 'name' => 'CrossAccountUserId', + 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the source Alibaba Cloud account that authorizes the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1283948272xxxxx', - ], + 'schema' => ['description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'example' => '10', 'default' => '10'], ], [ - 'name' => 'CrossAccountRoleName', + 'name' => 'ClientType', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the RAM role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'hbrcrossrole', - ], + 'schema' => ['description' => 'The type of the Cloud Backup client. Valid value: **ECS_AGENT**, which indicates an SAP HANA backup client.'."\n", 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'ECS_AGENT'], + ], + [ + 'name' => 'SourceType', + 'in' => 'query', + 'schema' => ['description' => 'The type of the data source. Valid value:**HANA**, which indicates SAP HANA backup.'."\n", 'type' => 'string', 'required' => false, 'example' => 'HANA'], + ], + [ + 'name' => 'ClusterId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the SAP HANA instance.'."\n", 'type' => 'string', 'required' => false, 'example' => 'cl-0005ni1******2l87'], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the resource group.'."\n", 'type' => 'string', 'required' => false, 'example' => 'rg-acfmw6bxl7o5qyq'], ], ], 'responses' => [ @@ -7505,182 +5690,128 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'TaskId' => [ - 'description' => 'The ID of the asynchronous job. You can call the DescribeTask operation to query the execution result of an asynchronous job.'."\n", - 'type' => 'string', - 'example' => 't-*********************', - ], - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'InstanceStatuses' => [ - 'description' => 'The status of the ECS instance. If the status of an ECS instance cannot meet the requirements to install an HBR client and the value of the InstanceIds parameter is greater than 1, an error message is returned based on the value of this parameter.'."\n", - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'ValidInstance' => [ - 'description' => 'Indicates whether an HBR client can be installed on the ECS instance. Valid values:'."\n" - ."\n" - .'* true: An HBR client can be installed on the ECS instance.'."\n" - .'* false: An HBR client cannot be installed on the ECS instance.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'InstanceId' => [ - 'description' => 'The ID of the ECS instance.'."\n", - 'type' => 'string', - 'example' => 'i-0xi5w***v3j3bh2gj5', - ], - 'ErrorCode' => [ - 'description' => 'The error code that is returned. Valid values:'."\n" - ."\n" - .'* If the value is empty, the call is successful.'."\n" - .'* **InstanceNotExists**: The ECS instance does not exist.'."\n" - .'* **InstanceNotRunning**: The ECS instance is not running.'."\n" - .'* **CloudAssistNotRunningOnInstance**: Cloud Assistant is unavailable.'."\n", - 'type' => 'string', - 'example' => 'InstanceNotExists', + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '17189276-465D-5EF3-8FFD-0FF51B5A41A0'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'PageNumber' => ['description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'PageSize' => ['description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'TotalCount' => ['description' => 'The total number of entries returned.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '12'], + 'Clients' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Client' => [ + 'description' => 'The Cloud Backup clients.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The client information.'."\n", + 'type' => 'object', + 'properties' => [ + 'Status' => ['description' => 'The status of the Cloud Backup client. Valid values:'."\n" + ."\n" + .'* **REGISTERED**: The backup client is registered.'."\n" + .'* **ACTIVATED**: The backup client is activated.'."\n" + .'* **DEACTIVATED**: The backup client fails to be activated.'."\n" + .'* **INSTALLING**: The backup client is being installed.'."\n" + .'* **INSTALL_FAILED**: The backup client fails to be installed.'."\n" + .'* **NOT_INSTALLED**: The backup client is not installed.'."\n" + .'* **UPGRADING**: The backup client is being upgraded.'."\n" + .'* **UPGRADE_FAILED**: The backup client fails to be upgraded.'."\n" + .'* **UNINSTALLING**: The backup client is being uninstalled.'."\n" + .'* **UNINSTALL_FAILED**: The backup client fails to be uninstalled.'."\n" + .'* **STOPPED**: The backup client is out of service.'."\n" + .'* **UNKNOWN**: The backup client is disconnected.'."\n", 'type' => 'string', 'example' => 'ACTIVATED'], + 'VaultId' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'example' => 'v-00029mx6o******n85lg'], + 'UseHttps' => ['description' => 'Indicates whether data is transmitted over HTTPS. Valid values:'."\n" + ."\n" + .'* true: Data is transmitted over HTTPS.'."\n" + .'* false: Data is transmitted over HTTP.'."\n", 'type' => 'boolean', 'example' => 'false'], + 'NetworkType' => ['description' => 'The network type. Valid values:'."\n" + ."\n" + .'* **CLASSIC**: the classic network'."\n" + .'* **VPC**: the virtual private cloud (VPC)'."\n", 'type' => 'string', 'example' => 'VPC'], + 'ClientName' => ['description' => 'The client name.'."\n", 'type' => 'string', 'example' => 'client-20211224-101226'], + 'ClientId' => ['description' => 'The ID of the Cloud Backup client.'."\n", 'type' => 'string', 'example' => 'c-00062uu******2fgj'], + 'AlertSetting' => ['description' => 'The alert settings. Valid value: INHERITED, which indicates that the Cloud Backup client sends alert notifications by using the same method configured for the backup vault.'."\n", 'type' => 'string', 'example' => 'INHERITED'], + 'InstanceName' => ['description' => 'The name of the ECS instance.'."\n", 'type' => 'string', 'example' => 'swh-hbr'], + 'MaxVersion' => ['description' => 'The maximum version number of the Cloud Backup client.'."\n", 'type' => 'string', 'example' => '1.11.23'], + 'CreatedTime' => ['description' => 'The time when the Cloud Backup client was created.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1554347313'], + 'StatusMessage' => ['description' => 'The status information.'."\n", 'type' => 'string', 'example' => 'HANA_NOT_SUPPORT'], + 'ClientType' => ['description' => 'The type of the Cloud Backup client. Valid value: **ECS_AGENT**, which indicates an SAP HANA backup client.'."\n", 'type' => 'string', 'example' => 'ECS_AGENT'], + 'InstanceId' => ['description' => 'The instance ID.'."\n", 'type' => 'string', 'example' => 'i-wz9b6wya******n8yo'], + 'UpdatedTime' => ['description' => 'The time when the Cloud Backup client was updated. This value is a UNIX timestamp. Unit: seconds.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1554347313'], + 'ClientVersion' => ['description' => 'The version number of the Cloud Backup client.'."\n", 'type' => 'string', 'example' => '1.11.16'], + 'ClusterId' => ['description' => 'The ID of the SAP HANA instance.'."\n", 'type' => 'string', 'example' => 'cl-0008c48frr******ncpk'], + 'HeartBeatTime' => ['description' => 'The latest heartbeat time of the Cloud Backup client. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1554347313'], + ], ], ], ], ], ], + 'description' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TaskId\\": \\"t-*********************\\",\\n \\"Success\\": true,\\n \\"InstanceStatuses\\": [\\n {\\n \\"ValidInstance\\": true,\\n \\"InstanceId\\": \\"i-0xi5w***v3j3bh2gj5\\",\\n \\"ErrorCode\\": \\"InstanceNotExists\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<UpgradeBackupClientsResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <TaskId>t-*********************</TaskId>\\n <Success>true</Success>\\n <InstanceStatuses>\\n <ValidInstance>true</ValidInstance>\\n <InstanceId>i-0xi5w***v3j3bh2gj5</InstanceId>\\n <ErrorCode>InstanceNotExists</ErrorCode>\\n </InstanceStatuses>\\n</UpgradeBackupClientsResponse>","errorExample":""}]', - 'title' => 'UpgradeBackupClients', - 'summary' => 'Upgrades an HBR client on one or more Elastic Compute Service (ECS) instances.', - 'description' => '* This operation creates an asynchronous job at the backend and calls Cloud Assistant to upgrade an HBR client that is installed on an ECS instance.'."\n" - .'* You can call the DescribeTask operation to query the execution result of an asynchronous job.'."\n" - .'* The timeout period of an asynchronous job is 15 minutes.'."\n", - ], - 'DeleteSnapshot' => [ - 'summary' => 'Deletes a backup snapshot.', - 'methods' => [ - 'post', - 'get', + 'title' => 'DescribeClients', + 'summary' => 'Queries one or more Cloud Backup clients that meet the specified conditions.', + 'description' => 'This operation is applicable only to SAP HANA backup. For Cloud Backup clients of other data sources, call the DescribeBackupClients operation.'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeClients'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeClients', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"17189276-465D-5EF3-8FFD-0FF51B5A41A0\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 12,\\n \\"Clients\\": {\\n \\"Client\\": [\\n {\\n \\"Status\\": \\"ACTIVATED\\",\\n \\"VaultId\\": \\"v-00029mx6o******n85lg\\",\\n \\"UseHttps\\": false,\\n \\"NetworkType\\": \\"VPC\\",\\n \\"ClientName\\": \\"client-20211224-101226\\",\\n \\"ClientId\\": \\"c-00062uu******2fgj\\",\\n \\"AlertSetting\\": \\"INHERITED\\",\\n \\"InstanceName\\": \\"swh-hbr\\",\\n \\"MaxVersion\\": \\"1.11.23\\",\\n \\"CreatedTime\\": 1554347313,\\n \\"StatusMessage\\": \\"HANA_NOT_SUPPORT\\",\\n \\"ClientType\\": \\"ECS_AGENT\\",\\n \\"InstanceId\\": \\"i-wz9b6wya******n8yo\\",\\n \\"UpdatedTime\\": 1554347313,\\n \\"ClientVersion\\": \\"1.11.16\\",\\n \\"ClusterId\\": \\"cl-0008c48frr******ncpk\\",\\n \\"HeartBeatTime\\": 1554347313\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeClientsResponse>\\n <RequestId>17189276-465D-5EF3-8FFD-0FF51B5A41A0</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>12</TotalCount>\\n <Clients>\\n <Status>ACTIVATED</Status>\\n <VaultId>v-00029mx6o******n85lg</VaultId>\\n <UseHttps>false</UseHttps>\\n <NetworkType>VPC</NetworkType>\\n <ClientName>client-20211224-101226</ClientName>\\n <ClientId>c-00062uu******2fgj</ClientId>\\n <AlertSetting>INHERITED</AlertSetting>\\n <InstanceName>swh-hbr</InstanceName>\\n <MaxVersion>1.11.23</MaxVersion>\\n <CreatedTime>1554347313</CreatedTime>\\n <StatusMessage>HANA_NOT_SUPPORT</StatusMessage>\\n <ClientType>ECS_AGENT</ClientType>\\n <InstanceId>i-wz9b6wya******n8yo</InstanceId>\\n <UpdatedTime>1554347313</UpdatedTime>\\n <ClientVersion>1.11.16</ClientVersion>\\n <ClusterId>cl-0008c48frr******ncpk</ClusterId>\\n </Clients>\\n</DescribeClientsResponse>","errorExample":""}]', + ], + 'DescribeContainerCluster' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', - 'systemTags' => [ - 'operationType' => 'delete', - 'riskType' => 'none', - 'chargeType' => 'paid', - 'abilityTreeCode' => '95482', - 'abilityTreeNodes' => [ - 'FEATUREhbr56LH1C', - 'FEATUREhbrFWIWBG', - 'FEATUREhbrB1KQ9G', - 'FEATUREhbr3BJQCT', - 'FEATUREhbrS7MI6C', - 'FEATUREhbrQ3MV3B', - ], - ], + 'deprecated' => false, + 'systemTags' => ['operationType' => 'get'], 'parameters' => [ [ - 'name' => 'Token', - 'in' => 'query', - 'schema' => [ - 'description' => 'The token that you want to delete.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '02WJDOE7', - ], - ], - [ - 'name' => 'VaultId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'v-*********************', - ], - ], - [ - 'name' => 'ClientId', + 'name' => 'PageNumber', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the Cloud Backup client. If you delete a backup snapshot for Elastic Compute Service (ECS) instances, you must specify one of the ClientId and **InstanceId** parameters.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'c-*********************', - ], + 'schema' => ['description' => 'The number of the page to return. Pages start from page 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ - 'name' => 'SnapshotId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup snapshot.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 's-*********************', - ], - ], - [ - 'name' => 'SourceType', + 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the backup source. Valid values:'."\n" - ."\n" - .'* **ECS_FILE**: backup snapshots for ECS files'."\n" - .'* **OSS**: backup snapshots for Object Storage Service (OSS) buckets'."\n" - .'* **NAS**: backup snapshots for Apsara File Storage NAS (NAS) file systems'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'ECS_FILE', - ], + 'schema' => ['description' => 'The number of entries to return on each page. Valid values: 1 to 99. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ - 'name' => 'InstanceId', + 'name' => 'ClusterId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the ECS instance. If you delete a backup snapshot for ECS instances, you must specify one of the InstanceId and **ClientId** parameters.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'i-*********************', - ], + 'schema' => ['description' => 'The cluster ID.', 'type' => 'string', 'required' => false, 'example' => 'cc-000**************hg9', 'title' => ''], ], [ - 'name' => 'Force', + 'name' => 'Identifier', 'in' => 'query', - 'schema' => [ - 'description' => 'This parameter is deprecated.'."\n", - 'type' => 'boolean', - 'deprecated' => true, - 'required' => false, - 'example' => 'Deprected.', - ], + 'schema' => ['description' => 'The identifier of the container cluster. For a Container Service for Kubernetes (ACK) cluster, specify the cluster ID.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'cca***************************87a'], ], ], 'responses' => [ @@ -7688,183 +5819,124 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', + 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'CC94B755-C3C2-5B9D-BD77-E0FE819A4DB2', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the call is successful. Valid values:'."\n" + ."\n" + .'- true: The call is successful.'."\n" + ."\n" + .'- false: The call fails.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Code' => ['description' => 'The HTTP status code. The status code 200 indicates that the call is successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'PageSize' => ['description' => 'The number of entries returned on each page. Valid values: 1 to 99. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], + 'PageNumber' => ['description' => 'The page number of the returned page. Pages start from page 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'TotalCount' => ['description' => 'The total number of returned entries.', 'type' => 'integer', 'format' => 'int64', 'example' => '8', 'title' => ''], + 'Clusters' => [ + 'description' => 'The information of clusters.', + 'type' => 'array', + 'items' => [ + 'description' => 'The information of clusters.', + 'type' => 'object', + 'properties' => [ + 'Token' => ['description' => 'The token that is used to register the Hybrid Backup Recovery (HBR) client in the cluster.', 'type' => 'string', 'example' => 'eyJhY2Nvd******A/VnZpgXQC5A==', 'title' => ''], + 'Description' => ['description' => 'The description.', 'type' => 'string', 'example' => 'description ack pv backup', 'title' => ''], + 'ClusterType' => ['description' => 'The type of the cluster. Valid value: ACK, which indicates ACK clusters.', 'type' => 'string', 'example' => 'ACK', 'title' => ''], + 'Identifier' => ['description' => 'The identifier of the cluster.', 'type' => 'string', 'example' => 'c5bbd0931a30947f4ab85efd19380a72d', 'title' => ''], + 'NetworkType' => ['description' => 'The network type of the cluster. Valid values:'."\n" + ."\n" + .'- **CLASSIC**: the classic network'."\n" + ."\n" + .'- **VPC**: virtual private cloud (VPC)', 'type' => 'string', 'example' => 'VPC', 'title' => ''], + 'Name' => ['description' => 'The cluster name.', 'type' => 'string', 'example' => 'ack_pv_backup_location', 'title' => ''], + 'AgentStatus' => ['description' => 'The status of the client. Valid values:'."\n" + ."\n" + .'- **MISS**: The client is disconnected.'."\n" + ."\n" + .'- **UNKNOWN**: The client is in an unknown state.'."\n" + ."\n" + .'- **READY**: The client is ready.', 'type' => 'string', 'example' => 'READY', 'title' => ''], + 'ClusterId' => ['description' => 'The ID of the cluster.', 'type' => 'string', 'example' => 'cl-0006gwppd0jtttpmb0ri', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', ], ], 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteSnapshotResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <Success>true</Success>\\n</DeleteSnapshotResponse>","errorExample":""}]', - 'title' => 'DeleteSnapshot', - ], - 'DescribeOtsTableSnapshots' => [ - 'summary' => 'Queries the details about Tablestore instances that are backed up.', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => 'DescribeContainerCluster', + 'summary' => 'Queries one or more container clusters that meet the specified conditions.', + 'description' => 'Supported only for Container Service for Kubernetes (ACK) integration.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeContainerCluster'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeContainerCluster', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CC94B755-C3C2-5B9D-BD77-E0FE819A4DB2\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageSize\\": 100,\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 8,\\n \\"Clusters\\": [\\n {\\n \\"Token\\": \\"eyJhY2Nvd******A/VnZpgXQC5A==\\",\\n \\"Description\\": \\"description ack pv backup\\",\\n \\"ClusterType\\": \\"ACK\\",\\n \\"Identifier\\": \\"c5bbd0931a30947f4ab85efd19380a72d\\",\\n \\"NetworkType\\": \\"VPC\\",\\n \\"Name\\": \\"ack_pv_backup_location\\",\\n \\"AgentStatus\\": \\"READY\\",\\n \\"ClusterId\\": \\"cl-0006gwppd0jtttpmb0ri\\"\\n }\\n ]\\n}","type":"json"}]', + ], + 'DescribeContainerResource' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', + 'abilityTreeCode' => '95514', + 'abilityTreeNodes' => ['FEATUREhbr4JQRTT'], ], 'parameters' => [ [ - 'name' => 'StartTime', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The start time of the backup. The value must be a UNIX timestamp. Unit: milliseconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1611109271630', - ], - ], - [ - 'name' => 'EndTime', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The end time of the backup. The value must be a UNIX timestamp. Unit: milliseconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1652068250881', - ], - ], - [ - 'name' => 'SnapshotIds', - 'in' => 'formData', - 'style' => 'flat', - 'schema' => [ - 'description' => 'The snapshot IDs.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The snapshot ID.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 's-00047mxg17p26****3c', - ], - 'required' => false, - ], - ], - [ - 'name' => 'OtsInstances', - 'in' => 'formData', - 'style' => 'flat', - 'schema' => [ - 'description' => 'The Tablestore instances that are backed up.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The list of Tablestore instances that are backed up.', - 'type' => 'object', - 'properties' => [ - 'InstanceName' => [ - 'description' => 'The name of the Tablestore instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'instancename', - ], - 'TableNames' => [ - 'description' => 'The names of the tables in the Tablestore instance.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The name of the table in the Tablestore instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'tablename', - ], - 'required' => false, - ], - ], - 'required' => false, - ], - 'required' => false, - ], - ], - [ - 'name' => 'Limit', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The maximum number of rows that you want the current query to return.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '100', - ], + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => ['description' => 'The page number for paged queries. Pages start from 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ - 'name' => 'NextToken', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The token that is required to obtain the next page of backup snapshots.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'caeba0bbb2be03f84eb48b699f0a****', - ], + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => ['description' => 'The number of entries per page. Minimum value: 1. Maximum value: 99. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ - 'name' => 'CrossAccountType', + 'name' => 'ClusterId', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether data is backed up within the same Alibaba Cloud account or across Alibaba Cloud accounts. Valid values:'."\n" - ."\n" - .'* SELF_ACCOUNT: Data is backed up within the same Alibaba Cloud account.'."\n" - .'* CROSS_ACCOUNT: Data is backed up across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'CROSS_ACCOUNT', - ], + 'schema' => ['description' => 'The cluster ID.', 'type' => 'string', 'required' => false, 'example' => 'cc-0005**********hhjw', 'title' => ''], ], [ - 'name' => 'CrossAccountUserId', + 'name' => 'ResourceType', 'in' => 'query', - 'schema' => [ - 'description' => 'The UID of the source account used for cross-account backup.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '144015xxxxx98732', - ], + 'schema' => ['description' => 'The resource type. Valid value:'."\n" + ."\n" + .'- **PV**: persistent volume (PV).', 'type' => 'string', 'required' => false, 'example' => 'PV', 'title' => ''], ], [ - 'name' => 'CrossAccountRoleName', + 'name' => 'ResourceId', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the RAM role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'BackupRole', - ], + 'schema' => ['description' => 'The resource ID.'."\n" + ."\n" + .'- **ResourceType=PV**: The persistent volume ID.', 'type' => 'string', 'required' => false, 'example' => 'a9ab843d-****-****-8e46-1d67a82128a7', 'title' => ''], ], ], 'responses' => [ @@ -7872,186 +5944,56 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '09376812-6290-5E36-B504-E8010D72D1F0', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'Limit' => [ - 'description' => 'The number of backup snapshots that are displayed on the current page.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'Snapshots' => [ - 'description' => 'The backup snapshots.'."\n", + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'D98A2895-745B-5530-A8C1-9A86F0A82354', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request succeeded.'."\n" + ."\n" + .'- true: succeeded'."\n" + ."\n" + .'- false: failed', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Code' => ['description' => 'The return code. A value of 200 indicates success.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The response message. Returns "successful" on success or an error message on failure.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'PageSize' => ['description' => 'The number of entries per page in a paged query.', '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 records.', 'type' => 'integer', 'format' => 'int64', 'example' => '8', 'title' => ''], + 'Resources' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ - 'Status' => [ - 'description' => 'The status of the backup job. Valid values:'."\n" - ."\n" - .'* **COMPLETE**: The backup job is completed.'."\n" - .'* **PARTIAL_COMPLETE**: The backup job is partially completed.'."\n" - .'* **FAILED**: The backup job has failed.'."\n", - 'type' => 'string', - 'example' => 'COMPLETE', - ], - 'SnapshotHash' => [ - 'description' => 'The hash value of the backup snapshot.'."\n", - 'type' => 'string', - 'example' => 'f2fe...', - ], - 'VaultId' => [ - 'description' => 'The ID of the backup vault that stores the backup snapshot.'."\n", - 'type' => 'string', - 'example' => 'v-00030j*******sn', - ], - 'BackupType' => [ - 'description' => 'The backup type. Valid value: **COMPLETE**, which indicates full backup.'."\n", - 'type' => 'string', - 'example' => 'COMPLETE', - ], - 'CreateTime' => [ - 'description' => 'The time when the Tablestore instance was created. The value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1607436917', - ], - 'ActualBytes' => [ - 'description' => 'The actual data amount of backup snapshots after duplicates are removed. Unit: bytes.'."\n", - 'type' => 'string', - 'example' => '0', - ], - 'SourceType' => [ - 'description' => 'The type of the data source. Valid values:'."\n" - ."\n" - .'* **ECS_FILE**: backup snapshots for Elastic Compute Service (ECS) files'."\n" - .'* **OSS**: backup snapshots for Object Storage Service (OSS) buckets'."\n" - .'* **NAS**: backup snapshots for Apsara File Storage NAS file systems'."\n" - .'* **OTS_TABLE**: backup snapshots for Tablestore instances'."\n", - 'type' => 'string', - 'example' => 'OTS_TABLE', - ], - 'BytesTotal' => [ - 'description' => 'The total amount of data. Unit: bytes.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'CompleteTime' => [ - 'description' => 'The time when the backup snapshot was completed. The value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1642496679', - ], - 'Retention' => [ - 'description' => 'The retention period of the backup snapshot. Unit: days.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '730', - ], - 'CreatedTime' => [ - 'description' => 'The time when the backup snapshot was created. The value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1642496679', - ], - 'ParentSnapshotHash' => [ - 'description' => 'The hash value of the parent backup snapshot.'."\n", - 'type' => 'string', - 'example' => 'f2fe..', - ], - 'StartTime' => [ - 'description' => 'The time when the backup snapshot started. The value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1642496543', - ], - 'UpdatedTime' => [ - 'description' => 'The time when the backup snapshot was updated. The value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1642496679', - ], - 'SnapshotId' => [ - 'description' => 'The ID of the backup snapshot.'."\n", - 'type' => 'string', - 'example' => 's-00047mxg17p26*****b', - ], - 'JobId' => [ - 'description' => 'The ID of the backup job.'."\n", - 'type' => 'string', - 'example' => 'job-00030j3chkt******2', - ], - 'InstanceName' => [ - 'description' => 'The name of the Tablestore instance.'."\n", - 'type' => 'string', - 'example' => 'instancename', - ], - 'TableName' => [ - 'description' => 'The name of the table in the Tablestore instance.'."\n", - 'type' => 'string', - 'example' => 'table2', - ], - 'RangeStart' => [ - 'description' => 'The time when the backup job started. The value is a UNIX timestamp. Unit: milliseconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1642492553038', - ], - 'RangeEnd' => [ - 'description' => 'The time when the backup job ended. The value is a UNIX timestamp. Unit: milliseconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1642521709966', - ], + 'ResourceInfo' => ['description' => 'Resource details.', 'type' => 'string', 'example' => '{"pv_name":"nas-a9ab843d-****-****-8e46-1d67a82128a7","pv_size":"1000Gi","storage_class":"opk8s-nas","pvc_name":"**-pvc","namespace":"default"}', 'title' => ''], + 'ClusterIdentifier' => ['description' => 'The cluster identifier.', 'type' => 'string', 'example' => 'c21b653f********695e892e718c419a4', 'title' => ''], + 'ResourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'PV', 'title' => ''], + 'ResourceId' => ['description' => 'The resource ID.', 'type' => 'string', 'example' => 'a9ab843d-****-****-8e46-1d67a82128a7'."\n", 'title' => ''], + 'ClusterId' => ['description' => 'The cluster ID.', 'type' => 'string', 'example' => 'cc-0005**********hhjw', 'title' => ''], ], - 'description' => 'The list of backup snapshots.', + 'description' => 'The list of resources.', + 'title' => '', + 'example' => '', ], - ], - 'NextToken' => [ - 'description' => 'The token that is required to obtain the next page of backup snapshots.'."\n", - 'type' => 'string', - 'example' => 'caeba0bbb2be03f84eb48b699f0a', + 'description' => 'The list of resources.', + 'title' => '', + 'example' => '', ], ], 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"09376812-6290-5E36-B504-E8010D72D1F0\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"Limit\\": 10,\\n \\"Snapshots\\": [\\n {\\n \\"Status\\": \\"COMPLETE\\",\\n \\"SnapshotHash\\": \\"f2fe...\\",\\n \\"VaultId\\": \\"v-00030j*******sn\\",\\n \\"BackupType\\": \\"COMPLETE\\",\\n \\"CreateTime\\": 1607436917,\\n \\"ActualBytes\\": \\"0\\",\\n \\"SourceType\\": \\"OTS_TABLE\\",\\n \\"BytesTotal\\": 0,\\n \\"CompleteTime\\": 1642496679,\\n \\"Retention\\": 730,\\n \\"CreatedTime\\": 1642496679,\\n \\"ParentSnapshotHash\\": \\"f2fe..\\",\\n \\"StartTime\\": 1642496543,\\n \\"UpdatedTime\\": 1642496679,\\n \\"SnapshotId\\": \\"s-00047mxg17p26*****b\\",\\n \\"JobId\\": \\"job-00030j3chkt******2\\",\\n \\"InstanceName\\": \\"instancename\\",\\n \\"TableName\\": \\"table2\\",\\n \\"RangeStart\\": 1642492553038,\\n \\"RangeEnd\\": 1642521709966\\n }\\n ],\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeOtsTableSnapshotsResponse>\\n <RequestId>09376812-6290-5E36-B504-E8010D72D1F0</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <Limit>10</Limit>\\n <Snapshots>\\n <Status>COMPLETE</Status>\\n <SnapshotHash>f2fe...</SnapshotHash>\\n <VaultId>v-00030j*******sn</VaultId>\\n <BackupType>COMPLETE</BackupType>\\n <CreateTime>1607436917</CreateTime>\\n <ActualBytes>0</ActualBytes>\\n <SourceType>OTS_TABLE</SourceType>\\n <BytesTotal>0</BytesTotal>\\n <CompleteTime>1642496679</CompleteTime>\\n <Retention>730</Retention>\\n <CreatedTime>1642496679</CreatedTime>\\n <ParentSnapshotHash>f2fe..</ParentSnapshotHash>\\n <StartTime>1642496543</StartTime>\\n <UpdatedTime>1642496679</UpdatedTime>\\n <SnapshotId>s-00047mxg17p26*****b</SnapshotId>\\n <JobId>job-00030j3chkt******2</JobId>\\n <InstanceName>instancename</InstanceName>\\n <TableName>table2</TableName>\\n <RangeStart>1642492553038</RangeStart>\\n <RangeEnd>1642521709966</RangeEnd>\\n </Snapshots>\\n <NextToken>caeba0bbb2be03f84eb48b699f0a</NextToken>\\n</DescribeOtsTableSnapshotsResponse>","errorExample":""}]', - 'title' => 'DescribeOtsTableSnapshots', - ], - 'DescribeRecoverableOtsInstances' => [ - 'summary' => 'Queries the tables of a restorable Tablestore instance.', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => 'DescribeContainerResource', + 'summary' => 'Queries the list of container cluster resources.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], + 'ramActions' => [], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"D98A2895-745B-5530-A8C1-9A86F0A82354\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 8,\\n \\"Resources\\": [\\n {\\n \\"ResourceInfo\\": \\"{\\\\\\"pv_name\\\\\\":\\\\\\"nas-a9ab843d-****-****-8e46-1d67a82128a7\\\\\\",\\\\\\"pv_size\\\\\\":\\\\\\"1000Gi\\\\\\",\\\\\\"storage_class\\\\\\":\\\\\\"opk8s-nas\\\\\\",\\\\\\"pvc_name\\\\\\":\\\\\\"**-pvc\\\\\\",\\\\\\"namespace\\\\\\":\\\\\\"default\\\\\\"}\\",\\n \\"ClusterIdentifier\\": \\"c21b653f********695e892e718c419a4\\",\\n \\"ResourceType\\": \\"PV\\",\\n \\"ResourceId\\": \\"a9ab843d-****-****-8e46-1d67a82128a7\\\\n\\",\\n \\"ClusterId\\": \\"cc-0005**********hhjw\\"\\n }\\n ]\\n}","type":"json"}]', + ], + 'DescribeCrossAccounts' => [ + 'summary' => 'Queries cross-account management relationships.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -8060,47 +6002,23 @@ 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '119714', - 'abilityTreeNodes' => [ - 'FEATUREhbrAW9I1R', - ], - 'tenantRelevance' => 'publicInformation', + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '137629', + 'abilityTreeNodes' => ['FEATUREhbr3BJQCT', 'FEATUREhbrB08D1M'], + 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ - 'name' => 'CrossAccountType', + 'name' => 'PageNumber', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether data is backed up within the same Alibaba Cloud account or across Alibaba Cloud accounts. Valid values:'."\n" - ."\n" - .'* SELF_ACCOUNT: Data is backed up within the same Alibaba Cloud account.'."\n" - .'* CROSS_ACCOUNT: Data is backed up across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'CROSS_ACCOUNT', - ], + 'schema' => ['description' => 'The page number for paging. Pages start from 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''], ], [ - 'name' => 'CrossAccountUserId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the source Alibaba Cloud account that authorizes the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1440155109798732', - ], - ], - [ - 'name' => 'CrossAccountRoleName', + 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the Resource Access Management (RAM) role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'hbrcrossrole', - ], + 'schema' => ['description' => 'The number of entries per page. Minimum value: 1. Maximum value: 99. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], ], ], 'responses' => [ @@ -8108,71 +6026,80 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '14DC089E-5DD3-5028-AEDB-93D78E11DB2A', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'OtsInstances' => [ - 'description' => 'The list of Tablestore instances that can be restored and the tables in the instances.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The list of Tablestore instances that can be restored and the tables in the instances.'."\n", - 'type' => 'object', - 'properties' => [ - 'InstanceName' => [ - 'description' => 'The name of the Tablestore instance that can be restored.'."\n", - 'type' => 'string', - 'example' => 'instancename', - ], - 'TableNames' => [ - 'description' => 'The names of the tables in the Tablestore instance.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The names of the tables in the Tablestore instance.'."\n", - 'type' => 'string', - 'example' => '["table1", "table2", "table3"]', + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request succeeded.'."\n" + ."\n" + .'- true: succeeded'."\n" + ."\n" + .'- false: failed', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Code' => ['description' => 'The return code. A value of 200 indicates success.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'A description of the response. Successful requests return "successful". Failed requests return an error message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'PageNumber' => ['description' => 'The page number for paging. Pages start from 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'PageSize' => ['description' => 'The number of entries per page. Minimum value: 1. Maximum value: 99. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], + 'TotalCount' => ['description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int64', 'example' => '22', 'title' => ''], + 'CrossAccounts' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'CrossAccount' => [ + 'description' => 'The list of cross-account information.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'OwnerId' => ['description' => 'The account ID of the current account.', 'type' => 'integer', 'format' => 'int64', 'example' => '184164xxxxx49795', 'title' => ''], + 'CrossAccountUserId' => ['description' => 'The original account ID of the cross-account backup managed by the current account.', 'type' => 'integer', 'format' => 'int64', 'example' => '15897534xxxxx625', 'title' => ''], + 'CrossAccountRoleName' => ['description' => 'The name of the RAM role created in the original account for cross-account backup managed by the current account.', 'type' => 'string', 'example' => 'BackupRole', 'title' => ''], + 'Alias' => ['description' => 'The alias. It can be up to 32 characters long.', 'type' => 'string', 'example' => 'content', 'title' => ''], + 'Id' => ['description' => 'The type ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], + 'CreatedTime' => ['description' => 'The creation time. This is a UNIX timestamp in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1654570439', 'title' => ''], + 'UpdatedTime' => ['description' => 'The update time. This is a UNIX timestamp in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1640157098', 'title' => ''], + 'CrossAccountType' => ['description' => 'The cross-account type.', 'type' => 'string', 'example' => 'CROSS_ACCOUNT', 'title' => ''], ], + 'description' => '', + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"14DC089E-5DD3-5028-AEDB-93D78E11DB2A\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"OtsInstances\\": [\\n {\\n \\"InstanceName\\": \\"instancename\\",\\n \\"TableNames\\": [\\n \\"[\\\\\\"table1\\\\\\", \\\\\\"table2\\\\\\", \\\\\\"table3\\\\\\"]\\"\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeRecoverableOtsInstancesResponse>\\n <RequestId>14DC089E-5DD3-5028-AEDB-93D78E11DB2A</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <OtsInstances>\\n <InstanceName>instancename</InstanceName>\\n <TableNames>[\\"table1\\", \\"table2\\", \\"table3\\"]</TableNames>\\n </OtsInstances>\\n</DescribeRecoverableOtsInstancesResponse>","errorExample":""}]', - 'title' => 'DescribeRecoverableOtsInstances', - ], - 'SearchHistoricalSnapshots' => [ - 'summary' => 'Queries the information about one or more backup snapshots that meet the specified conditions.', - 'methods' => [ - 'post', - 'get', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 22,\\n \\"CrossAccounts\\": {\\n \\"CrossAccount\\": [\\n {\\n \\"OwnerId\\": 0,\\n \\"CrossAccountUserId\\": 0,\\n \\"CrossAccountRoleName\\": \\"BackupRole\\",\\n \\"Alias\\": \\"content\\",\\n \\"Id\\": 1,\\n \\"CreatedTime\\": 1654570439,\\n \\"UpdatedTime\\": 1640157098,\\n \\"CrossAccountType\\": \\"CROSS_ACCOUNT\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'DescribeCrossAccounts', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeCrossAccounts'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'hbr:DescribeCrossAccounts', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'DescribeDataSources' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -8182,193 +6109,39 @@ 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '95649', - 'abilityTreeNodes' => [ - 'FEATUREhbr56LH1C', - 'FEATUREhbrS7MI6C', - 'FEATUREhbrFWIWBG', - 'FEATUREhbrAW9I1R', - 'FEATUREhbrB1KQ9G', - 'FEATUREhbrQ3MV3B', - 'FEATUREhbr3BJQCT', - ], + 'abilityTreeCode' => '95515', + 'abilityTreeNodes' => ['FEATUREhbrF83GXN'], ], 'parameters' => [ [ - 'name' => 'SourceType', - 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the data source. Valid values:'."\n" - ."\n" - .'* **ECS_FILE**: backup snapshots for Elastic Compute Service (ECS) files'."\n" - .'* **OSS**: backup snapshots for Object Storage Service (OSS) buckets'."\n" - .'* **NAS**: backup snapshots for Apsara File Storage NAS file systems'."\n", - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 'ECS_FILE', - ], - ], - [ - 'name' => 'Query', + 'name' => 'PageNumber', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'description' => 'The query conditions. Example:'."\n" - ."\n" - .' ['."\n" - .' {'."\n" - .' "field": "VaultId",'."\n" - .' "value": "v-0003rf9m*****qx5",'."\n" - .' "operation": "MATCH_TERM"'."\n" - .' },'."\n" - .' {'."\n" - .' "field": "InstanceId",'."\n" - .' "value": "i-bp1i20zq2*****e9368m",'."\n" - .' "operation": "MATCH_TERM"'."\n" - .' },'."\n" - .' {'."\n" - .' "field": "PlanId",'."\n" - .' "value": "plan-0005vk*****gkd1iu4f",'."\n" - .' "operation": "MATCH_TERM"'."\n" - .' },'."\n" - .' {'."\n" - .' "field": "CompleteTime",'."\n" - .' "value": "1626769913",'."\n" - .' "operation": "GREATER_THAN_OR_EQUAL"'."\n" - .' }'."\n" - .' ]'."\n" - ."\n" - .'* The following fields are supported:'."\n" - ."\n" - .' * VaultId: specifies the ID of the backup vault. This field is required.'."\n" - .' * InstanceId: specifies the ID of the Elastic Compute Service (ECS) instance. If the SourceType parameter is set to ECS_FILE, this field is required.'."\n" - .' * Bucket: specifies the name of the Object Storage Service (OSS) bucket. If the SourceType parameter is set to OSS, this field is required.'."\n" - .' * FileSystemId: specifies the ID of the File Storage NAS (NAS) file system. If the SourceType parameter is set to NAS, this field is required.'."\n" - .' * CreateTime: specifies the time when the NAS file system was created. If the SourceType parameter is set to NAS, this field is required.'."\n" - .' * CompleteTime: specifies the time when the backup snapshot was completed.'."\n" - .' * PlanId: the ID of a backup plan.'."\n" - ."\n" - .'* The following operations are supported:'."\n" - ."\n" - .' * MATCH_TERM: exact match.'."\n" - .' * GREATER_THAN: greater than.'."\n" - .' * GREATER_THAN_OR_EQUAL: greater than or equal to.'."\n" - .' * LESS_THAN: less than.'."\n" - .' * LESS_THAN_OR_EQUAL: less than or equal to.'."\n" - .' * BETWEEN: specifies a JSON array as a range. The results must fall within the range in the `[Minimum value,Maximum value]` format.'."\n" - .' * IN: specifies an array as a collection. The results must fall within the collection.'."\n" - .' * NOT_IN: specifies an array as a collection. The results cannot fall within the collection.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The query conditions. Example:'."\n" - ."\n" - .' ['."\n" - .' {'."\n" - .' "field": "VaultId",'."\n" - .' "value": "v-0003rf9m*****qx5",'."\n" - .' "operation": "MATCH_TERM"'."\n" - .' },'."\n" - .' {'."\n" - .' "field": "InstanceId",'."\n" - .' "value": "i-bp1i20zq2*****e9368m",'."\n" - .' "operation": "MATCH_TERM"'."\n" - .' },'."\n" - .' {'."\n" - .' "field": "PlanId",'."\n" - .' "value": "plan-0005vk*****gkd1iu4f",'."\n" - .' "operation": "MATCH_TERM"'."\n" - .' },'."\n" - .' {'."\n" - .' "field": "CompleteTime",'."\n" - .' "value": "1626769913",'."\n" - .' "operation": "GREATER_THAN_OR_EQUAL"'."\n" - .' }'."\n" - .' ]'."\n" - ."\n" - .'* The following fields are supported:'."\n" - ."\n" - .' * VaultId: specifies the ID of the backup vault. This field is required.'."\n" - .' * InstanceId: specifies the ID of the ECS instance. If the SourceType parameter is set to ECS_FILE, this field is required.'."\n" - .' * Bucket: specifies the name of the OSS bucket. If the SourceType parameter is set to OSS, this field is required.'."\n" - .' * FileSystemId: specifies the ID of the NAS file system. If the SourceType parameter is set to NAS, this field is required.'."\n" - .' * CreateTime: specifies the time when the NAS file system was created. If the SourceType parameter is set to NAS, this field is required.'."\n" - .' * CompleteTime: specifies the time when the backup snapshot was completed.'."\n" - .' * PlanId: the ID of a backup plan.'."\n" - ."\n" - .'* The following operations are supported:'."\n" - ."\n" - .' * MATCH_TERM: exact match.'."\n" - .' * GREATER_THAN: greater than.'."\n" - .' * GREATER_THAN_OR_EQUAL: greater than or equal to.'."\n" - .' * LESS_THAN: less than.'."\n" - .' * LESS_THAN_OR_EQUAL: less than or equal to.'."\n" - .' * BETWEEN: specifies a JSON array as a range. The results must fall within the range in the `[Minimum value,Maximum value]` format.'."\n" - .' * IN: specifies an array as a collection. The results must fall within the collection.'."\n" - .' * NOT_IN: specifies an array as a collection. The results cannot fall within the collection.'."\n", - 'type' => 'any', - 'required' => false, - 'example' => '[ { "field": "VaultId", "value": "v-0003rf9m17pap3ltpqx5", "operation": "MATCH_TERM" }, { "field": "InstanceId", "value": "i-bp1i20zq2wuzdie9368m", "operation": "MATCH_TERM" }, { "field": "PlanId", "value": "plan-0005vkqhpesqgkd1iu4f", "operation": "MATCH_TERM" }, { "field": "CompleteTime", "value": 1626769913, "operation": "GREATER_THAN_OR_EQUAL" } ]', - ], - 'required' => true, - 'docRequired' => true, - 'example' => '[ { "field": "VaultId", "value": "v-0003rf9m17pap3ltpqx5", "operation": "MATCH_TERM" }, { "field": "InstanceId", "value": "i-bp1i20zq2wuzdie9368m", "operation": "MATCH_TERM" }, { "field": "PlanId", "value": "plan-0005vkqhpesqgkd1iu4f", "operation": "MATCH_TERM" }, { "field": "CompleteTime", "value": 1626769913, "operation": "GREATER_THAN_OR_EQUAL" } ]', - ], + 'schema' => ['description' => 'The page number. Pages start from page 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''], ], [ - 'name' => 'Limit', + 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'description' => 'The maximum number of rows that you want the current query to return. To query only the number of matched rows without the need to return specific data, you can set the Limit parameter to `0`. Then, the operation returns only the number of matched rows.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'schema' => ['description' => 'The number of data sources to return on each page.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], ], [ - 'name' => 'NextToken', + 'name' => 'DataSourceType', 'in' => 'query', - 'schema' => [ - 'description' => 'The token that is required to obtain the next page of backup snapshots.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'caeba0bbb2be03f84eb48b699f0a****', - ], + 'schema' => ['description' => 'The data source type.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'COMMON_NAS', 'title' => ''], ], [ - 'name' => 'SortBy', + 'name' => 'ClusterId', 'in' => 'query', - 'schema' => [ - 'description' => 'The field that is used to sort data.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'CreatedTime', - ], + 'schema' => ['description' => 'The client group ID used to access the data source.', 'type' => 'string', 'required' => false, 'example' => 'cl-0003jyv******fsku5m', 'title' => ''], ], [ - 'name' => 'Order', + 'name' => 'DataSourceId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ordering mode. Valid values:'."\n" - ."\n" - .'* ASC (default): ascending order'."\n" - .'* DESC: descending order'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'ASC', - ], + 'schema' => ['description' => 'The data source ID.', 'type' => 'string', 'required' => false, 'example' => 'ds-000******2nqeo', 'title' => ''], ], [ - 'name' => 'Edition', + 'name' => 'DataSourceName', 'in' => 'query', - 'schema' => [ - 'title' => '版本类型,支持BASIC和STANDARD,默认值为STANDARD。', - 'type' => 'string', - 'example' => 'BASIC', - ], + 'schema' => ['description' => 'The data source name.', 'type' => 'string', 'required' => false, 'example' => 'MyLocalNas', 'title' => ''], ], ], 'responses' => [ @@ -8376,440 +6149,139 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'NextToken' => [ - 'description' => 'The token that is required to obtain the next page of backup snapshots.'."\n", - 'type' => 'string', - 'example' => 'BE', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Limit' => [ - 'description' => 'The number of historical backup snapshots that are displayed on the current page.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'TotalCount' => [ - 'description' => 'The total number of returned backup snapshots that meet the specified conditions.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '20', - ], - 'Snapshots' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'Snapshot' => [ - 'description' => 'The historical backup snapshots.'."\n", - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Status' => [ - 'description' => 'The status of the backup job. Valid values:'."\n" - ."\n" - .'* **COMPLETE**: The backup job is completed.'."\n" - .'* **PARTIAL_COMPLETE**: The backup job is partially completed.'."\n" - .'* **FAILED**: The backup job has failed.'."\n", - 'type' => 'string', - 'example' => 'COMPLETE', - ], - 'SnapshotHash' => [ - 'description' => 'The hash value of the backup snapshot.'."\n", - 'type' => 'string', - 'example' => 'f2fe...', - ], - 'VaultId' => [ - 'description' => 'The ID of the backup vault that stores the backup snapshot.'."\n", - 'type' => 'string', - 'example' => 'v-0003rf9m17pap3ltpqx5', - ], - 'ActualItems' => [ - 'description' => 'The actual number of backup snapshots.'."\n" - ."\n" - .'> This parameter is available only for file backup.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '6', - ], - 'BackupType' => [ - 'description' => 'The backup type. Valid value: **COMPLETE**, which indicates full backup.'."\n", - 'type' => 'string', - 'example' => 'COMPLETE', - ], - 'CreateTime' => [ - 'description' => 'This parameter is returned only if the **SourceType** parameter is set to **NAS**. This parameter indicates the time when the file system was created. The value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1607436917', - ], - 'ActualBytes' => [ - 'description' => 'The actual data amount of backup snapshots after duplicates are removed. Unit: bytes.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '600', - ], - 'SourceType' => [ - 'description' => 'The type of the data source. Valid values:'."\n" - ."\n" - .'* **ECS_FILE**: backup snapshots for ECS files'."\n" - .'* **OSS**: backup snapshots for OSS buckets'."\n" - .'* **NAS**: backup snapshots for NAS file systems'."\n", - 'type' => 'string', - 'example' => 'ECS_FILE', - ], - 'Prefix' => [ - 'description' => 'This parameter is returned only if the **SourceType** parameter is set to **OSS**. This parameter indicates the prefix of objects that are backed up.'."\n", - 'type' => 'string', - 'example' => 'example/', - ], - 'ClientId' => [ - 'description' => 'This parameter is returned only if the **SourceType** parameter is set to **ECS_FILE**. This parameter indicates the ID of the HBR client.'."\n", - 'type' => 'string', - 'example' => 'c-*********************', - ], - 'BytesTotal' => [ - 'description' => 'The total amount of data. Unit: bytes.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1000', - ], - 'ItemsDone' => [ - 'description' => 'The number of objects that are backed up.'."\n" - ."\n" - .'> This parameter is available only for file backup.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '8', - ], - 'CompleteTime' => [ - 'description' => 'The time when the backup snapshot was completed. The value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1554347313', - ], - 'Retention' => [ - 'description' => 'The retention period of the backup snapshot. Unit: days.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '7', - ], - 'CreatedTime' => [ - 'description' => 'The time when the backup snapshot was created. The value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1554347313', - ], - 'Bucket' => [ - 'description' => 'This parameter is returned only if the **SourceType** parameter is set to **OSS**. This parameter indicates the name of the OSS bucket.'."\n", - 'type' => 'string', - 'example' => 'hbr-backup-oss', - ], - 'ParentSnapshotHash' => [ - 'description' => 'The hash value of the parent backup snapshot.'."\n", - 'type' => 'string', - 'example' => 'f2fe..', - ], - 'InstanceId' => [ - 'description' => 'This parameter is valid only if the **SourceType** parameter is set to **ECS_FILE**. This parameter indicates the ID of the ECS instance.'."\n", - 'type' => 'string', - 'example' => 'i-*********************', - ], - 'FileSystemId' => [ - 'description' => 'This parameter is returned only if the **SourceType** parameter is set to **NAS**. This parameter indicates the ID of the NAS file system.'."\n", - 'type' => 'string', - 'example' => '005494', - ], - 'ErrorFile' => [ - 'description' => 'The files that record the information about backup failures, including the information about partially completed backups.'."\n", - 'type' => 'string', - 'example' => 'Item Error Message C:\\Program Files (x86)\\Symantec\\Symantec Endpoint Protection\\14.3.558.0000.105\\Bin\\service.dat Open: open \\\\?\\C:\\Program Files (x86)\\Symantec\\Symantec Endpoint Protection\\14.3.558.0000.105\\Bin\\service.dat: The process cannot access the file because it is being used by another process. C:\\ProgramData\\McAfee\\Agent\\data\\InstallerFiles\\172e8a3b04b7ab0fd0215f4fb7707e3744b37d83b6743b3eacb94447c74dc9af_contrib.ini Open: open \\\\?\\C:\\ProgramData\\McAfee\\Agent\\data\\InstallerFiles\\172e8a3b04b7ab0fd0215f4fb7707e3744b37d83b6743b3eacb94447c74dc9af_contrib.ini: Access is denied.', - ], - 'StartTime' => [ - 'description' => 'The time when the backup snapshot started. The value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1554347313', - ], - 'UpdatedTime' => [ - 'description' => 'The time when the backup snapshot was updated. The value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1554347313', - ], - 'SnapshotId' => [ - 'description' => 'The ID of the backup snapshot.'."\n", - 'type' => 'string', - 'example' => 's-*********************', - ], - 'JobId' => [ - 'description' => 'The ID of the backup job.'."\n", - 'type' => 'string', - 'example' => 'v-*********************', - ], - 'Path' => [ - 'description' => 'This parameter is returned only if the **SourceType** parameter is set to **ECS_FILE**. This parameter indicates the path to the files that are backed up.'."\n", - 'type' => 'string', - 'example' => '["/home"]', - ], - 'ItemsTotal' => [ - 'description' => 'The total number of objects in the data source.'."\n" - ."\n" - .'> This parameter is available only for file backup.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '10', - ], - 'BytesDone' => [ - 'description' => 'The actual amount of data that is generated by incremental backups. Unit: bytes.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '800', - ], - 'Paths' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'Path' => [ - 'description' => 'The source paths.'."\n", - 'example' => '"/home"', - 'type' => 'array', - 'items' => [ - 'description' => 'This parameter is returned only if the **SourceType** parameter is set to **NAS**. This parameter indicates the path to the files that are backed up.'."\n", - 'type' => 'string', - 'example' => '"/home"', - ], - ], - ], - ], - 'InstanceName' => [ - 'description' => 'The name of the Tablestore instance.'."\n", - 'type' => 'string', - 'example' => 'instancename', - ], - 'TableName' => [ - 'description' => 'The name of a table in the Tablestore instance.'."\n", - 'type' => 'string', - 'example' => 'table2', - ], - 'RangeStart' => [ - 'description' => 'The time when the backup job started. The value is a UNIX timestamp. Unit: milliseconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1642492553038', - ], - 'RangeEnd' => [ - 'description' => 'The time when the backup job ended. The value is a UNIX timestamp. Unit: milliseconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1642521709966', - ], - 'ExpireTime' => [ - 'description' => 'The time when the snapshot expired. The value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1640334062', - ], - 'SourceSnapshotHash' => [ - 'description' => 'Snapshot HASH value before archiving', - 'type' => 'string', - 'example' => 'qwer***', - ], - 'SourceParentSnapshotHash' => [ - 'description' => 'Parent snapshot HASH value before archiving.', - 'type' => 'string', - 'example' => 'qwer***', - ], - 'StorageClass' => [ - 'description' => 'Storage type. Values: '."\n" - .'- **Standard**: Standard. '."\n" - .'- **Archive**: Archive. '."\n" - .'- **ColdArchive**: Cold Archive.', - 'type' => 'string', - 'example' => 'STANDARD', - ], - 'ArchiveTime' => [ - 'description' => 'Time to archive', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1640334062', - ], - 'UseCommonNas' => [ - 'description' => 'Whether to use local NAS.', - 'type' => 'boolean', - 'example' => 'false', - ], - 'Include' => [ - 'description' => 'Backup paths included in the backup job.', - 'type' => 'string', - 'example' => '[\\"/test/example_cn-huhehaote_3.txt\\", \\"/test/example_cn-huhehaote_9.txt\\", \\"/test/example_cn-huhehaote_5.txt\\", \\"/test/example_cn-huhehaote_1.txt\\", \\"/test/example_cn-huhehaote_7.txt\\"]', - ], - 'Exclude' => [ - 'description' => 'Backup paths not included in the backup job.', - 'type' => 'string', - 'example' => '[\\"/test/example_cn-hangzhou_7.txt\\", \\"/test/example_cn-hangzhou_1.txt\\", \\"/test/example_cn-hangzhou_3.txt\\", \\"/test/example_cn-hangzhou_9.txt\\", \\"/test/example_cn-hangzhou_6.txt\\"]', - ], - 'ProtectedDataSize' => [ - 'title' => '保护的源端数据量,单位Byte。当SourceType=ECS_FILE时,表示已保护的云盘容量。', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '42949672960', - ], - ], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '36A5CD24-****-****-****-5F30C3F1753F', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Code' => ['description' => 'The HTTP status code. A value of 200 indicates success.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The response message. The value is "successful" if the request was successful, or an error message if the request failed.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'PageNumber' => ['description' => 'The page number. Pages start from page 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'PageSize' => ['description' => 'The page size. Valid values: 1 to 99. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], + 'TotalCount' => ['description' => 'The total number of returned data sources.', 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''], + 'DataSources' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'IndexLevel' => ['description' => 'The index level. Valid values:'."\n" + ."\n" + .'- OFF: No index is created.'."\n" + ."\n" + .'- META: A metadata index is created.'."\n" + ."\n" + .'- ALL: A full-text index is created. This value is deprecated.', 'type' => 'string', 'example' => 'META', 'title' => ''], + 'Schedule' => ['description' => 'The analysis schedule. Archiving feature only. Format: `I|{startTime}|{interval}`. `{startTime}` is the start time as a UNIX timestamp in seconds. `{interval}` is the execution interval in ISO 8601 format. Example: PT1H for one hour, P1D for one day.', 'type' => 'string', 'example' => 'I|1729493847|P1D ', 'title' => ''], + 'DataSourceName' => ['description' => 'The data source name.', 'type' => 'string', 'example' => 'COMMON_NAS', 'title' => ''], + 'DataSourceId' => ['description' => 'The data source ID.', 'type' => 'string', 'example' => 'ds-000******2nqeo', 'title' => ''], + 'Options' => ['description' => 'The analysis options. Archiving feature only.', 'type' => 'string', 'example' => '{}', 'title' => ''], + 'SpeedLimit' => ['description' => 'The rate limit configuration. Archiving feature only.', 'type' => 'string', 'example' => '6:21:10240', 'title' => ''], + 'PlanId' => ['description' => 'The analysis plan ID. Archiving feature only.', 'type' => 'string', 'example' => 'plan-123***7890', 'title' => ''], + 'IndexUpdateTime' => ['description' => 'The time when the index was last updated. UNIX timestamp in seconds. Archiving feature only.', 'type' => 'boolean', 'example' => '1745454604', 'title' => ''], + 'Exclude' => ['description' => 'The paths excluded from analysis. Archiving feature only.', 'type' => 'string', 'example' => '['."\n" + .' "/home/alice/log"'."\n" + .']', 'title' => ''], + 'Indexing' => ['description' => 'Whether an index is being built. Archiving feature only.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], + 'UpdatedTime' => ['description' => 'The time when the data source was last updated. UNIX timestamp in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1745454604', 'title' => ''], + 'DataSourceType' => ['description' => 'The data source type.', 'type' => 'string', 'example' => 'COMMON_NAS', 'title' => ''], + 'ConnectionInfo' => ['description' => 'The connection information of the data source, which describes how to access the data source.', 'type' => 'string', 'example' => '{'."\n" + .' "dataServerAddresses": ['."\n" + .' {'."\n" + .' "host": "123.123.123.123",'."\n" + .' "port": "8080"'."\n" + .' }'."\n" + .' ],'."\n" + .' "sharePath": "/share",'."\n" + .' "mountOptions": "vers=3",'."\n" + .' "fileSystemType": "nfs"'."\n" + .'}', 'title' => ''], + 'IndexAvailable' => ['description' => 'Whether the index is available. Archiving feature only.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'CreatedTime' => ['description' => 'The time when the data source was created. UNIX timestamp in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1770257653', 'title' => ''], + 'Include' => ['description' => 'The paths included in the analysis. Archiving feature only.', 'type' => 'string', 'example' => '['."\n" + .' "/home/alice",'."\n" + .' "/home/bob"'."\n" + .']', 'title' => ''], + 'ClusterId' => ['description' => 'The client group ID used to access the data source.', 'type' => 'string', 'example' => 'cl-0003jyv******fsku5m', 'title' => ''], + 'Paths' => [ + 'type' => 'array', + 'items' => ['description' => 'An analysis path. Archiving feature only.', 'type' => 'string', 'example' => '/home', 'title' => ''], + 'description' => 'The analysis paths. Archiving feature only.', + 'title' => '', + 'example' => '', ], ], + 'description' => 'The details of a data source.', + 'title' => '', + 'example' => '', ], + 'description' => 'The data sources.', + 'title' => '', + 'example' => '', ], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"NextToken\\": \\"BE\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true,\\n \\"Limit\\": 10,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"TotalCount\\": 20,\\n \\"Snapshots\\": {\\n \\"Snapshot\\": [\\n {\\n \\"Status\\": \\"COMPLETE\\",\\n \\"SnapshotHash\\": \\"f2fe...\\",\\n \\"VaultId\\": \\"v-0003rf9m17pap3ltpqx5\\",\\n \\"ActualItems\\": 6,\\n \\"BackupType\\": \\"COMPLETE\\",\\n \\"CreateTime\\": 1607436917,\\n \\"ActualBytes\\": 600,\\n \\"SourceType\\": \\"ECS_FILE\\",\\n \\"Prefix\\": \\"example/\\",\\n \\"ClientId\\": \\"c-*********************\\",\\n \\"BytesTotal\\": 1000,\\n \\"ItemsDone\\": 8,\\n \\"CompleteTime\\": 1554347313,\\n \\"Retention\\": 7,\\n \\"CreatedTime\\": 1554347313,\\n \\"Bucket\\": \\"hbr-backup-oss\\",\\n \\"ParentSnapshotHash\\": \\"f2fe..\\",\\n \\"InstanceId\\": \\"i-*********************\\",\\n \\"FileSystemId\\": \\"005494\\",\\n \\"ErrorFile\\": \\"Item\\\\tError Message C:\\\\\\\\Program Files (x86)\\\\\\\\Symantec\\\\\\\\Symantec Endpoint Protection\\\\\\\\14.3.558.0000.105\\\\\\\\Bin\\\\\\\\service.dat\\\\tOpen: open \\\\\\\\\\\\\\\\?\\\\\\\\C:\\\\\\\\Program Files (x86)\\\\\\\\Symantec\\\\\\\\Symantec Endpoint Protection\\\\\\\\14.3.558.0000.105\\\\\\\\Bin\\\\\\\\service.dat: The process cannot access the file because it is being used by another process. C:\\\\\\\\ProgramData\\\\\\\\McAfee\\\\\\\\Agent\\\\\\\\data\\\\\\\\InstallerFiles\\\\\\\\172e8a3b04b7ab0fd0215f4fb7707e3744b37d83b6743b3eacb94447c74dc9af_contrib.ini\\\\tOpen: open \\\\\\\\\\\\\\\\?\\\\\\\\C:\\\\\\\\ProgramData\\\\\\\\McAfee\\\\\\\\Agent\\\\\\\\data\\\\\\\\InstallerFiles\\\\\\\\172e8a3b04b7ab0fd0215f4fb7707e3744b37d83b6743b3eacb94447c74dc9af_contrib.ini: Access is denied.\\",\\n \\"StartTime\\": 1554347313,\\n \\"UpdatedTime\\": 1554347313,\\n \\"SnapshotId\\": \\"s-*********************\\",\\n \\"JobId\\": \\"v-*********************\\",\\n \\"Path\\": \\"[\\\\\\"/home\\\\\\"]\\",\\n \\"ItemsTotal\\": 10,\\n \\"BytesDone\\": 800,\\n \\"Paths\\": {\\n \\"Path\\": [\\n \\"\\\\\\"/home\\\\\\"\\"\\n ]\\n },\\n \\"InstanceName\\": \\"instancename\\",\\n \\"TableName\\": \\"table2\\",\\n \\"RangeStart\\": 1642492553038,\\n \\"RangeEnd\\": 1642521709966,\\n \\"ExpireTime\\": 1640334062,\\n \\"SourceSnapshotHash\\": \\"qwer***\\",\\n \\"SourceParentSnapshotHash\\": \\"qwer***\\",\\n \\"StorageClass\\": \\"STANDARD\\",\\n \\"ArchiveTime\\": 1640334062,\\n \\"UseCommonNas\\": false,\\n \\"Include\\": \\"[\\\\\\\\\\\\\\"/test/example_cn-huhehaote_3.txt\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"/test/example_cn-huhehaote_9.txt\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"/test/example_cn-huhehaote_5.txt\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"/test/example_cn-huhehaote_1.txt\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"/test/example_cn-huhehaote_7.txt\\\\\\\\\\\\\\"]\\",\\n \\"Exclude\\": \\"[\\\\\\\\\\\\\\"/test/example_cn-hangzhou_7.txt\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"/test/example_cn-hangzhou_1.txt\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"/test/example_cn-hangzhou_3.txt\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"/test/example_cn-hangzhou_9.txt\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"/test/example_cn-hangzhou_6.txt\\\\\\\\\\\\\\"]\\",\\n \\"ProtectedDataSize\\": 42949672960\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<SearchHistoricalSnapshotsResponse>\\n <NextToken>BE</NextToken>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <Success>true</Success>\\n <Limit>10</Limit>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <TotalCount>20</TotalCount>\\n <Snapshots>\\n <Status>COMPLETE</Status>\\n <SnapshotHash>f2fe...</SnapshotHash>\\n <VaultId>v-0003rf9m17pap3ltpqx5</VaultId>\\n <ActualItems>6</ActualItems>\\n <BackupType>COMPLETE</BackupType>\\n <CreateTime>1607436917</CreateTime>\\n <ActualBytes>600</ActualBytes>\\n <SourceType>ECS_FILE</SourceType>\\n <Prefix>example/</Prefix>\\n <ClientId>c-*********************</ClientId>\\n <BytesTotal>1000</BytesTotal>\\n <ItemsDone>8</ItemsDone>\\n <CompleteTime>1554347313</CompleteTime>\\n <Retention>7</Retention>\\n <CreatedTime>1554347313</CreatedTime>\\n <Bucket>hbr-backup-oss</Bucket>\\n <ParentSnapshotHash>f2fe..</ParentSnapshotHash>\\n <InstanceId>i-*********************</InstanceId>\\n <FileSystemId>005494</FileSystemId>\\n <ErrorFile>Item\\tError Message C:\\\\Program Files (x86)\\\\Symantec\\\\Symantec Endpoint Protection\\\\14.3.558.0000.105\\\\Bin\\\\service.dat\\tOpen: open \\\\\\\\?\\\\C:\\\\Program Files (x86)\\\\Symantec\\\\Symantec Endpoint Protection\\\\14.3.558.0000.105\\\\Bin\\\\service.dat: The process cannot access the file because it is being used by another process. C:\\\\ProgramData\\\\McAfee\\\\Agent\\\\data\\\\InstallerFiles\\\\172e8a3b04b7ab0fd0215f4fb7707e3744b37d83b6743b3eacb94447c74dc9af_contrib.ini\\tOpen: open \\\\\\\\?\\\\C:\\\\ProgramData\\\\McAfee\\\\Agent\\\\data\\\\InstallerFiles\\\\172e8a3b04b7ab0fd0215f4fb7707e3744b37d83b6743b3eacb94447c74dc9af_contrib.ini: Access is denied.</ErrorFile>\\n <StartTime>1554347313</StartTime>\\n <UpdatedTime>1554347313</UpdatedTime>\\n <SnapshotId>s-*********************</SnapshotId>\\n <JobId>v-*********************</JobId>\\n <Path>[\\"/home\\"]</Path>\\n <ItemsTotal>10</ItemsTotal>\\n <BytesDone>800</BytesDone>\\n <Paths>\\"/home\\"</Paths>\\n <InstanceName>instancename</InstanceName>\\n <TableName>table2</TableName>\\n <RangeStart>1642492553038</RangeStart>\\n <RangeEnd>1642521709966</RangeEnd>\\n <ExpireTime>1640334062</ExpireTime>\\n </Snapshots>\\n</SearchHistoricalSnapshotsResponse>","errorExample":""}]', - 'title' => 'SearchHistoricalSnapshots', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - 'translator' => 'machine', - ], - 'DescribeUdmSnapshots' => [ - 'summary' => 'Queries the backup snapshots of an Elastic Compute Service (ECS) instance.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => 'DescribeDataSources', + 'summary' => 'Queries a list of data sources. Filter results by data source type, data source ID, data source name, or client group ID.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], + 'ramActions' => [], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"36A5CD24-****-****-****-5F30C3F1753F\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 20,\\n \\"DataSources\\": [\\n {\\n \\"IndexLevel\\": \\"META\\",\\n \\"Schedule\\": \\"I|1729493847|P1D\\\\t\\",\\n \\"DataSourceName\\": \\"COMMON_NAS\\",\\n \\"DataSourceId\\": \\"ds-000******2nqeo\\",\\n \\"Options\\": \\"{}\\",\\n \\"SpeedLimit\\": \\"6:21:10240\\",\\n \\"PlanId\\": \\"plan-123***7890\\",\\n \\"IndexUpdateTime\\": true,\\n \\"Exclude\\": \\"[\\\\n \\\\\\"/home/alice/log\\\\\\"\\\\n]\\",\\n \\"Indexing\\": false,\\n \\"UpdatedTime\\": 1745454604,\\n \\"DataSourceType\\": \\"COMMON_NAS\\",\\n \\"ConnectionInfo\\": \\"{\\\\n \\\\\\"dataServerAddresses\\\\\\": [\\\\n {\\\\n \\\\\\"host\\\\\\": \\\\\\"123.123.123.123\\\\\\",\\\\n \\\\\\"port\\\\\\": \\\\\\"8080\\\\\\"\\\\n }\\\\n ],\\\\n \\\\\\"sharePath\\\\\\": \\\\\\"/share\\\\\\",\\\\n \\\\\\"mountOptions\\\\\\": \\\\\\"vers=3\\\\\\",\\\\n \\\\\\"fileSystemType\\\\\\": \\\\\\"nfs\\\\\\"\\\\n}\\",\\n \\"IndexAvailable\\": true,\\n \\"CreatedTime\\": 1770257653,\\n \\"Include\\": \\"[\\\\n \\\\\\"/home/alice\\\\\\",\\\\n \\\\\\"/home/bob\\\\\\"\\\\n]\\",\\n \\"ClusterId\\": \\"cl-0003jyv******fsku5m\\",\\n \\"Paths\\": [\\n \\"/home\\"\\n ]\\n }\\n ]\\n}","type":"json"}]', + ], + 'DescribeHanaBackupPlans' => [ + 'summary' => 'Queries for one or more SAP HANA backup plans that match specified criteria.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', - 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', + 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeCode' => '95555', - 'abilityTreeNodes' => [ - 'FEATUREhbrB1KQ9G', - ], + 'abilityTreeCode' => '95518', + 'abilityTreeNodes' => ['FEATUREhbrI97IXK'], ], 'parameters' => [ [ - 'name' => 'SourceType', + 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the data source. Valid values:'."\n" - ."\n" - .'* **UDM_ECS**: ECS instance backup'."\n" - .'* **UDM_ECS_DISK**: disk backup subtask of ECS instance backup'."\n" - .'* **UDM_DISK**: disk backup'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'UDM_ECS', - ], + 'schema' => ['description' => 'The ID of the backup vault.', 'type' => 'string', 'required' => false, 'example' => 'v-000i4lg4kz******ahl', 'title' => ''], ], [ - 'name' => 'StartTime', + 'name' => 'ClusterId', 'in' => 'query', - 'schema' => [ - 'description' => 'The beginning of the time range to query. The value must be a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'docRequired' => true, - 'example' => '1642057551', - ], + 'schema' => ['description' => 'The ID of the SAP HANA instance.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cl-000chxz******lz7bk', 'title' => ''], ], [ - 'name' => 'EndTime', + 'name' => 'PageNumber', 'in' => 'query', - 'schema' => [ - 'description' => 'The end of the time range to query. The value must be a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'docRequired' => true, - 'example' => '1643092168', - ], + 'schema' => ['description' => 'The page number. The value must be a number that starts from 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''], ], [ - 'name' => 'UdmRegionId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the region where the ECS instance resides.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-hangzhou', - ], - ], - [ - 'name' => 'InstanceId', + 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the ECS instance.'."\n", - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 'i-bp18x2k7sw925ir7ofh8', - ], + 'schema' => ['description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], ], [ - 'name' => 'DiskId', + 'name' => 'DatabaseName', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the disk.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'd-bp1560750pclffpzxy70', - ], + 'schema' => ['description' => 'The name of the database.', 'type' => 'string', 'required' => false, 'example' => 'SYSTEMDB', 'title' => ''], ], [ - 'name' => 'JobId', + 'name' => 'ResourceGroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup job.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'job-*********************', - ], - ], - [ - 'name' => 'SnapshotIds', - 'in' => 'formData', - 'style' => 'json', - 'schema' => [ - 'description' => 'The list of backup snapshots.'."\n", - 'type' => 'object', - 'required' => false, - 'example' => '[\\"s-000e3vhhu62xsm6v92r0\\"]', - ], + 'schema' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmvywqfey5njq', 'title' => ''], ], ], 'responses' => [ @@ -8817,714 +6289,286 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '51CDEECB-7001-51CC-94AC-2A0F2A4B71D2', - ], - 'TotalCount' => [ - 'description' => 'The total number of backup snapshots.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '3', - ], - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Snapshots' => [ - 'description' => 'The details about snapshots.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The details about snapshots.'."\n", - 'type' => 'object', - 'properties' => [ - 'Status' => [ - 'description' => 'The status of the backup job. Valid values:'."\n" - ."\n" - .'* **COMPLETE**: The backup job is completed.'."\n" - .'* **PARTIAL_COMPLETE**: The backup job is partially completed.'."\n" - .'* **FAILED**: The backup job has failed.'."\n", - 'type' => 'string', - 'example' => 'COMPLETE', - ], - 'SnapshotHash' => [ - 'description' => 'The hash value of the backup snapshot.'."\n", - 'type' => 'string', - 'example' => 'f2fe...', - ], - 'BackupType' => [ - 'description' => 'The backup type. Valid value: **COMPLETE**, which indicates full backup.'."\n", - 'type' => 'string', - 'example' => 'COMPLETE', - ], - 'CreateTime' => [ - 'description' => 'The time when the backup snapshot was created.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1607436917', - ], - 'ActualBytes' => [ - 'description' => 'The size of the backup snapshot. Unit: bytes.'."\n", - 'type' => 'string', - 'example' => '600', - ], - 'SourceType' => [ - 'description' => 'The type of the data source. Valid values:'."\n" - ."\n" - .'* **UDM_ECS**: ECS instance backup'."\n" - .'* **UDM_ECS_DISK**: disk backup subtask of ECS instance backup'."\n" - .'* **UDM_DISK**: disk backup'."\n", - 'type' => 'string', - 'example' => 'UDM_ECS', - ], - 'Prefix' => [ - 'description' => 'The prefix of the backup snapshot.'."\n", - 'type' => 'string', - 'example' => 'example/', - ], - 'DiskId' => [ - 'description' => 'The ID of the cloud disk or local disk.'."\n", - 'type' => 'string', - 'example' => 'd-2ze86h5fga5rfwxxa8ef', - ], - 'BytesTotal' => [ - 'description' => 'The total amount of data. Unit: bytes.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1000', - ], - 'NativeSnapshotInfo' => [ - 'description' => 'The snapshot information.'."\n", - 'type' => 'string', - 'example' => '{'."\n" - .' "sourceDiskId":"d-bp17misjuy636t82v7b0",'."\n" - .' "lastModifiedTime":"2022-03-09T11:35:12Z",'."\n" - .' "snapshotSN":"64588-429372675-857161235",'."\n" - .' "snapshotId":"s-bp1fbtwv3e6xr6wpe9e0",'."\n" - .' "creationTime":"2022-03-09T11:31:12Z",'."\n" - .' "snapshotType":"user",'."\n" - .' "usage":"none",'."\n" - .' "description":"",'."\n" - .' "sourceStorageType":"disk",'."\n" - .' "tags":['."\n" - .' {'."\n" - .' "tagValue":"job-0007e0wqjl0imbrtkmnm",'."\n" - .' "tagKey":"HBR JobId"'."\n" - .' }'."\n" - .' ],'."\n" - .' "productCode":"",'."\n" - .' "encrypted":false,'."\n" - .' "sourceDiskType":"system",'."\n" - .' "retentionDays":30,'."\n" - .' "snapshotName":"Created-from-HBR-job:job-0007e0wqjl0imbrtkmnm",'."\n" - .' "kMSKeyId":"",'."\n" - .' "progress":"100%",'."\n" - .' "category":"standard",'."\n" - .' "sourceDiskSize":"20",'."\n" - .' "status":"accomplished"'."\n" - .' }', - ], - 'CompleteTime' => [ - 'description' => 'The time when the backup snapshot was completed. The value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1646895666', - ], - 'Retention' => [ - 'description' => 'The retention period of the backup snapshot. Unit: days.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '7', - ], - 'CreatedTime' => [ - 'description' => 'The time when the backup snapshot was created. The value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1642496679', - ], - 'RealSnapshotTime' => [ - 'description' => 'The timestamp of the backup snapshot. The value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1642496679', - ], - 'ParentSnapshotHash' => [ - 'description' => 'The hash value of the parent backup snapshot.'."\n", - 'type' => 'string', - 'example' => 'f2fe..', - ], - 'InstanceId' => [ - 'description' => 'The ID of the ECS instance.'."\n", - 'type' => 'string', - 'example' => 'i-bp1f0pe78dxizrsdcgxd', - ], - 'StartTime' => [ - 'description' => 'The time when the backup snapshot was created. The value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1554347313', - ], - 'UpdatedTime' => [ - 'description' => 'The time when the backup snapshot was updated. The value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1642496679', - ], - 'SnapshotId' => [ - 'description' => 'The ID of the backup snapshot.'."\n", - 'type' => 'string', - 'example' => 's-00047mxg17p26*****b', - ], - 'JobId' => [ - 'description' => 'The ID of the backup job.'."\n", - 'type' => 'string', - 'example' => 'job-00030j3chkt******2', - ], - 'NativeSnapshotId' => [ - 'description' => 'The ID of the backup snapshot.'."\n", - 'type' => 'string', - 'example' => 's-00047mg17p26x*****b', - ], - 'Detail' => [ - 'description' => 'The snapshot details.'."\n", + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'F029C1C7-26B6-5ADD-A73E-D85CCD7C73A9', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request was successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The message that is returned. If the request was successful, "successful" is returned. If the request failed, an error message is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'PageNumber' => ['description' => 'The page number. The value must be a number that starts from 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'PageSize' => ['description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], + 'TotalCount' => ['description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int64', 'example' => '6', 'title' => ''], + 'HanaBackupPlans' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'HanaBackupPlan' => [ + 'description' => 'The details of the backup plan.', + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the backup plan.', 'type' => 'object', 'properties' => [ - 'DiskDevName' => [ - 'description' => 'The name of the disk.'."\n", - 'type' => 'string', - 'example' => '/dev/xvdb', - ], - 'DowngradeReason' => [ - 'description' => 'The reason for the downgrade.'."\n", - 'type' => 'string', - 'example' => 'HBR.NoRamRoleBound', - ], - 'OsDiskId' => [ - 'description' => 'The ID of the system disk.'."\n", - 'type' => 'string', - 'example' => 'd-bp1e6427vhd320hifvc', - ], - 'OsName' => [ - 'description' => 'The name of the operating system.'."\n", - 'type' => 'string', - 'example' => 'Debian 10.10 64-bit (UEFI)', - ], - 'ContainOsDisk' => [ - 'description' => 'Indicates whether the system disk is included.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'ConsistentLevel' => [ - 'description' => 'The consistency level.'."\n", - 'type' => 'string', - 'example' => 'CRASH', - ], - 'VmName' => [ - 'description' => 'The name of the instance.'."\n", - 'type' => 'string', - 'example' => 'BNSHSVR42 IPGUARD', - ], - 'DiskHbrSnapshotIdWithDeviceMap' => [ - 'description' => 'The mapping between the device and the recovery point ID.'."\n", - 'type' => 'object', - 'example' => '{'."\n" - .' "/dev/xvdb":"s-0000u7y6wm3v1e7hxh5a", '."\n" - .' "/dev/xvda":"s-0004bl6yr5pt89jjsv5a"'."\n" - .'}', - ], - 'InstanceIdWithDiskIdListMap' => [ - 'description' => 'The mapping between the instance ID and the disk ID.'."\n", - 'type' => 'object', - 'example' => '{'."\n" - .' "i-bp1dlp0keohh7ids4uo6":"d-bp1e6427vhd320hifvs", '."\n" - .' "i-bp1dlp0keohh7ids4uo6":"d-bp1e6427vhd320hifvd"'."\n" - .'}', - ], - 'InstanceName' => [ - 'description' => 'The name of the instance.'."\n", - 'type' => 'string', - 'example' => 'swh-hbr', - ], - 'OsType' => [ - 'description' => 'The type of the operating system. Valid values: linux and windows.'."\n", - 'type' => 'string', - 'example' => 'windows', - ], - 'Platform' => [ - 'description' => 'The system platform.'."\n", - 'type' => 'string', - 'example' => 'CentOS', - ], - 'OsNameEn' => [ - 'description' => 'The English name of the operating system.'."\n", - 'type' => 'string', - 'example' => 'Debian 11.1 64 bit', - ], - 'HostName' => [ - 'description' => 'The hostname.'."\n", - 'type' => 'string', - 'example' => 'iZbpxxxxxxxxxxxxxxxxe2Z', - ], - 'SystemDisk' => [ - 'description' => 'Indicates whether the disk is a system disk.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'DiskIdList' => [ - 'description' => 'The IDs of the disks that are backed up at the recovery point.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the disk that is backed up at the recovery point.'."\n", - 'type' => 'string', - 'example' => 'd-bp1e6427vhd320hifvs', - ], - ], - 'NativeSnapshotIdList' => [ - 'description' => 'The list of snapshot IDs, corresponding to DiskIdList.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the backup snapshot.'."\n", - 'type' => 'string', - 'example' => 's-0004bl6yr5pt89jjsv5a', - ], - ], - 'SnapshotGroupId' => [ - 'description' => 'The ID of the snapshot group.'."\n", - 'type' => 'string', - 'example' => 'ssg-uf6856txcaq31uj***', - ], - 'InstanceType' => [ - 'description' => 'The specifications of the source instance.'."\n", - 'type' => 'string', - 'example' => 'ecs.c6.xlarge', - ], - 'DiskCategory' => [ - 'description' => 'The type of the source disk.'."\n", - 'type' => 'string', - 'example' => 'cloud_essd', - ], - 'PerformanceLevel' => [ - 'description' => 'The performance level of the source disk.'."\n", - 'type' => 'string', - 'example' => 'PL0', - ], - 'InstantAccess' => [ - 'description' => 'Indicates whether the backup is created by the instant clone feature.'."\n", - 'type' => 'boolean', - 'example' => 'false', - ], + 'VaultId' => ['description' => 'The ID of the backup vault.', 'type' => 'string', 'example' => 'v-000csihw82pqkd7hcjws', 'title' => ''], + 'BackupPrefix' => ['description' => 'The backup prefix.', 'type' => 'string', 'example' => 'COMPLETE_DATA_BACKUP', 'title' => ''], + 'Schedule' => ['description' => 'The backup policy. Format: `I|{startTime}|{interval}`. The system runs the first backup job at a point in time that is specified by `{startTime}` and repeats the backup job at an interval that is specified by `{interval}`. The system does not run a backup job to compensate for a missed backup job. If a backup job is not complete, the next backup job is not triggered. For example, `I|1631685600|P1D` indicates that the system runs a backup job every day, starting from 2021-09-15 14:00:00.'."\n" + ."\n" + .'- startTime: The start time of the backup job. This value is a UNIX timestamp. Unit: seconds.'."\n" + ."\n" + .'- interval: The interval of the backup job. This value follows the ISO 8601 standard. For example, PT1H indicates that the backup job is run every hour. P1D indicates that the backup job is run every day.', 'type' => 'string', 'example' => 'I|1602673264|P1D', 'title' => ''], + 'DatabaseName' => ['description' => 'The name of the database.', 'type' => 'string', 'example' => 'SYSTEMDB', 'title' => ''], + 'BackupType' => ['description' => 'The backup type.'."\n" + ."\n" + .'- COMPLETE: full backup.'."\n" + ."\n" + .'- INCREMENTAL: incremental backup.'."\n" + ."\n" + .'- DIFFERENTIAL: differential backup.', 'type' => 'string', 'example' => 'COMPLETE', 'title' => ''], + 'Disabled' => ['description' => 'Indicates whether the backup plan is paused.'."\n" + ."\n" + .'- true: The backup plan is paused.'."\n" + ."\n" + .'- false: The backup plan is not paused.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], + 'PlanId' => ['description' => 'The ID of the backup plan.', 'type' => 'string', 'example' => 'pl-0000tnyndg3ne5m4ubeu', 'title' => ''], + 'ClusterId' => ['description' => 'The ID of the SAP HANA instance.', 'type' => 'string', 'example' => 'cl-0002scknka*****', 'title' => ''], + 'PlanName' => ['description' => 'The name of the backup plan.', 'type' => 'string', 'example' => 'plan-20220118-141153', 'title' => ''], + 'BusinessStatus' => ['description' => 'The business status.', 'type' => 'string', 'title' => '', 'example' => 'ACTIVE'], ], + 'title' => '', + 'example' => '', ], - 'AdvancedRetentionType' => [ - 'description' => 'The special retention type, which is valid only for special backups. Valid values:'."\n" - ."\n" - .'* **WEEKLY**: weekly backups'."\n" - .'* **MONTHLY**: monthly backups'."\n" - .'* **YEARLY**: yearly backups'."\n", - 'type' => 'string', - 'example' => 'WEEKLY', - ], - 'ExpireTime' => [ - 'description' => 'The expiration time of the backup.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1640334062', - ], - 'CanBeDeleted' => [ - 'description' => 'Indicates whether the disk backup point can be deleted. This parameter is valid only if the value of SourceType is UDM_ECS_DISK.'."\n", - 'type' => 'boolean', - 'example' => 'false', - ], - 'ArchiveStatus' => [ - 'type' => 'string', - ], - 'ArchiveErrorMessage' => [ - 'type' => 'string', - ], - 'ArchiveTriggerTime' => [ - 'type' => 'integer', - 'format' => 'int64', - ], + 'title' => '', + 'example' => '', ], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"51CDEECB-7001-51CC-94AC-2A0F2A4B71D2\\",\\n \\"TotalCount\\": 3,\\n \\"Success\\": true,\\n \\"Snapshots\\": [\\n {\\n \\"Status\\": \\"COMPLETE\\",\\n \\"SnapshotHash\\": \\"f2fe...\\",\\n \\"BackupType\\": \\"COMPLETE\\",\\n \\"CreateTime\\": 1607436917,\\n \\"ActualBytes\\": \\"600\\",\\n \\"SourceType\\": \\"UDM_ECS\\",\\n \\"Prefix\\": \\"example/\\",\\n \\"DiskId\\": \\"d-2ze86h5fga5rfwxxa8ef\\",\\n \\"BytesTotal\\": 1000,\\n \\"NativeSnapshotInfo\\": \\"{\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"sourceDiskId\\\\\\":\\\\\\"d-bp17misjuy636t82v7b0\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"lastModifiedTime\\\\\\":\\\\\\"2022-03-09T11:35:12Z\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"snapshotSN\\\\\\":\\\\\\"64588-429372675-857161235\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"snapshotId\\\\\\":\\\\\\"s-bp1fbtwv3e6xr6wpe9e0\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"creationTime\\\\\\":\\\\\\"2022-03-09T11:31:12Z\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"snapshotType\\\\\\":\\\\\\"user\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"usage\\\\\\":\\\\\\"none\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"description\\\\\\":\\\\\\"\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"sourceStorageType\\\\\\":\\\\\\"disk\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"tags\\\\\\":[\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t{\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"tagValue\\\\\\":\\\\\\"job-0007e0wqjl0imbrtkmnm\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"tagKey\\\\\\":\\\\\\"HBR JobId\\\\\\"\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t],\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"productCode\\\\\\":\\\\\\"\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"encrypted\\\\\\":false,\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"sourceDiskType\\\\\\":\\\\\\"system\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"retentionDays\\\\\\":30,\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"snapshotName\\\\\\":\\\\\\"Created-from-HBR-job:job-0007e0wqjl0imbrtkmnm\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"kMSKeyId\\\\\\":\\\\\\"\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"progress\\\\\\":\\\\\\"100%\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"category\\\\\\":\\\\\\"standard\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"sourceDiskSize\\\\\\":\\\\\\"20\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"status\\\\\\":\\\\\\"accomplished\\\\\\"\\\\n\\\\t\\\\t\\\\t\\\\t}\\",\\n \\"CompleteTime\\": 1646895666,\\n \\"Retention\\": 7,\\n \\"CreatedTime\\": 1642496679,\\n \\"RealSnapshotTime\\": 1642496679,\\n \\"ParentSnapshotHash\\": \\"f2fe..\\",\\n \\"InstanceId\\": \\"i-bp1f0pe78dxizrsdcgxd\\",\\n \\"StartTime\\": 1554347313,\\n \\"UpdatedTime\\": 1642496679,\\n \\"SnapshotId\\": \\"s-00047mxg17p26*****b\\",\\n \\"JobId\\": \\"job-00030j3chkt******2\\",\\n \\"NativeSnapshotId\\": \\"s-00047mg17p26x*****b\\",\\n \\"Detail\\": {\\n \\"DiskDevName\\": \\"/dev/xvdb\\",\\n \\"DowngradeReason\\": \\"HBR.NoRamRoleBound\\",\\n \\"OsDiskId\\": \\"d-bp1e6427vhd320hifvc\\",\\n \\"OsName\\": \\"Debian 10.10 64-bit (UEFI)\\",\\n \\"ContainOsDisk\\": true,\\n \\"ConsistentLevel\\": \\"CRASH\\",\\n \\"VmName\\": \\"BNSHSVR42 IPGUARD\\",\\n \\"DiskHbrSnapshotIdWithDeviceMap\\": {\\n \\"/dev/xvdb\\": \\"s-0000u7y6wm3v1e7hxh5a\\",\\n \\"/dev/xvda\\": \\"s-0004bl6yr5pt89jjsv5a\\"\\n },\\n \\"InstanceIdWithDiskIdListMap\\": {\\n \\"i-bp1dlp0keohh7ids4uo6\\": \\"d-bp1e6427vhd320hifvd\\"\\n },\\n \\"InstanceName\\": \\"swh-hbr\\",\\n \\"OsType\\": \\"windows\\",\\n \\"Platform\\": \\"CentOS\\",\\n \\"OsNameEn\\": \\"Debian 11.1 64 bit\\",\\n \\"HostName\\": \\"iZbpxxxxxxxxxxxxxxxxe2Z\\",\\n \\"SystemDisk\\": true,\\n \\"DiskIdList\\": [\\n \\"d-bp1e6427vhd320hifvs\\"\\n ],\\n \\"NativeSnapshotIdList\\": [\\n \\"s-0004bl6yr5pt89jjsv5a\\"\\n ],\\n \\"SnapshotGroupId\\": \\"ssg-uf6856txcaq31uj***\\",\\n \\"InstanceType\\": \\"ecs.c6.xlarge\\",\\n \\"DiskCategory\\": \\"cloud_essd\\",\\n \\"PerformanceLevel\\": \\"PL0\\",\\n \\"InstantAccess\\": false\\n },\\n \\"AdvancedRetentionType\\": \\"WEEKLY\\",\\n \\"ExpireTime\\": 1640334062,\\n \\"CanBeDeleted\\": false,\\n \\"ArchiveStatus\\": \\"ARCHIVED\\",\\n \\"ArchiveErrorMessage\\": \\"InternalError\\",\\n \\"ArchiveTriggerTime\\": 1763373304\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeUdmSnapshotsResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>51CDEECB-7001-51CC-94AC-2A0F2A4B71D2</RequestId>\\n <TotalCount>3</TotalCount>\\n <Success>true</Success>\\n <Snapshots>\\n <Status>COMPLETE</Status>\\n <SnapshotHash>f2fe...</SnapshotHash>\\n <BackupType>COMPLETE</BackupType>\\n <CreateTime>1607436917</CreateTime>\\n <ActualBytes>600</ActualBytes>\\n <SourceType>UDM_ECS</SourceType>\\n <Prefix>example/</Prefix>\\n <DiskId>d-2ze86h5fga5rfwxxa8ef</DiskId>\\n <BytesTotal>1000</BytesTotal>\\n <NativeSnapshotInfo>{\\n\\t\\t\\t\\t\\t\\"sourceDiskId\\":\\"d-bp17misjuy636t82v7b0\\",\\n\\t\\t\\t\\t\\t\\"lastModifiedTime\\":\\"2022-03-09T11:35:12Z\\",\\n\\t\\t\\t\\t\\t\\"snapshotSN\\":\\"64588-429372675-857161235\\",\\n\\t\\t\\t\\t\\t\\"snapshotId\\":\\"s-bp1fbtwv3e6xr6wpe9e0\\",\\n\\t\\t\\t\\t\\t\\"creationTime\\":\\"2022-03-09T11:31:12Z\\",\\n\\t\\t\\t\\t\\t\\"snapshotType\\":\\"user\\",\\n\\t\\t\\t\\t\\t\\"usage\\":\\"none\\",\\n\\t\\t\\t\\t\\t\\"description\\":\\"\\",\\n\\t\\t\\t\\t\\t\\"sourceStorageType\\":\\"disk\\",\\n\\t\\t\\t\\t\\t\\"tags\\":[\\n\\t\\t\\t\\t\\t\\t{\\n\\t\\t\\t\\t\\t\\t\\t\\"tagValue\\":\\"job-0007e0wqjl0imbrtkmnm\\",\\n\\t\\t\\t\\t\\t\\t\\t\\"tagKey\\":\\"HBR JobId\\"\\n\\t\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t\\t],\\n\\t\\t\\t\\t\\t\\"productCode\\":\\"\\",\\n\\t\\t\\t\\t\\t\\"encrypted\\":false,\\n\\t\\t\\t\\t\\t\\"sourceDiskType\\":\\"system\\",\\n\\t\\t\\t\\t\\t\\"retentionDays\\":30,\\n\\t\\t\\t\\t\\t\\"snapshotName\\":\\"Created-from-HBR-job:job-0007e0wqjl0imbrtkmnm\\",\\n\\t\\t\\t\\t\\t\\"kMSKeyId\\":\\"\\",\\n\\t\\t\\t\\t\\t\\"progress\\":\\"100%\\",\\n\\t\\t\\t\\t\\t\\"category\\":\\"standard\\",\\n\\t\\t\\t\\t\\t\\"sourceDiskSize\\":\\"20\\",\\n\\t\\t\\t\\t\\t\\"status\\":\\"accomplished\\"\\n\\t\\t\\t\\t}</NativeSnapshotInfo>\\n <CompleteTime>1646895666</CompleteTime>\\n <Retention>7</Retention>\\n <CreatedTime>1642496679</CreatedTime>\\n <RealSnapshotTime>1642496679</RealSnapshotTime>\\n <ParentSnapshotHash>f2fe..</ParentSnapshotHash>\\n <InstanceId>i-bp1f0pe78dxizrsdcgxd</InstanceId>\\n <StartTime>1554347313</StartTime>\\n <UpdatedTime>1642496679</UpdatedTime>\\n <SnapshotId>s-00047mxg17p26*****b</SnapshotId>\\n <JobId>job-00030j3chkt******2</JobId>\\n <NativeSnapshotId>s-00047mg17p26x*****b</NativeSnapshotId>\\n <Detail>\\n <DiskDevName>/dev/xvdb</DiskDevName>\\n <DowngradeReason>HBR.NoRamRoleBound</DowngradeReason>\\n <OsDiskId>d-bp1e6427vhd320hifvc</OsDiskId>\\n <OsName>Debian 10.10 64-bit (UEFI)</OsName>\\n <ContainOsDisk>true</ContainOsDisk>\\n <ConsistentLevel>CRASH</ConsistentLevel>\\n <VmName>BNSHSVR42 IPGUARD</VmName>\\n <InstanceName>swh-hbr</InstanceName>\\n <OsType>windows</OsType>\\n <Platform>CentOS</Platform>\\n <OsNameEn>Debian 11.1 64 bit</OsNameEn>\\n <SystemDisk>true</SystemDisk>\\n <DiskIdList>d-bp1e6427vhd320hifvs</DiskIdList>\\n <NativeSnapshotIdList>s-0004bl6yr5pt89jjsv5a</NativeSnapshotIdList>\\n <SnapshotGroupId>ssg-uf6856txcaq31uj***</SnapshotGroupId>\\n </Detail>\\n </Snapshots>\\n</DescribeUdmSnapshotsResponse>","errorExample":""}]', - 'title' => 'DescribeUdmSnapshots', - ], - 'CreateRestoreJob' => [ - 'summary' => 'Create a restore job.', - 'methods' => [ - 'post', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F029C1C7-26B6-5ADD-A73E-D85CCD7C73A9\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 6,\\n \\"HanaBackupPlans\\": {\\n \\"HanaBackupPlan\\": [\\n {\\n \\"VaultId\\": \\"v-000csihw82pqkd7hcjws\\",\\n \\"BackupPrefix\\": \\"COMPLETE_DATA_BACKUP\\",\\n \\"Schedule\\": \\"I|1602673264|P1D\\",\\n \\"DatabaseName\\": \\"SYSTEMDB\\",\\n \\"BackupType\\": \\"COMPLETE\\",\\n \\"Disabled\\": false,\\n \\"PlanId\\": \\"pl-0000tnyndg3ne5m4ubeu\\",\\n \\"ClusterId\\": \\"cl-0002scknka*****\\",\\n \\"PlanName\\": \\"plan-20220118-141153\\",\\n \\"BusinessStatus\\": \\"ACTIVE\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'DescribeHanaBackupPlans', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeHanaBackupPlans'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeHanaBackupPlans', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'DescribeHanaBackupSetting' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'create', - 'riskType' => 'none', - 'chargeType' => 'paid', - 'abilityTreeCode' => '95447', - 'abilityTreeNodes' => [ - 'FEATUREhbr56LH1C', - 'FEATUREhbrS7MI6C', - 'FEATUREhbrFWIWBG', - 'FEATUREhbrB1KQ9G', - 'FEATUREhbrQ3MV3B', - 'FEATUREhbr3BJQCT', - 'FEATUREhbrF83GXN', - ], - ], + 'operationType' => 'read', + 'systemTags' => ['operationType' => 'get'], 'parameters' => [ [ - 'name' => 'RestoreType', - 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the restore destination data source. Possible values:'."\n" - .' - **ECS_FILE**: Restore to ECS file.'."\n" - .' - **OSS**: Restore to Alibaba Cloud OSS.'."\n" - .' - **NAS**: Restore to Alibaba Cloud NAS.'."\n" - .' - **OTS_TABLE**: Restore to Alibaba Cloud OTS.'."\n" - .' - **UDM_ECS_ROLLBACK**: Restore to Alibaba Cloud ECS whole machine.', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'ECS_FILE', - ], - ], - [ 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault that the snapshot belongs to.', - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 'v-*********************', - ], + 'schema' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'required' => false, 'example' => 'v-000css******za5uyqr'], ], [ - 'name' => 'SnapshotId', + 'name' => 'ClusterId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup snapshot.', - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 's-********************', - ], + 'schema' => ['description' => 'The ID of the SAP HANA instance.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cl-00068btz******oku'], ], [ - 'name' => 'SnapshotHash', + 'name' => 'DatabaseName', 'in' => 'query', - 'schema' => [ - 'description' => 'The HASH value of the backup snapshot.', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'f2fe...', - ], + 'schema' => ['description' => 'The name of the database.'."\n", 'type' => 'string', 'required' => false, 'example' => 'SYSTEMDB'], ], - [ - 'name' => 'SourceType', - 'in' => 'query', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The type of the data source. Possible values:'."\n" - .' - **ECS_FILE**: Restore ECS file.'."\n" - .' - **OSS**: Restore Alibaba Cloud OSS.'."\n" - .' - **NAS**: Restore Alibaba Cloud NAS.'."\n" - .' - **OTS_TABLE**: Restore to Alibaba Cloud OTS.'."\n" - .' - **UDM_ECS**: Restore to Alibaba Cloud ECS whole machine.', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'ECS_FILE', + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => '9D0DB5BC-5071-5ADF-BCD1-14EBB0C17C54'], + 'Success' => ['description' => 'Indicates whether the call is successful. Valid values:'."\n" + ."\n" + .'* true: The call is successful.'."\n" + .'* false: The call fails.'."\n", 'type' => 'boolean', 'example' => 'true'], + 'HanaBackupSetting' => [ + 'description' => 'The backup settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'DatabaseName' => ['description' => 'The name of the database.'."\n", 'type' => 'string', 'example' => 'SYSTEMDB'], + 'LogBackupUsingBackint' => ['description' => 'Indicates whether Backint is used to back up logs. Valid values:'."\n" + ."\n" + .'* true: Backint is used to back up logs.'."\n" + .'* false: Backint is not used to back up logs.'."\n", 'type' => 'boolean', 'example' => 'true'], + 'CatalogBackupParameterFile' => ['description' => 'The configuration file for catalog backup.'."\n", 'type' => 'string', 'example' => '/usr/sap/SID/SYS/global/hdb/opt/hdbconfig/param'], + 'CatalogBackupUsingBackint' => ['description' => 'Indicates whether Backint is used to back up catalogs. Valid values:'."\n" + ."\n" + .'* true: Backint is used to back up catalogs.'."\n" + .'* false: Backint is not used to back up catalogs.'."\n", 'type' => 'boolean', 'example' => 'false'], + 'DataBackupParameterFile' => ['description' => 'The configuration file for data backup.'."\n", 'type' => 'string', 'example' => '/usr/sap/SID/SYS/global/hdb/opt/hdbconfig/param'], + 'LogBackupTimeout' => ['description' => 'The interval at which logs are backed up. Unit: seconds.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '900'], + 'EnableAutoLogBackup' => ['description' => 'Indicates whether automatic log backup is enabled. Valid values:'."\n" + ."\n" + .'* **true**: Automatic log backup is enabled.'."\n" + .'* **false**: Automatic log backup is disabled.'."\n", 'type' => 'boolean', 'example' => 'true'], + 'LogBackupParameterFile' => ['description' => 'The configuration file for log backup.'."\n", 'type' => 'string', 'example' => '/usr/sap/SID/SYS/global/hdb/opt/hdbconfig/param'], + ], + ], + ], ], ], - [ - 'name' => 'Options', - 'in' => 'query', - 'schema' => [ - 'description' => 'Parameters for the restore job.', - 'type' => 'string', - 'required' => false, - 'example' => '{\\"includes\\":[],\\"excludes\\":[],\\"conflictPolicy\\":\\"OVERWRITE_EXISTING\\"}', - ], + ], + 'title' => 'DescribeHanaBackupSetting', + 'summary' => 'Queries the backup parameters of an SAP HANA database.', + 'description' => 'If you want to query the backup retention period of a database, you can call the DescribeHanaRetentionSetting operation.'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeHanaBackupSetting'], ], + ], + 'ramActions' => [], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"9D0DB5BC-5071-5ADF-BCD1-14EBB0C17C54\\",\\n \\"Success\\": true,\\n \\"HanaBackupSetting\\": {\\n \\"DatabaseName\\": \\"SYSTEMDB\\",\\n \\"LogBackupUsingBackint\\": true,\\n \\"CatalogBackupParameterFile\\": \\"/usr/sap/SID/SYS/global/hdb/opt/hdbconfig/param\\",\\n \\"CatalogBackupUsingBackint\\": false,\\n \\"DataBackupParameterFile\\": \\"/usr/sap/SID/SYS/global/hdb/opt/hdbconfig/param\\",\\n \\"LogBackupTimeout\\": 900,\\n \\"EnableAutoLogBackup\\": true,\\n \\"LogBackupParameterFile\\": \\"/usr/sap/SID/SYS/global/hdb/opt/hdbconfig/param\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeHanaBackupSettingResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>9D0DB5BC-5071-5ADF-BCD1-14EBB0C17C54</RequestId>\\n <Success>true</Success>\\n <HanaBackupSetting>\\n <DatabaseName>SYSTEMDB</DatabaseName>\\n <LogBackupUsingBackint>true</LogBackupUsingBackint>\\n <CatalogBackupParameterFile>/usr/sap/SID/SYS/global/hdb/opt/hdbconfig/param</CatalogBackupParameterFile>\\n <CatalogBackupUsingBackint>false</CatalogBackupUsingBackint>\\n <DataBackupParameterFile>/usr/sap/SID/SYS/global/hdb/opt/hdbconfig/param</DataBackupParameterFile>\\n <LogBackupTimeout>900</LogBackupTimeout>\\n <EnableAutoLogBackup>true</EnableAutoLogBackup>\\n <LogBackupParameterFile>/usr/sap/SID/SYS/global/hdb/opt/hdbconfig/param</LogBackupParameterFile>\\n </HanaBackupSetting>\\n</DescribeHanaBackupSettingResponse>","errorExample":""}]', + ], + 'DescribeHanaBackupsAsync' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'TargetFileSystemId', - 'in' => 'query', - 'schema' => [ - 'description' => 'Valid only when **RestoreType** is **NAS**. Indicates the ID of the file system at the restore destination.', - 'type' => 'string', - 'required' => false, - 'example' => '005494', - ], + 'AK' => [], ], + ], + 'operationType' => 'read', + 'systemTags' => ['operationType' => 'get'], + 'parameters' => [ [ - 'name' => 'TargetCreateTime', + 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'Valid only when **RestoreType** is **NAS**. Indicates the creation time of the file system at the restore destination.', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1554347313', - ], + 'schema' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'required' => false, 'example' => 'v-000270c******pi81'], ], [ - 'name' => 'TargetPath', - 'in' => 'formData', - 'schema' => [ - 'description' => 'Valid only when **RestoreType** is **ECS_FILE**. Indicates the file path at the restore destination.', - 'type' => 'string', - 'required' => false, - 'example' => 'C:\\', - ], - ], - [ - 'name' => 'TargetBucket', + 'name' => 'ClusterId', 'in' => 'query', - 'schema' => [ - 'description' => 'Valid only when **RestoreType** is **OSS**. Indicates the name of the OSS bucket at the restore destination.', - 'type' => 'string', - 'required' => false, - 'example' => 'hbr-backup-oss', - ], + 'schema' => ['description' => 'The ID of the SAP HANA instance.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cl-00098******yuqvu'], ], [ - 'name' => 'TargetPrefix', + 'name' => 'PageNumber', 'in' => 'query', - 'schema' => [ - 'description' => 'Valid only when **RestoreType** is **OSS**. Indicates the object prefix at the restore destination.', - 'type' => 'string', - 'required' => false, - 'example' => 'hbr', - ], + 'schema' => ['description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '1', 'default' => '1'], ], [ - 'name' => 'UdmDetail', + 'name' => 'PageSize', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'description' => 'The parameter is valid only when the SourceType is set to UDM_ECS. It represents the details of the entire machine backup and is a JSON string. Depending on the value of RestoreType, different details must be passed as follows:'."\n" - .'- **UDM_ECS_DISK**: ECS disk cloning.'."\n" - .' - **targetInstanceId**: string (required). Specifies the target ECS instance ID to which the cloned disk will be attached.'."\n" - .' - **diskCategory**: string (required). Specifies the type of the target disk.'."\n" - .' - **diskPerformanceLevel**: string. When diskCategory is "essd", this indicates the disk performance level, supporting PL0, PL1, PL2, and PL3, with PL1 as the default.'."\n" - .'- **UDM_ECS_DISK_ROLLBACK**: ECS disk rollback.'."\n" - .' - **sourceInstanceId**: string (required). Specifies the source ECS instance ID.'."\n" - .' - **forceRestore**: bool (default: false). Indicates whether to force restore. NOTE: If forceRestore is set to true, the disk restoration will proceed even if the backup disk has been unmounted from the original ECS instance or mounted to another instance. Exercise caution when using this option.'."\n" - .' - **bootAfterRestore**: bool (default: false). Indicates whether to start the ECS instance after restoration.'."\n" - .'- **UDM_ECS**: Full ECS cloning.'."\n" - .' - **bootAfterRestore**: bool (default: false). Indicates whether to start the ECS instance after restoration.'."\n" - .' - **diskCategory**: string (required). Specifies the type of the target disk.'."\n" - .' - **diskPerformanceLevel**: string. When diskCategory is "essd", this indicates the disk performance level (PL0/PL1/PL2/PL3), defaulting to PL1.'."\n" - .' - **instanceType**: string (required). Specifies the specification of the target ECS instance.'."\n" - .' - **restoredNetwork**: string (required). Specifies the vSwitch ID for the target ECS instance.'."\n" - .' - **securityGroup**: string (required). Specifies the security group ID for the target ECS instance.'."\n" - .' - **restoredName:** string (required). Specifies the instance name of the target ECS instance.'."\n" - .' - **restoredHostName**: string (required). Specifies the host name of the target ECS instance.'."\n" - .' - **allocatePublicIp**: bool (default: false). Indicates whether to assign a public IP to the target ECS instance.'."\n" - .' - **privateIpAddress**: string. Specifies the internal IP address of the target ECS instance. If not specified, an IP will be assigned via DHCP.'."\n" - .'- **UDM_ECS_ROLLBACK**: Full ECS rollback.'."\n" - .' - **sourceInstanceId**: string (required). Specifies the source ECS instance ID.'."\n" - .' - **forceRestore**: bool (default: false). Indicates whether to force restore. NOTE: If forceRestore is set to true, the disk restoration will proceed even if the backup disk has been unmounted from the original ECS instance or mounted to another instance. Exercise caution when using this option.'."\n" - .' - **bootAfterRestore**: bool (default: false). Indicates whether to start the ECS instance after restoration.', - 'type' => 'object', - 'required' => false, - 'example' => '{\\"sourceInstanceId\\":\\"i-uf62te6pm3iwsyxyz66q\\",\\"bootAfterRestore\\":false}', - ], + 'schema' => ['description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'example' => '10', 'default' => '1'], ], [ - 'name' => 'UdmRegionId', + 'name' => 'DatabaseName', 'in' => 'query', - 'schema' => [ - 'description' => 'Valid only when **SourceType** is **UDM_ECS**. Indicates the target region for the restore.', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-shanghai', - ], - ], - [ - 'name' => 'TargetInstanceId', - 'in' => 'formData', - 'schema' => [ - 'description' => 'Valid only when **RestoreType** is **ECS_FILE**. Indicates the ECS instance ID at the restore destination.', - 'type' => 'string', - 'required' => false, - 'example' => 'i-*********************', - ], - ], - [ - 'name' => 'Include', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The path to be restored. All documents under this path will be restored. Maximum length is 255 characters.', - 'type' => 'string', - 'required' => false, - 'example' => '["/home/alice/*.pdf", "/home/bob/*.txt"]', - ], - ], - [ - 'name' => 'Exclude', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The path not to be restored. All documents under this path will not be restored. Maximum length is 255 characters.', - 'type' => 'string', - 'required' => false, - 'example' => '["/var", "/proc"]', - ], + 'schema' => ['description' => 'The database name.'."\n", 'type' => 'string', 'required' => false, 'example' => 'BPD'], ], [ - 'name' => 'TargetContainer', + 'name' => 'Mode', 'in' => 'query', - 'schema' => [ - 'description' => 'Details of the target container.', - 'type' => 'string', - 'required' => false, - 'example' => '{\\"host\\":\\"k8s-node1\\",\\"hostPrefix\\":\\"/var/lib/kubelet/pods/4acb31fe-8577-40ff-bc8c-eccabd835f73/volumes/kubernetes.io~csi/pvc-b050b00e-ef17-4792-aab1-1642355cf1f4/mount\\",\\"pvPath\\":\\"/\\"}', - ], + 'schema' => ['description' => 'The recovery mode. Valid values:'."\n" + ."\n" + .'* **RECOVERY_TO_MOST_RECENT**: restores the database to the recently available state to which the database has been backed up.'."\n" + .'* **RECOVERY_TO_POINT_IN_TIME**: restores the database to a specified point in time.'."\n" + .'* **RECOVERY_TO_SPECIFIC_BACKUP**: restores the database to a specified backup.'."\n" + .'* **RECOVERY_TO_LOG_POSITION**: restores the database to a specified log position.'."\n", 'type' => 'string', 'required' => false, 'example' => 'RECOVERY_TO_SPECIFIC_BACKUP', 'default' => 'RECOVERY_TO_MOST_RECENT'], ], [ - 'name' => 'InitiatedByAck', + 'name' => 'RecoveryPointInTime', 'in' => 'query', - 'schema' => [ - 'description' => 'Indicates whether it is called by the container service. Default is false.', - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => 'The point in time to which you want to restore the database. This parameter is valid only if you set the Mode parameter to **RECOVERY_TO_POINT_IN_TIME**. Cloud Backup restores the database to a state closest to the specified point in time.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1649851200'], ], [ - 'name' => 'TargetContainerClusterId', + 'name' => 'LogPosition', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the target container cluster.', - 'type' => 'string', - 'required' => false, - 'example' => 'cc-000amjsc7o1h9506oob7', - ], + 'schema' => ['description' => 'The log position to which you want to restore the database. This parameter is valid only if you set the Mode parameter to **RECOVERY_TO_LOG_POSITION**.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '0'], ], [ - 'name' => 'TargetInstanceName', + 'name' => 'VolumeId', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the target Table Store instance.', - 'type' => 'string', - 'required' => false, - 'example' => 'instancename', - ], + 'schema' => ['description' => 'The ID of the volume that you want to restore. This parameter is valid only if you set the Mode parameter to **RECOVERY_TO_LOG_POSITION**.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0'], ], [ - 'name' => 'TargetTableName', + 'name' => 'SystemCopy', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the data table in the target Table Store.', - 'type' => 'string', - 'required' => false, - 'example' => 'tablename', - ], + 'schema' => ['description' => 'Specifies whether to restore the database to a different instance.'."\n" + ."\n" + .'* true: restores the database to a different instance.'."\n" + .'* false: restores the database within the same instance.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ - 'name' => 'TargetTime', + 'name' => 'Source', 'in' => 'query', - 'schema' => [ - 'description' => 'The time of the Table Store to be restored. UNIX timestamp, in seconds.', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1642496881', - ], + 'schema' => ['description' => 'The name of the source system. This parameter specifies the name of the source database that you want to restore. You must set the parameter in the `<Source database name>@SID` format.'."\n", 'type' => 'string', 'required' => false, 'example' => 'P01@HP1'], ], [ - 'name' => 'OtsDetail', - 'in' => 'formData', - 'style' => 'json', - 'schema' => [ - 'description' => 'Details of the Table Store instance.', - 'required' => false, - '$ref' => '#/components/schemas/OtsTableRestoreDetail', - ], + 'name' => 'SourceClusterId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the source SAP HANA instance.'."\n", 'type' => 'string', 'required' => false, 'example' => 'cl-0000g3m******5cj'], ], [ - 'name' => 'CrossAccountType', + 'name' => 'IncludeDifferential', 'in' => 'query', - 'schema' => [ - 'description' => 'Cross-account backup type. Supported values:'."\n" - .'- SELF_ACCOUNT: Backup within the same account'."\n" - .'- CROSS_ACCOUNT: Cross-account backup', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [], - 'example' => 'SELF_ACCOUNT', - ], + 'schema' => ['description' => 'Specifies whether to include differential backups in the query results. Valid values:'."\n" + ."\n" + .'* true: includes differential backups.'."\n" + .'* false: excludes differential backups.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'false', 'default' => 'false'], ], [ - 'name' => 'CrossAccountUserId', + 'name' => 'IncludeIncremental', 'in' => 'query', - 'schema' => [ - 'description' => 'The original account ID managed by the current account for cross-account backup.', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '158975xxxxx4625', - ], + 'schema' => ['description' => 'Specifies whether to include incremental backups in the query results. Valid values:'."\n" + ."\n" + .'* true: includes incremental backups.'."\n" + .'* false: excludes incremental backups.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'true', 'default' => 'false'], ], [ - 'name' => 'CrossAccountRoleName', + 'name' => 'IncludeLog', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the role created in the RAM of the original account for cross-account backup managed by the current account.', - 'type' => 'string', - 'required' => false, - 'example' => 'BackupRole', - ], + 'schema' => ['description' => 'Specifies whether to include log backups in the query results. Valid values:'."\n" + ."\n" + .'* true: includes log backups.'."\n" + .'* false: excludes log backups.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'true', 'default' => 'false'], ], [ - 'name' => 'FailbackDetail', + 'name' => 'UseBackint', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'description' => 'Details of restoring to the local environment.', - 'type' => 'object', - 'required' => false, - 'example' => '{"cpu":4,"extra":"{\\"restoreVMNamePrefix\\":\\"627-\\",\\"dataCenterName\\":\\"SDDC-Datacenter\\",\\"dataStoreId\\":\\"datastore-50\\",\\"folderId\\":\\"group-v49\\",\\"resourcePoolId\\":\\"resgroup-46\\",\\"locationName\\":\\"vcenter.pc-uf600a******1.acvs.aliyuncs.com/SDDC-Datacenter/Workloads\\",\\"computeResourceName\\":\\"SDDC-Datacenter/Default_c-uf600a******\\",\\"dataStoreName\\":\\"Default_c-uf600a******/WorkloadDatastore\\",\\"networkMoReference\\":\\"DistributedVirtualPortgroup:dvportgroup-1001\\",\\"useHotAdd\\":false}","instanceId":"i-2vc******z","memoryInMB":8192,"serverId":"0fdc0c86-eb92-4e05-91ab-eeaf9fb6ad01","uefiBoot":false}', - ], + 'schema' => ['description' => 'Specifies whether Backint is used. Valid values:'."\n" + ."\n" + .'* true: Backint is used.'."\n" + .'* false: Backint is not used.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'false', 'default' => 'false'], ], [ - 'name' => 'Edition', + 'name' => 'ResourceGroupId', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - ], + 'schema' => ['description' => 'The ID of the resource group.'."\n", 'type' => 'string', 'required' => false, 'example' => 'rg-acfmz7mced2ldhy'], ], ], 'responses' => [ @@ -9532,106 +6576,66 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'Return code, 200 indicates success.', - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'Description of the return message, usually \'successful\' when successful, and corresponding error messages when there is an error.', - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'Request ID.', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Success' => [ - 'description' => 'Whether the request was successful.'."\n" - .' - true: Success'."\n" - .' - false: Failure', - 'type' => 'boolean', - 'example' => 'true', - ], - 'RestoreId' => [ - 'description' => 'Restore job ID.', - 'type' => 'string', - 'example' => 'r-*********************', - ], + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '31F97233-8563-563D-8880-914B00EEA928'], + 'TaskId' => ['description' => 'The ID of the asynchronous job. You can call the DescribeTask operation to query the execution result of an asynchronous job.'."\n", 'type' => 'string', 'example' => 't-0006xmbplrqebt9dhkth'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], ], + 'description' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true,\\n \\"RestoreId\\": \\"r-*********************\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateRestoreJobResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <Success>true</Success>\\n <RestoreId>r-*********************</RestoreId>\\n</CreateRestoreJobResponse>","errorExample":""}]', - 'title' => 'CreateRestoreJob', - 'description' => '- Create a restore job based on the selected snapshot and the restore destination.'."\n" - .'- Currently, the data source type must match the restore destination data source type.', - 'translator' => 'machine', - ], - 'CancelRestoreJob' => [ - 'summary' => 'Cancels a restore job.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => 'DescribeHanaBackupsAsync', + 'summary' => 'Queries one or more SAP HANA backups that meet the specified conditions.', + 'description' => 'After you call the DescribeHanaBackupsAsync operation to query the SAP HANA backups that meet the specified conditions, call the DescribeTask operation to query the final result.'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeHanaBackupsAsync'], + ], ], + 'ramActions' => [], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"31F97233-8563-563D-8880-914B00EEA928\\",\\n \\"TaskId\\": \\"t-0006xmbplrqebt9dhkth\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeHanaBackupsAsyncResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>31F97233-8563-563D-8880-914B00EEA928</RequestId>\\n <TaskId>t-0006xmbplrqebt9dhkth</TaskId>\\n <Success>true</Success>\\n</DescribeHanaBackupsAsyncResponse>","errorExample":""}]', + ], + 'DescribeHanaDatabases' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREhbr56LH1C', - 'FEATUREhbrS7MI6C', - 'FEATUREhbrFWIWBG', - 'FEATUREhbrAW9I1R', - 'FEATUREhbrB1KQ9G', - 'FEATUREhbrQ3MV3B', - 'FEATUREhbr3BJQCT', - 'FEATUREhbr9ZUQY7', - ], - ], + 'operationType' => 'read', + 'systemTags' => ['operationType' => 'get'], 'parameters' => [ [ - 'name' => 'RestoreId', + 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the restore job.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'r-*********************', - ], + 'schema' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'required' => false, 'example' => 'v-00063fq******8xjr'], ], [ - 'name' => 'VaultId', + 'name' => 'ClusterId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 'v-*********************', - ], + 'schema' => ['description' => 'The ID of the SAP HANA instance.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cl-000hpc******uv14x'], ], [ - 'name' => 'Edition', + 'name' => 'PageNumber', 'in' => 'query', - 'schema' => [ - 'title' => '版本类型,支持BASIC和STANDARD,默认值为STANDARD。', - 'type' => 'string', - 'example' => 'STANDARD', - ], + 'schema' => ['description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '1', 'default' => '1'], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => ['description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'example' => '10', 'default' => '10'], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the resource group.'."\n", 'type' => 'string', 'required' => false, 'example' => 'rg-acfmw2azsegupmi'], ], ], 'responses' => [ @@ -9639,188 +6643,129 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'DAAB6A29-34EB-5F56-962F-D5BDBFE8A5C2'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'PageNumber' => ['description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'PageSize' => ['description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'TotalCount' => ['description' => 'The total number of entries returned.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '10'], + 'HanaDatabases' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'HanaDatabase' => [ + 'description' => 'The information about SAP HANA databases.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about SAP HANA databases.', + 'type' => 'object', + 'properties' => [ + 'Host' => ['description' => 'The hostname.'."\n", 'type' => 'string', 'example' => 'izbp1jbf3zy******antqmz'], + 'SqlPort' => ['description' => 'The port number.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '30013'], + 'DatabaseName' => ['description' => 'The database name.'."\n", 'type' => 'string', 'example' => 'SYSTEMDB'], + 'ServiceName' => ['description' => 'The service name.'."\n", 'type' => 'string', 'example' => 'indexserver'], + 'ActiveStatus' => ['description' => 'Indicates whether the database is started. Valid values:'."\n" + ."\n" + .'* **YES**: The database is started.'."\n" + .'* **NO**: The database is not started.'."\n", 'type' => 'string', 'example' => 'YES'], + 'Detail' => ['description' => 'The detailed information.'."\n", 'type' => 'string', 'example' => 'master'], + ], + ], + ], + ], ], ], 'description' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<CancelRestoreJobResponse>\\n<Message>successful</Message>\\n<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n<Code>200</Code>\\n<Success>true</Success>\\n</CancelRestoreJobResponse>","errorExample":""}]', - 'title' => 'CancelRestoreJob', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'DescribeRestoreJobs2' => [ - 'summary' => 'Queries one or more restore jobs that meet the specified conditions.', - 'methods' => [ - 'post', - 'get', + 'title' => 'DescribeHanaDatabases', + 'summary' => 'Queries the information about SAP HANA databases.', + 'description' => 'After you register an SAP HANA instance and install a Cloud Backup client on the instance, you can call this operation to query the information about SAP HANA databases. You can call the StartHanaDatabaseAsync operation to start a database and call the StopHanaDatabaseAsync operation to stop a database.'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeHanaDatabases'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeHanaDatabases', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"DAAB6A29-34EB-5F56-962F-D5BDBFE8A5C2\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 10,\\n \\"HanaDatabases\\": {\\n \\"HanaDatabase\\": [\\n {\\n \\"Host\\": \\"izbp1jbf3zy******antqmz\\",\\n \\"SqlPort\\": 30013,\\n \\"DatabaseName\\": \\"SYSTEMDB\\",\\n \\"ServiceName\\": \\"indexserver\\",\\n \\"ActiveStatus\\": \\"YES\\",\\n \\"Detail\\": \\"master\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeHanaDatabasesResponse>\\n <RequestId>DAAB6A29-34EB-5F56-962F-D5BDBFE8A5C2</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>10</TotalCount>\\n <HanaDatabases>\\n <Host>izbp1jbf3zy******antqmz</Host>\\n <SqlPort>30013</SqlPort>\\n <DatabaseName>SYSTEMDB</DatabaseName>\\n <ServiceName>indexserver</ServiceName>\\n <ActiveStatus>YES</ActiveStatus>\\n <Detail>master</Detail>\\n </HanaDatabases>\\n</DescribeHanaDatabasesResponse>","errorExample":""}]', + ], + 'DescribeHanaInstances' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', - 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '95541', - 'abilityTreeNodes' => [ - 'FEATUREhbr56LH1C', - 'FEATUREhbrS7MI6C', - 'FEATUREhbrFWIWBG', - 'FEATUREhbrAW9I1R', - 'FEATUREhbrB1KQ9G', - 'FEATUREhbrQ3MV3B', - 'FEATUREhbr3BJQCT', - ], + 'abilityTreeCode' => '95523', + 'abilityTreeNodes' => ['FEATUREhbrI97IXK'], ], 'parameters' => [ [ - 'name' => 'PageNumber', + 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '1', - 'example' => '1', - 'default' => '1', - ], + 'schema' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'required' => false, 'example' => 'v-000b0ov******6zs'], ], [ - 'name' => 'PageSize', + 'name' => 'ClusterId', 'in' => 'query', - 'schema' => [ - 'description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '100', - 'minimum' => '1', - 'example' => '10', - 'default' => '10', - ], + 'schema' => ['description' => 'The ID of the SAP HANA instance.'."\n", 'type' => 'string', 'required' => false, 'example' => 'cl-0001zfc******50pr3'], ], [ - 'name' => 'RestoreType', + 'name' => 'PageNumber', 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the data source. Valid values:'."\n" - ."\n" - .'* **ECS_FILE**: Elastic Compute Service (ECS) files'."\n" - .'* **OSS**: Object Storage Service (OSS) buckets'."\n" - .'* **NAS**: Apsara File Storage NAS file systems'."\n" - .'* **OTS_TABLE**: Tablestore instances'."\n" - .'* **UDM_ECS_ROLLBACK**: ECS instances'."\n", - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 'ECS_FILE', - ], + 'schema' => ['description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '1', 'default' => '1'], ], [ - 'name' => 'Filters', + 'name' => 'PageSize', 'in' => 'query', + 'schema' => ['description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'example' => '10', 'default' => '10'], + ], + [ + 'name' => 'Tag', + 'in' => 'formData', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The keys in the filter.'."\n", + 'description' => 'The tags of the SAP HANA instance.'."\n", 'type' => 'array', 'items' => [ - 'description' => 'The key in the filter.'."\n", + 'description' => 'The tags of SAP HANA instance.', 'type' => 'object', 'properties' => [ - 'Key' => [ - 'description' => 'The key in the filter. Valid values:'."\n" - ."\n" - .'* **RegionId**: the region ID'."\n" - .'* **PlanId**: the ID of a backup plan'."\n" - .'* **JobId**: the ID of a backup job'."\n" - .'* **VaultId**: the ID of a backup vault'."\n" - .'* **InstanceId**: the ID of an ECS instance'."\n" - .'* **Bucket**: the name of an OSS bucket'."\n" - .'* **FileSystemId**: the ID of a file system'."\n" - .'* **Status**: the status of a backup job'."\n" - .'* **CompleteTime**: the end time of a backup job'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'VaultId', - ], - 'Values' => [ - 'description' => 'The values that you want to match in the filter.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The value that you want to match in the filter.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '["v-*********************"]', - ], - 'required' => false, - 'maxItems' => 500, - ], - 'Operator' => [ - 'description' => 'The matching method. Default value: IN. This parameter specifies the operator that you want to use to match a key and a value in the filter. Valid values:'."\n" - ."\n" - .'* **EQUAL**: equal to'."\n" - .'* **NOT_EQUAL**: not equal to'."\n" - .'* **GREATER_THAN**: greater than'."\n" - .'* **GREATER_THAN_OR_EQUAL**: greater than or equal to'."\n" - .'* **LESS_THAN**: less than'."\n" - .'* **LESS_THAN_OR_EQUAL**: less than or equal to'."\n" - .'* **BETWEEN**: specifies a JSON array as a range. The results must fall within the range in the `[Minimum value,Maximum value]` format.'."\n" - .'* **IN**: specifies an array as a collection. The results must fall within the collection.'."\n" - ."\n" - .'> If you specify the **CompleteTime** parameter as a key to query backup jobs, you cannot use the IN operator to perform a match.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'IN', - ], + 'Key' => ['description' => 'The tag key.'."\n", 'type' => 'string', 'required' => false, 'example' => 'ace:rm:rgld'], + 'Value' => ['description' => 'The tag value.'."\n", 'type' => 'string', 'required' => false, 'example' => 'rg-acfmwutpyat2kwy'], ], 'required' => false, ], 'required' => false, - 'maxItems' => 5, + 'maxItems' => 21, ], ], [ - 'name' => 'Edition', + 'name' => 'ResourceGroupId', 'in' => 'query', - 'schema' => [ - 'title' => '版本类型,支持BASIC和STANDARD,默认值为STANDARD。', - 'type' => 'string', - 'example' => 'STANDARD', - ], + 'schema' => ['description' => 'The ID of the resource group.'."\n", 'type' => 'string', 'required' => false, 'example' => 'rg-aekz24ikcjyqjkq'], ], ], 'responses' => [ @@ -9828,379 +6773,71 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The response status code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The response message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'PageNumber' => [ - 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'PageSize' => [ - 'description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'TotalCount' => [ - 'description' => 'The total number of entries returned.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'RestoreJobs' => [ + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '4003DD68-3C3C-5071-B4FC-631A6C1BAC1C'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'PageNumber' => ['description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'PageSize' => ['description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'TotalCount' => ['description' => 'The total number of entries returned.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '21'], + 'Hanas' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ - 'RestoreJob' => [ - 'description' => 'The queried restore jobs.'."\n", - 'example' => '{\'RestoreJob\': []}', + 'Hana' => [ + 'description' => 'The information about the SAP HANA instances.'."\n", 'type' => 'array', 'items' => [ - 'description' => 'The details about the restore job.'."\n", + 'description' => 'The SAP HANA instance.'."\n", 'type' => 'object', 'properties' => [ - 'SnapshotHash' => [ - 'description' => 'The hash value of the backup snapshot.'."\n", - 'type' => 'string', - 'example' => 'f2fe...', - ], - 'Status' => [ - 'description' => 'The status of the restore job. Valid values:'."\n" - ."\n" - .'* **COMPLETE**: The job is completed.'."\n" - .'* **PARTIAL_COMPLETE**: The job is partially completed.'."\n" - .'* **FAILED**: The job failed.'."\n", - 'type' => 'string', - 'example' => 'COMPLETE', - ], - 'ErrorMessage' => [ - 'description' => 'The error message that is returned for the restore job.'."\n", - 'type' => 'string', - 'example' => 'PARTIAL_COMPLETE', - ], - 'ActualItems' => [ - 'description' => 'This parameter is valid only if the **SourceType** parameter is set to **ECS_FILE**. This parameter indicates the actual number of objects that are restored by the restore job.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '6', - ], - 'VaultId' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'example' => 'v-0006******q', - ], - 'ActualBytes' => [ - 'description' => 'The actual amount of data that is restored after duplicates are removed. Unit: bytes.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '600', - ], - 'UdmDetail' => [ - 'description' => 'The details about Elastic Compute Service (ECS) instance backup.'."\n", - 'type' => 'string', - 'example' => '{\\"doCopy\\":true,\\"doBackup\\":false,\\"instanceName\\":\\"instance example\\",\\"appConsistent\\":false,\\"destinationRegionId\\":\\"cn-shanghai\\",\\"enableFsFreeze\\":true,\\"osNameEn\\":\\"Windows Server 2019 Data Center Edition 64bit Chinese Edition\\",\\"osName\\":\\"Windows Server 2019 Data Center Edition 64bit Chinese Edition\\",\\"diskIdList\\":[],\\"backupVaultId\\":\\"\\",\\"snapshotGroup\\":true,\\"destinationRetention\\":35,\\"platform\\":\\"Windows Server 2012\\",\\"timeoutInSeconds\\":60,\\"backupRetention\\":1,\\"osType\\":\\"windows\\",\\"preScriptPath\\":\\"\\",\\"postScriptPath\\":\\"\\",\\"enableWriters\\":true,\\"ecsDeleted\\":false}', - ], - 'SourceType' => [ - 'description' => 'The type of the data source. Valid values:'."\n" - ."\n" - .'* **ECS_FILE**: ECS files'."\n" - .'* **OSS**: Object Storage Service (OSS) buckets'."\n" - .'* **NAS**: Apsara File Storage NAS (NAS) file systems'."\n" - .'* **OTS_TABLE**: Tablestore instances'."\n" - .'* **UDM_ECS**: ECS instances'."\n", - 'type' => 'string', - 'example' => 'ECS_FILE', - ], - 'Options' => [ - 'description' => 'This parameter is valid only if the **SourceType** parameter is set to **ECS_FILE**. This parameter indicates whether Windows Volume Shadow Copy Service (VSS) is used to define a restoration path.'."\n" - ."\n" - .'* This parameter is available only for Windows ECS instances.'."\n" - .'* If data changes occur in the backup source, the source data must be the same as the data to be backed up before you can set this parameter to `["UseVSS":true]`.'."\n" - .'* If you use VSS, you cannot restore data from multiple directories.'."\n", - 'type' => 'string', - 'example' => '{"UseVSS":false}', - ], - 'SourceInstanceId' => [ - 'type' => 'string', - ], - 'RestoreType' => [ - 'description' => 'The type of the restore job.'."\n", - 'type' => 'string', - 'example' => 'ECS_FILE', - ], - 'TargetCreateTime' => [ - 'description' => 'The time when the file system was created. This parameter is returned only for NAS file systems.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1634714531', - ], - 'ItemsDone' => [ - 'description' => 'This parameter is valid only if the **SourceType** parameter is set to **ECS_FILE**. This parameter indicates the number of restored objects.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '8', - ], - 'BytesTotal' => [ - 'description' => 'The total amount of data that was backed up from the data source. Unit: bytes.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1000', - ], - 'Exclude' => [ - 'description' => 'This parameter is valid only if the **SourceType** parameter is set to **ECS_FILE**. This parameter indicates the paths to the files that are excluded from the restore job. The value can be up to 255 characters in length.'."\n", - 'type' => 'string', - 'example' => '["/var", "/proc"]', - ], - 'ParentId' => [ - 'description' => 'The ID of the parent job.'."\n", - 'type' => 'string', - 'example' => 'r-0003hd2an3x4dyv0l18b', - ], - 'CompleteTime' => [ - 'description' => 'The time when the restore job was completed. This value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1554347313', - ], - 'CreatedTime' => [ - 'description' => 'The time when the restore job was created. This value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1554347313', - ], - 'TargetBucket' => [ - 'description' => 'The name of the destination OSS bucket. This parameter is returned only for OSS buckets.'."\n", - 'type' => 'string', - 'example' => 'target-bucket', - ], - 'ClusterId' => [ - 'description' => 'The ID of the client group used for restoration.'."\n", - 'type' => 'string', - 'example' => 'cl-000******hp6', - ], - 'TargetFileSystemId' => [ - 'description' => 'The ID of the destination NAS file system. This parameter is returned only for NAS file systems.'."\n", - 'type' => 'string', - 'example' => '0be9****9c9', - ], - 'Progress' => [ - 'description' => 'The progress of the restore job. Valid values: \\[0,10000]. For example, 10000 indicates that the progress is 100%.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10000', - ], - 'ExpireTime' => [ - 'description' => 'The time when the restore job expires.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1634714531', - ], - 'TargetDataSourceId' => [ - 'description' => 'The ID of the destination data source.'."\n", - 'type' => 'string', - 'example' => 'ds-000*****997', - ], - 'TargetPrefix' => [ - 'description' => 'The prefix of the objects that are restored. This parameter is returned only for OSS buckets.'."\n", - 'type' => 'string', - 'example' => '"/target"', - ], - 'TargetPath' => [ - 'description' => 'The destination file path of the restore job.'."\n", - 'type' => 'string', - 'example' => '"D:\\\\rebk"', - ], - 'ErrorFile' => [ - 'description' => 'The files that failed to be restored.'."\n", - 'type' => 'string', - 'example' => '"test.csv"', - ], - 'StartTime' => [ - 'description' => 'The time when the restore job started. This value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1554347313', - ], - 'UpdatedTime' => [ - 'description' => 'The time when the restore job was updated. This value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1554347313', - ], - 'SnapshotId' => [ - 'description' => 'The ID of the snapshot used for restoration.'."\n", - 'type' => 'string', - 'example' => 's-0002******ga88', - ], - 'RestoreId' => [ - 'description' => 'The ID of the restore job.'."\n", - 'type' => 'string', - 'example' => 'r-0003*****8a', - ], - 'TargetClientId' => [ - 'description' => 'The ID of the destination client.'."\n", - 'type' => 'string', - 'example' => 'c-000e*****397', - ], - 'ItemsTotal' => [ - 'description' => 'This parameter is valid only if the **SourceType** parameter is set to **ECS_FILE**. This parameter indicates the total number of objects in the data source.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '10', - ], - 'Include' => [ - 'description' => 'The paths to the files that are included in the restore job.'."\n", - 'type' => 'string', - 'example' => '["/home/alice/*.pdf", "/home/bob/*.txt"]', - ], - 'BytesDone' => [ - 'description' => 'The amount of data that was restored. Unit: bytes.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '800', - ], - 'TargetInstanceName' => [ - 'description' => 'The name of the destination Tablestore instance.'."\n", - 'type' => 'string', - 'example' => 'instancename', - ], - 'TargetTableName' => [ - 'description' => 'The name of the destination table in the Tablestore instance.'."\n", - 'type' => 'string', - 'example' => 'tablename', - ], - 'Speed' => [ - 'description' => 'The average speed at which data is backed up. Unit: KB/s.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '500', - ], - 'TargetTime' => [ - 'description' => 'The time when the Tablestore instance was backed up. This value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1642560261', - ], - 'OtsDetail' => [ - 'description' => 'The details about the Tablestore instance.'."\n", - 'type' => 'object', - 'properties' => [ - 'BatchChannelCount' => [ - 'description' => 'The number of channels processed by each Tablestore restore job.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'OverwriteExisting' => [ - 'description' => 'Indicates whether the existing Tablestore restore job was overwritten.'."\n", - 'type' => 'boolean', - 'example' => 'false', - ], - ], - ], - 'CrossAccountType' => [ - 'description' => 'Indicates whether data is backed up within the same Alibaba Cloud account or across Alibaba Cloud accounts. Valid values:'."\n" - ."\n" - .'* SELF_ACCOUNT: Data is backed up within the same Alibaba Cloud account.'."\n" - .'* CROSS_ACCOUNT: Data is backed up across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'enumValueTitles' => [], - 'example' => 'SELF_ACCOUNT', - ], - 'CrossAccountUserId' => [ - 'description' => 'The ID of the source Alibaba Cloud account that authorizes the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '158975xxxxxx4625', - ], - 'CrossAccountRoleName' => [ - 'description' => 'The name of the Resource Access Management (RAM) role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'example' => 'BackupRole', - ], - 'Report' => [ - 'description' => 'The report of the restore job.'."\n", + 'Status' => ['description' => 'The status of the SAP HANA instance. Valid values:'."\n" + ."\n" + .'* INITIALIZING: The instance is being initialized.'."\n" + .'* INITIALIZED: The instance is registered.'."\n" + .'* INVALID_HANA_NODE: The instance is invalid.'."\n" + .'* INITIALIZE_FAILED: The client fails to be installed on the instance.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => 'INITIALIZED'], + 'Host' => ['description' => 'The private or internal IP address of the host where the primary node of the SAP HANA instance resides.'."\n", 'type' => 'string', 'example' => '47.100.XX.XX'], + 'VaultId' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'example' => 'v-0000s974******1hl'], + 'UseSsl' => ['description' => 'Indicates whether the SAP HANA instance is connected over Secure Sockets Layer (SSL). Valid values:'."\n" + ."\n" + .'* true: The SAP HANA instance is connected over SSL.'."\n" + .'* false: The SAP HANA instance is not connected over SSL.'."\n", 'type' => 'boolean', 'example' => 'true'], + 'HanaName' => ['description' => 'The name of the SAP HANA instance.'."\n", 'type' => 'string', 'example' => 'HANA-DEV'], + 'InstanceNumber' => ['description' => 'The instance number of the SAP HANA system.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '00'], + 'ValidateCertificate' => ['description' => 'Indicates whether the SSL certificate of the SAP HANA instance is verified.'."\n", 'type' => 'boolean', 'example' => 'false'], + 'AlertSetting' => ['description' => 'The alert settings. Valid value: INHERITED, which indicates that the Cloud Backup client sends alert notifications by using the same method configured for the backup vault.'."\n", 'type' => 'string', 'example' => 'INHERITED'], + 'UserName' => ['description' => 'The username of the SYSTEMDB database.'."\n", 'type' => 'string', 'example' => 'admin'], + 'StatusMessage' => ['description' => 'The status information.'."\n", 'type' => 'string', 'example' => 'INSTALL_CLIENT_FAILED'], + 'ClusterId' => ['description' => 'The ID of the SAP HANA instance.'."\n", 'type' => 'string', 'example' => 'cl-0004cf6g6******0yd7y'], + 'Tags' => [ 'type' => 'object', + 'itemNode' => true, 'properties' => [ - 'TotalFiles' => [ - 'description' => 'The full files that are restored based on the file list.'."\n", - 'type' => 'string', - 'example' => '/temp/report/158975xxxxxx4625/job-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_total.csv', - ], - 'SuccessFiles' => [ - 'description' => 'The files that are successfully executed.'."\n", - 'type' => 'string', - 'example' => '/temp/report/158975xxxxxx4625/r-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_success.zip'."\n", - ], - 'FailedFiles' => [ - 'description' => 'The files that failed to be executed.'."\n", - 'type' => 'string', - 'example' => '/temp/report/158975xxxxxx4625/r-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_failed.zip', - ], - 'SkippedFiles' => [ - 'description' => 'The skipped files.'."\n", - 'type' => 'string', - 'example' => '/temp/report/158975xxxxxx4625/r-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_skipped.zip', - ], - 'ReportTaskStatus' => [ - 'description' => 'The status of the report generation.'."\n", - 'type' => 'string', - 'example' => 'COMPLETE', + 'Tag' => [ + 'description' => 'The tags of the SAP HANA instance.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The tags of SAP HANA instance.', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => 'The tag key.'."\n", 'type' => 'string', 'example' => 'ace:rm:rgld'], + 'Value' => ['description' => 'The tag value.'."\n", 'type' => 'string', 'example' => 'rg-acfmwutpyat2kwy'], + ], + ], ], ], ], - 'MeteringBytesDone' => [ - 'description' => 'The amount of data that was restored. Unit: bytes. This parameter is valid only if the StorageClass parameter is set to ARCHIVE. The minimum billable size of the data stored at the Archive tier is 1 MB.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1048576', - ], - 'MeteringBytesTotal' => [ - 'description' => 'The total amount of data that was backed up from the data source. Unit: bytes. This parameter is valid only if the StorageClass parameter is set to ARCHIVE. The minimum billable size of the data stored at the Archive tier is 1 MB.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1048576', - ], - 'StorageClass' => [ - 'description' => 'The storage class of the backup data. Valid values:'."\n" - ."\n" - .'* **STANDARD**'."\n" - .'* **ARCHIVE**'."\n", - 'type' => 'string', - 'example' => 'STANDARD', - ], - 'FailbackDetail' => [ - 'description' => 'The details about the VMware failback task.'."\n", - 'type' => 'string', - 'example' => '{"cpu":4,"extra":"{\\"restoreVMNamePrefix\\":\\"627-\\",\\"dataCenterName\\":\\"SDDC-Datacenter\\",\\"dataStoreId\\":\\"datastore-50\\",\\"folderId\\":\\"group-v49\\",\\"resourcePoolId\\":\\"resgroup-46\\",\\"locationName\\":\\"vcenter.pc-uf600arcwi9td3eyj641.acvs.aliyuncs.com/SDDC-Datacenter/Workloads\\",\\"computeResourceName\\":\\"SDDC-Datacenter/Default_c-uf600arcwi9td3eyj640\\",\\"dataStoreName\\":\\"Default_c-uf600arcwi9td3eyj640/WorkloadDatastore\\",\\"networkMoReference\\":\\"DistributedVirtualPortgroup:dvportgroup-1001\\",\\"useHotAdd\\":false}","instanceId":"i-2vc357i2eannmmotcagz","memoryInMB":8192,"serverId":"0fdc0c86-eb92-4e05-91ab-eeaf9fb6ad01","uefiBoot":false}', - ], - 'TargetInstanceId' => [ - 'description' => 'The ID of the destination instance for the restore job.'."\n", - 'type' => 'string', - 'example' => 'i-2ze3m7ktcgw******cs', - ], + 'ResourceGroupId' => ['description' => 'The resource group ID.'."\n", 'type' => 'string', 'example' => 'rg-acfmvnf22m7itha'], + 'CrossAccountType' => ['description' => 'Specifies whether data is backed up within the same Alibaba Cloud account or across Alibaba Cloud accounts. Valid values:'."\n" + ."\n" + .'* **SELF_ACCOUNT**: Data is backed up within the same Alibaba Cloud account.'."\n" + .'* **CROSS_ACCOUNT**: Data is backed up across Alibaba Cloud accounts.'."\n", 'type' => 'string', 'example' => 'CROSS_ACCOUNT'], + 'CrossAccountUserId' => ['description' => 'The ID of the source Alibaba Cloud account that authorizes the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '158975xxxxx4625'."\n"], + 'CrossAccountRoleName' => ['description' => 'The name of the Resource Access Management (RAM) role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", 'type' => 'string', 'example' => 'hbrcrossrole'], ], ], ], @@ -10211,66 +6848,91 @@ ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 1,\\n \\"TotalCount\\": 1,\\n \\"RestoreJobs\\": {\\n \\"RestoreJob\\": [\\n {\\n \\"SnapshotHash\\": \\"f2fe...\\",\\n \\"Status\\": \\"COMPLETE\\",\\n \\"ErrorMessage\\": \\"PARTIAL_COMPLETE\\",\\n \\"ActualItems\\": 6,\\n \\"VaultId\\": \\"v-0006******q\\",\\n \\"ActualBytes\\": 600,\\n \\"UdmDetail\\": \\"{\\\\\\\\\\\\\\"doCopy\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"doBackup\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"instanceName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"instance example\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"appConsistent\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"destinationRegionId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"cn-shanghai\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"enableFsFreeze\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"osNameEn\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Windows Server 2019 Data Center Edition 64bit Chinese Edition\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"osName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Windows Server 2019 Data Center Edition 64bit Chinese Edition\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"diskIdList\\\\\\\\\\\\\\":[],\\\\\\\\\\\\\\"backupVaultId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"snapshotGroup\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"destinationRetention\\\\\\\\\\\\\\":35,\\\\\\\\\\\\\\"platform\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Windows Server 2012\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"timeoutInSeconds\\\\\\\\\\\\\\":60,\\\\\\\\\\\\\\"backupRetention\\\\\\\\\\\\\\":1,\\\\\\\\\\\\\\"osType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"windows\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"preScriptPath\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"postScriptPath\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"enableWriters\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"ecsDeleted\\\\\\\\\\\\\\":false}\\",\\n \\"SourceType\\": \\"ECS_FILE\\",\\n \\"Options\\": \\"{\\\\\\"UseVSS\\\\\\":false}\\",\\n \\"SourceInstanceId\\": \\"i-2ze3m7ktcgw******cs\\",\\n \\"RestoreType\\": \\"ECS_FILE\\",\\n \\"TargetCreateTime\\": 1634714531,\\n \\"ItemsDone\\": 8,\\n \\"BytesTotal\\": 1000,\\n \\"Exclude\\": \\"[\\\\\\"/var\\\\\\", \\\\\\"/proc\\\\\\"]\\",\\n \\"ParentId\\": \\"r-0003hd2an3x4dyv0l18b\\",\\n \\"CompleteTime\\": 1554347313,\\n \\"CreatedTime\\": 1554347313,\\n \\"TargetBucket\\": \\"target-bucket\\",\\n \\"ClusterId\\": \\"cl-000******hp6\\",\\n \\"TargetFileSystemId\\": \\"0be9****9c9\\",\\n \\"Progress\\": 10000,\\n \\"ExpireTime\\": 1634714531,\\n \\"TargetDataSourceId\\": \\"ds-000*****997\\",\\n \\"TargetPrefix\\": \\"\\\\\\"/target\\\\\\"\\",\\n \\"TargetPath\\": \\"\\\\\\"D:\\\\\\\\\\\\\\\\rebk\\\\\\"\\",\\n \\"ErrorFile\\": \\"\\\\\\"test.csv\\\\\\"\\",\\n \\"StartTime\\": 1554347313,\\n \\"UpdatedTime\\": 1554347313,\\n \\"SnapshotId\\": \\"s-0002******ga88\\",\\n \\"RestoreId\\": \\"r-0003*****8a\\",\\n \\"TargetClientId\\": \\"c-000e*****397\\",\\n \\"ItemsTotal\\": 10,\\n \\"Include\\": \\"[\\\\\\"/home/alice/*.pdf\\\\\\", \\\\\\"/home/bob/*.txt\\\\\\"]\\",\\n \\"BytesDone\\": 800,\\n \\"TargetInstanceName\\": \\"instancename\\",\\n \\"TargetTableName\\": \\"tablename\\",\\n \\"Speed\\": 500,\\n \\"TargetTime\\": 1642560261,\\n \\"OtsDetail\\": {\\n \\"BatchChannelCount\\": 2,\\n \\"OverwriteExisting\\": false\\n },\\n \\"CrossAccountType\\": \\"SELF_ACCOUNT\\",\\n \\"CrossAccountUserId\\": 0,\\n \\"CrossAccountRoleName\\": \\"BackupRole\\",\\n \\"Report\\": {\\n \\"TotalFiles\\": \\"/temp/report/158975xxxxxx4625/job-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_total.csv\\",\\n \\"SuccessFiles\\": \\"/temp/report/158975xxxxxx4625/r-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_success.zip\\\\n\\",\\n \\"FailedFiles\\": \\"/temp/report/158975xxxxxx4625/r-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_failed.zip\\",\\n \\"SkippedFiles\\": \\"/temp/report/158975xxxxxx4625/r-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_skipped.zip\\",\\n \\"ReportTaskStatus\\": \\"COMPLETE\\"\\n },\\n \\"MeteringBytesDone\\": 1048576,\\n \\"MeteringBytesTotal\\": 1048576,\\n \\"StorageClass\\": \\"STANDARD\\",\\n \\"FailbackDetail\\": \\"{\\\\\\"cpu\\\\\\":4,\\\\\\"extra\\\\\\":\\\\\\"{\\\\\\\\\\\\\\"restoreVMNamePrefix\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"627-\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"dataCenterName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"SDDC-Datacenter\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"dataStoreId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"datastore-50\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"folderId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"group-v49\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"resourcePoolId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"resgroup-46\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"locationName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"vcenter.pc-uf600arcwi9td3eyj641.acvs.aliyuncs.com/SDDC-Datacenter/Workloads\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"computeResourceName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"SDDC-Datacenter/Default_c-uf600arcwi9td3eyj640\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"dataStoreName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Default_c-uf600arcwi9td3eyj640/WorkloadDatastore\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"networkMoReference\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"DistributedVirtualPortgroup:dvportgroup-1001\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"useHotAdd\\\\\\\\\\\\\\":false}\\\\\\",\\\\\\"instanceId\\\\\\":\\\\\\"i-2vc357i2eannmmotcagz\\\\\\",\\\\\\"memoryInMB\\\\\\":8192,\\\\\\"serverId\\\\\\":\\\\\\"0fdc0c86-eb92-4e05-91ab-eeaf9fb6ad01\\\\\\",\\\\\\"uefiBoot\\\\\\":false}\\",\\n \\"TargetInstanceId\\": \\"i-2ze3m7ktcgw******cs\\"\\n }\\n ]\\n }\\n}","type":"json"}]', - 'title' => 'DescribeRestoreJobs2', - ], - 'CancelBackupJob' => [ - 'summary' => 'Cancels a backup job.', - 'methods' => [ - 'post', - 'get', + 'title' => 'DescribeHanaInstances', + 'summary' => 'Queries one or more SAP HANA instances that meet the specified conditions.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeHanaInstances'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeHanaInstances', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"4003DD68-3C3C-5071-B4FC-631A6C1BAC1C\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 21,\\n \\"Hanas\\": {\\n \\"Hana\\": [\\n {\\n \\"Status\\": 0,\\n \\"Host\\": \\"47.100.XX.XX\\",\\n \\"VaultId\\": \\"v-0000s974******1hl\\",\\n \\"UseSsl\\": true,\\n \\"HanaName\\": \\"HANA-DEV\\",\\n \\"InstanceNumber\\": 0,\\n \\"ValidateCertificate\\": false,\\n \\"AlertSetting\\": \\"INHERITED\\",\\n \\"UserName\\": \\"admin\\",\\n \\"StatusMessage\\": \\"INSTALL_CLIENT_FAILED\\",\\n \\"ClusterId\\": \\"cl-0004cf6g6******0yd7y\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"Key\\": \\"ace:rm:rgld\\",\\n \\"Value\\": \\"rg-acfmwutpyat2kwy\\"\\n }\\n ]\\n },\\n \\"ResourceGroupId\\": \\"rg-acfmvnf22m7itha\\",\\n \\"CrossAccountType\\": \\"CROSS_ACCOUNT\\",\\n \\"CrossAccountUserId\\": 0,\\n \\"CrossAccountRoleName\\": \\"hbrcrossrole\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeHanaInstancesResponse>\\n <RequestId>4003DD68-3C3C-5071-B4FC-631A6C1BAC1C</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>21</TotalCount>\\n <Hanas>\\n <Host>47.100.XX.XX</Host>\\n <VaultId>v-0000s974******1hl</VaultId>\\n <UseSsl>true</UseSsl>\\n <HanaName>HANA-DEV</HanaName>\\n <InstanceNumber>0</InstanceNumber>\\n <ValidateCertificate>false</ValidateCertificate>\\n <AlertSetting>INHERITED</AlertSetting>\\n <UserName>admin</UserName>\\n <StatusMessage>INSTALL_CLIENT_FAILED</StatusMessage>\\n <ClusterId>cl-0004cf6g6******0yd7y</ClusterId>\\n <Tags>\\n <Key>ace:rm:rgld</Key>\\n <Value>rg-acfmwutpyat2kwy</Value>\\n </Tags>\\n <ResourceGroupId>rg-acfmvnf22m7itha</ResourceGroupId>\\n </Hanas>\\n</DescribeHanaInstancesResponse>","errorExample":""}]', + ], + 'DescribeHanaRestores' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'delete', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '95404', - 'abilityTreeNodes' => [ - 'FEATUREhbr9ZUQY7', - ], - ], + 'operationType' => 'read', + 'systemTags' => ['operationType' => 'get'], 'parameters' => [ [ - 'name' => 'JobId', + 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup job.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'j-******************************', - ], + 'schema' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'required' => false, 'example' => 'v-000au6bq******mpu'], ], [ - 'name' => 'VaultId', + 'name' => 'ClusterId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 'v-*****************************', - ], + 'schema' => ['description' => 'The ID of the SAP HANA instance.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cl-000b******soejg'], ], [ - 'name' => 'Edition', + 'name' => 'PageNumber', 'in' => 'query', - 'schema' => [ - 'title' => '版本类型,支持BASIC和STANDARD,默认值为STANDARD。', - 'type' => 'string', - 'example' => 'STANDARD', - ], + 'schema' => ['description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '1', 'default' => '1'], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => ['description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.\\`'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'example' => '10', 'default' => '1'], + ], + [ + 'name' => 'RestoreId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the restore job.'."\n", 'type' => 'string', 'required' => false, 'example' => 'r-0007o3vqfukfe92hvf13'], + ], + [ + 'name' => 'DatabaseName', + 'in' => 'query', + 'schema' => ['description' => 'The database name.'."\n", 'type' => 'string', 'required' => false, 'example' => 'SYSTEMDB'], + ], + [ + 'name' => 'BackupId', + 'in' => 'query', + 'schema' => ['description' => 'The backup ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1632754800158'], + ], + [ + 'name' => 'RestoreStatus', + 'in' => 'query', + 'schema' => ['description' => 'The status of the restore job. Valid values:'."\n" + ."\n" + .'* **RUNNING**: The job is running.'."\n" + .'* **COMPLETE**: The job is completed.'."\n" + .'* **PARTIAL_COMPLETE**: The job is partially completed.'."\n" + .'* **FAILED**: The job failed.'."\n" + .'* **CANCELED**: The job is canceled.'."\n" + .'* **EXPIRED**: The job timed out.'."\n", 'type' => 'string', 'required' => false, 'example' => 'COMPLETE'], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the resource group.'."\n", 'type' => 'string', 'required' => false, 'example' => 'rg-acfm4ebtpkzx7zy'], ], ], 'responses' => [ @@ -10278,363 +6940,587 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the request is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the request is successful, a value of successful is returned. If the request fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Success' => [ - 'description' => 'Indicates whether the request is successful.'."\n" - ."\n" - .'* true: The request is successful.'."\n" - .'* false: The request fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '7DEFC897-8F05-5C05-912C-C9A9510FBFF1'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'PageNumber' => ['description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1'], + 'PageSize' => ['description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'TotalCount' => ['description' => 'The total number of entries returned.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '19'], + 'HanaRestore' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'HanaRestores' => [ + 'description' => 'The information about restore jobs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The restore job.'."\n", + 'type' => 'object', + 'properties' => [ + 'Status' => ['description' => 'The status of the restore job. Valid values:'."\n" + ."\n" + .'* **RUNNING**: The job is running.'."\n" + .'* **COMPLETE**: The job is completed.'."\n" + .'* **PARTIAL_COMPLETE**: The job is partially completed.'."\n" + .'* **FAILED**: The job failed.'."\n" + .'* **CANCELED**: The job is canceled.'."\n" + .'* **EXPIRED**: The job timed out.'."\n", 'type' => 'string', 'example' => 'COMPLETE'], + 'ReachedTime' => ['description' => 'The point in time at which the database is restored.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1635315505'], + 'VaultId' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'example' => 'v-000g9acf******gta'], + 'CurrentPhase' => ['description' => 'The current recovery phase. This value is obtained from SAP HANA.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '2'], + 'ClearLog' => ['description' => 'Indicates whether all log entries are deleted from the log area after the log entries are restored. Valid values: true and false. If the return value is false, all log entries are deleted from the log area after the log entries are restored.'."\n", 'type' => 'boolean', 'example' => 'true'], + 'Message' => ['description' => 'The details of the recovery phase.'."\n", 'type' => 'string', 'example' => 'SQL Error 448 - recovery could not be completed:'], + 'CheckAccess' => ['description' => 'Indicates whether the differential backup and log backup are validated. Valid values:'."\n" + ."\n" + .'* true: Cloud Backup checks whether the required differential backup and log backup are available before the restore job starts. If the differential backup or log backup is unavailable, Cloud Backup does not start the restore job.'."\n" + .'* false: Cloud Backup does not check whether the required differential backup and log backup are available before the restore job starts.'."\n", 'type' => 'boolean', 'example' => 'true'], + 'Mode' => ['description' => 'The recovery mode. Valid values:'."\n" + ."\n" + .'* **RECOVERY_TO_MOST_RECENT**: The database is restored to the recently available state to which the database has been backed up.'."\n" + .'* **RECOVERY_TO_POINT_IN_TIME**: The database is restored to a specified point in time.'."\n" + .'* **RECOVERY_TO_SPECIFIC_BACKUP**: The database is restored to a specified backup.'."\n" + .'* **RECOVERY_TO_LOG_POSITION**: The database is restored to a specified log position.'."\n", 'type' => 'string', 'example' => 'RECOVERY_TO_SPECIFIC_BACKUP'], + 'SystemCopy' => ['description' => 'Indicates whether the database is restored to a different instance. Valid values:'."\n" + ."\n" + .'* true: The database is restored to a different instance.'."\n" + .'* false: The database is restored within the same instance.'."\n", 'type' => 'boolean', 'example' => 'true'], + 'CurrentProgress' => ['description' => 'The current progress. This value is obtained from SAP HANA.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1'], + 'UseDelta' => ['description' => 'Indicates whether a differential backup or an incremental backup is used to restore the database. Valid values: true and false. If the return value is true, Cloud Backup uses a differential backup or an incremental backup to restore the database. If the return value is false, Cloud Backup uses a log backup to restore the database.'."\n", 'type' => 'boolean', 'example' => 'true'], + 'BackupID' => ['description' => 'The backup ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1635315505'], + 'SourceClusterId' => ['description' => 'The ID of the source SAP HANA instance.'."\n", 'type' => 'string', 'example' => 'cl-0000g3mvy******5cj'], + 'VolumeId' => ['description' => 'The ID of the volume that is restored. This parameter is returned only if the value of the Mode parameter is **RECOVERY_TO_LOG_POSITION**.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '0'], + 'DatabaseName' => ['description' => 'The database name.'."\n", 'type' => 'string', 'example' => 'BWD'], + 'Phase' => ['description' => 'The recovery phase.'."\n", 'type' => 'string', 'example' => 'restart'], + 'ClusterId' => ['description' => 'The ID of the SAP HANA instance that is restored.'."\n", 'type' => 'string', 'example' => 'cl-000923yu******p00j4'], + 'DatabaseRestoreId' => ['description' => 'The ID of the database recovery.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1644038961030'], + 'State' => ['description' => 'The recovery status. This value is obtained from SAP HANA.'."\n", 'type' => 'string', 'example' => 'successful'], + 'Source' => ['description' => 'The name of the source system. This parameter indicates the name of the source database that is restored. Format: `<Source database name>@SID`.'."\n", 'type' => 'string', 'example' => 'PRD@H4P'], + 'MaxPhase' => ['description' => 'The maximum recovery phase. This value is obtained from SAP HANA.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '4'], + 'EndTime' => ['description' => 'The time when the restore job ends. This value is a UNIX timestamp. Unit: seconds.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1634356382'], + 'StartTime' => ['description' => 'The time when the restore job starts. This value is a UNIX timestamp. Unit: seconds.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1636970413'], + 'BackupPrefix' => ['description' => 'The backup prefix.'."\n", 'type' => 'string', 'example' => 'INC_DATA_BACKUP'], + 'RestoreId' => ['description' => 'The ID of the restore job.'."\n", 'type' => 'string', 'example' => 'r-000c1en183ayn9sesgqh'], + 'LogPosition' => ['description' => 'The log position to which the database is restored. This parameter is returned only if the value of the Mode parameter is **RECOVERY_TO_LOG_POSITION**.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '0'], + 'RecoveryPointInTime' => ['description' => 'The point in time to which the database is restored. This parameter is returned only if the value of the Mode parameter is **RECOVERY_TO_POINT_IN_TIME**. Cloud Backup restores the database to a state closest to the specified point in time.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1649851200'], + 'MaxProgress' => ['description' => 'The maximum progress. This value is obtained from SAP HANA.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1'], + 'UseCatalog' => ['description' => 'Indicates whether a catalog backup is used to restore the database. This parameter is returned only if the value of the Mode parameter is **RECOVERY_TO_SPECIFIC_BACKUP**. If the return value is false, Cloud Backup finds the backup file based on the specified prefix and then restores the backup file.'."\n", 'type' => 'boolean', 'example' => 'false'], + ], + ], + ], + ], ], ], + 'description' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<CancelBackupJobResponse>\\n<Message>successful</Message>\\n<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n<Code>200</Code>\\n<Success>true</Success>\\n</CancelBackupJobResponse>","errorExample":""}]', - 'title' => 'CancelBackupJob', - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'CreateBackupJob' => [ - 'methods' => [ - 'post', - 'get', + 'title' => 'DescribeHanaRestores', + 'summary' => 'Queries one or more SAP HANA restore jobs that meet the specified conditions.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeHanaRestores'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeHanaRestores', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"7DEFC897-8F05-5C05-912C-C9A9510FBFF1\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 19,\\n \\"HanaRestore\\": {\\n \\"HanaRestores\\": [\\n {\\n \\"Status\\": \\"COMPLETE\\",\\n \\"ReachedTime\\": 1635315505,\\n \\"VaultId\\": \\"v-000g9acf******gta\\",\\n \\"CurrentPhase\\": 2,\\n \\"ClearLog\\": true,\\n \\"Message\\": \\"SQL Error 448 - recovery could not be completed:\\",\\n \\"CheckAccess\\": true,\\n \\"Mode\\": \\"RECOVERY_TO_SPECIFIC_BACKUP\\",\\n \\"SystemCopy\\": true,\\n \\"CurrentProgress\\": 1,\\n \\"UseDelta\\": true,\\n \\"BackupID\\": 1635315505,\\n \\"SourceClusterId\\": \\"cl-0000g3mvy******5cj\\",\\n \\"VolumeId\\": 0,\\n \\"DatabaseName\\": \\"BWD\\",\\n \\"Phase\\": \\"restart\\",\\n \\"ClusterId\\": \\"cl-000923yu******p00j4\\",\\n \\"DatabaseRestoreId\\": 1644038961030,\\n \\"State\\": \\"successful\\",\\n \\"Source\\": \\"PRD@H4P\\",\\n \\"MaxPhase\\": 4,\\n \\"EndTime\\": 1634356382,\\n \\"StartTime\\": 1636970413,\\n \\"BackupPrefix\\": \\"INC_DATA_BACKUP\\",\\n \\"RestoreId\\": \\"r-000c1en183ayn9sesgqh\\",\\n \\"LogPosition\\": 0,\\n \\"RecoveryPointInTime\\": 1649851200,\\n \\"MaxProgress\\": 1,\\n \\"UseCatalog\\": false\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeHanaRestoresResponse>\\n <RequestId>7DEFC897-8F05-5C05-912C-C9A9510FBFF1</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>19</TotalCount>\\n <HanaRestore>\\n <Status>COMPLETE</Status>\\n <ReachedTime>1635315505</ReachedTime>\\n <VaultId>v-000g9acf******gta</VaultId>\\n <CurrentPhase>2</CurrentPhase>\\n <ClearLog>true</ClearLog>\\n <Message>SQL Error 448 - recovery could not be completed:</Message>\\n <CheckAccess>true</CheckAccess>\\n <Mode>RECOVERY_TO_SPECIFIC_BACKUP</Mode>\\n <SystemCopy>true</SystemCopy>\\n <CurrentProgress>1</CurrentProgress>\\n <UseDelta>true</UseDelta>\\n <BackupID>1635315505</BackupID>\\n <SourceClusterId>cl-0000g3mvy******5cj</SourceClusterId>\\n <VolumeId>0</VolumeId>\\n <DatabaseName>BWD</DatabaseName>\\n <Phase>restart</Phase>\\n <ClusterId>cl-000923yu******p00j4</ClusterId>\\n <DatabaseRestoreId>1644038961030</DatabaseRestoreId>\\n <State>successful</State>\\n <Source>PRD@H4P</Source>\\n <MaxPhase>4</MaxPhase>\\n <EndTime>1634356382</EndTime>\\n <StartTime>1636970413</StartTime>\\n <BackupPrefix>INC_DATA_BACKUP</BackupPrefix>\\n <RestoreId>r-000c1en183ayn9sesgqh</RestoreId>\\n <LogPosition>0</LogPosition>\\n <RecoveryPointInTime>1649851200</RecoveryPointInTime>\\n <MaxProgress>1</MaxProgress>\\n <UseCatalog>false</UseCatalog>\\n </HanaRestore>\\n</DescribeHanaRestoresResponse>","errorExample":""}]', + ], + 'DescribeHanaRetentionSetting' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'create', - 'abilityTreeCode' => '95428', - 'abilityTreeNodes' => [ - 'FEATUREhbr56LH1C', - 'FEATUREhbrS7MI6C', - 'FEATUREhbrFWIWBG', - 'FEATUREhbrB1KQ9G', - 'FEATUREhbrQ3MV3B', - 'FEATUREhbr3BJQCT', - 'FEATUREhbrF83GXN', - ], - ], + 'operationType' => 'read', + 'systemTags' => ['operationType' => 'get'], 'parameters' => [ [ - 'name' => 'JobName', + 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the backup job.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'k8s-backup-infra-20220131150046-hbr', - ], + 'schema' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'v-000ii8t******ntrt2'], ], [ - 'name' => 'SourceType', + 'name' => 'ClusterId', 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the data source. Valid values:'."\n" - ."\n" - .'* **UDM_ECS**: Elastic Compute Service (ECS) instance'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'enumValueTitles' => [ - 'UDM_ECS' => '', - ], - 'example' => 'CONTAINER', - ], + 'schema' => ['description' => 'The ID of the SAP HANA instance.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cl-0002ys1i******wwtf'], ], [ - 'name' => 'Retention', + 'name' => 'DatabaseName', 'in' => 'query', + 'schema' => ['description' => 'The database name.'."\n", 'type' => 'string', 'required' => false, 'example' => 'C4P'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The retention period of the backup data. Unit: days.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'docRequired' => true, - 'example' => '15', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '280DD872-EE25-52E8-9CB4-491067173DD0'], + 'VaultId' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'example' => 'v-0006wkn7******zkn'], + 'Schedule' => ['description' => 'The policy to update the retention period. Format: `I|{startTime}|{interval}`, which indicates that the retention period is updated at an interval of {interval} starting from {startTime}.'."\n" + ."\n" + .'* startTime: the time at which the system starts to run a backup job. The time follows the UNIX time format. Unit: seconds.'."\n" + .'* interval: the interval at which the system runs a backup job. The interval follows the ISO 8601 standard. For example, PT1H indicates an interval of 1 hour. P1D indicates an interval of one day.'."\n", 'type' => 'string', 'example' => 'I|0|P1D'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], + 'DatabaseName' => ['description' => 'The database name.'."\n", 'type' => 'string', 'example' => 'Q01'], + 'Disabled' => ['description' => 'Indicates whether the backup is permanently retained. Valid values:'."\n" + ."\n" + .'* true: The backup is permanently retained.'."\n" + .'* false: The backup is retained for the specified number of days.'."\n", 'type' => 'boolean', 'example' => 'false'], + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'RetentionDays' => ['description' => 'The number of days for which the backup is retained. If the value of the Disabled parameter is false, the backup is retained for the number of days specified by this parameter.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '3650'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'ClusterId' => ['description' => 'The ID of the SAP HANA instance.'."\n", 'type' => 'string', 'example' => 'cl-0003jyv******fsku5m'], + ], + 'description' => '', ], ], + ], + 'title' => 'DescribeHanaRetentionSetting', + 'summary' => 'Queries the backup retention period of an SAP HANA database.', + 'description' => '* If you want to query the backup parameters of a database, you can call the DescribeHanaBackupSetting operation.'."\n" + .'* Cloud Backup deletes the expired catalogs and data that are related to Backint and file backup. The deleted catalogs and data cannot be restored. We recommend that you set the retention period based on your business requirements.'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeHanaRetentionSetting'], + ], + ], + 'ramActions' => [ [ - 'name' => 'InstanceId', - 'in' => 'query', - 'schema' => [ - 'description' => 'This parameter is required only if you set the **SourceType** parameter to **UDM_ECS**. This parameter specifies the ID of the ECS instance.'."\n", - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'i-bp1xxxxxxxxxxxxxxysm', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeHanaRetentionSetting', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"280DD872-EE25-52E8-9CB4-491067173DD0\\",\\n \\"VaultId\\": \\"v-0006wkn7******zkn\\",\\n \\"Schedule\\": \\"I|0|P1D\\",\\n \\"Success\\": true,\\n \\"DatabaseName\\": \\"Q01\\",\\n \\"Disabled\\": false,\\n \\"Code\\": \\"200\\",\\n \\"RetentionDays\\": 3650,\\n \\"Message\\": \\"successful\\",\\n \\"ClusterId\\": \\"cl-0003jyv******fsku5m\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeHanaRetentionSettingResponse>\\n <RequestId>280DD872-EE25-52E8-9CB4-491067173DD0</RequestId>\\n <VaultId>v-0006wkn7******zkn</VaultId>\\n <Schedule>I|0|P1D</Schedule>\\n <Success>true</Success>\\n <DatabaseName>Q01</DatabaseName>\\n <Disabled>false</Disabled>\\n <Code>200</Code>\\n <RetentionDays>3650</RetentionDays>\\n <Message>successful</Message>\\n <ClusterId>cl-0003jyv******fsku5m</ClusterId>\\n</DescribeHanaRetentionSettingResponse>","errorExample":""}]', + ], + 'DescribeOtsTableSnapshots' => [ + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'Detail', - 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'description' => 'This parameter is required only if you set the **SourceType** parameter to **UDM_ECS**. The value is a JSON string. Valid values:'."\n" - ."\n" - .'* doCopy: specifies whether to enable remote replication.'."\n" - ."\n" - .'* destinationRegionId: the destination region for remote replication.'."\n" - ."\n" - .'* destinationRetention: the retention period of the backup point for remote replication.'."\n" - ."\n" - .'* diskIdList: the IDs of the disks that are to be backed up. If this parameter is left empty, all disks are backed up.'."\n" - ."\n" - .'* snapshotGroup: specifies whether to use a snapshot-consistent group. This parameter is valid only if all disks of the ECS instance are Enterprise SSDs (ESSDs).'."\n" - ."\n" - .'* appConsistent: specifies whether to use the application-consistent backup feature. This parameter must be used with the preScriptPath and postScriptPath parameters.'."\n" - ."\n" - .'* preScriptPath: the path to the pre-freeze scripts.'."\n" - ."\n" - .'* postScriptPath: the path to the post-thaw scripts.'."\n" - ."\n" - .'* enableWriters: This parameter is required only if you set the **AppConsistent** parameter to **true**. This parameter specifies whether to create application-consistent snapshots.'."\n" - ."\n" - .' * true: creates application-consistent snapshots.'."\n" - .' * false: creates file system-consistent snapshots.'."\n" - ."\n" - .'* enableFsFreeze: This parameter is required only if you set the **AppConsistent** parameter to **true**. This parameter specifies whether to enable Linux fsfreeze to put file systems into the read-only state before application-consistent snapshots are created. Default value: true.'."\n" - ."\n" - .'* timeoutSeconds: This parameter is required only if you set the **AppConsistent** parameter to **true**. This parameter specifies the I/O freeze timeout period. Default value: 30. Unit: seconds.'."\n", - 'type' => 'object', - 'required' => false, - 'docRequired' => false, - 'example' => '{'."\n" - .' "doCopy": false,'."\n" - .' "destinationRegionId": "",'."\n" - .' "destinationRetention": null,'."\n" - .' "diskIdList": [],'."\n" - .' "snapshotGroup": false,'."\n" - .' "appConsistent": false,'."\n" - .' "enableWriters": true,'."\n" - .' "preScriptPath": "",'."\n" - .' "postScriptPath": "",'."\n" - .' "enableFsFreeze": true,'."\n" - .' "timeoutInSeconds": 60'."\n" - .'}', - ], + 'AK' => [], ], + ], + 'deprecated' => false, + 'systemTags' => ['operationType' => 'get'], + 'parameters' => [ [ - 'name' => 'BackupType', - 'in' => 'query', - 'schema' => [ - 'description' => 'The backup type. This parameter is required only if you set the SourceType parameter to UDM_ECS.'."\n" - ."\n" - .'* **COMPLETE**: full backup'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'COMPLETE' => '', - ], - 'example' => 'INCREMENTAL', - ], + 'name' => 'StartTime', + 'in' => 'formData', + 'schema' => ['description' => 'The start time of the backup. The value must be a UNIX timestamp. Unit: milliseconds.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1611109271630'], ], [ - 'name' => 'VaultId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault. This parameter is not required if you set the SourceType parameter to UDM_ECS.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'v-000xxxxxxxxxxxxxxy1v', - ], + 'name' => 'EndTime', + 'in' => 'formData', + 'schema' => ['description' => 'The end time of the backup. The value must be a UNIX timestamp. Unit: milliseconds.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1652068250881'], ], [ - 'name' => 'SpeedLimit', - 'in' => 'query', + 'name' => 'SnapshotIds', + 'in' => 'formData', + 'style' => 'flat', 'schema' => [ - 'description' => 'This parameter does not take effect if you set the **SourceType** parameter to **UDM_ECS**. This parameter specifies the throttling rules. Format: `{start}|{end}|{bandwidth}`. Separate multiple throttling rules with vertical bars (|). A specified time range cannot overlap with another time range.'."\n" - ."\n" - .'* **start**: the start hour.'."\n" - .'* **end**: the end hour.'."\n" - .'* **bandwidth**: the bandwidth. Unit: KB/s.'."\n", - 'type' => 'string', + 'description' => 'The snapshot IDs.'."\n", + 'type' => 'array', + 'items' => ['description' => 'The snapshot ID.'."\n", 'type' => 'string', 'required' => false, 'example' => 's-00047mxg17p26****3c'], 'required' => false, - 'example' => '0:24:NaN', ], ], [ - 'name' => 'Options', - 'in' => 'query', + 'name' => 'OtsInstances', + 'in' => 'formData', + 'style' => 'flat', 'schema' => [ - 'description' => 'You do not need to specify this parameter.'."\n", - 'type' => 'string', + 'description' => 'The Tablestore instances that are backed up.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The list of Tablestore instances that are backed up.', + 'type' => 'object', + 'properties' => [ + 'InstanceName' => ['description' => 'The name of the Tablestore instance.'."\n", 'type' => 'string', 'required' => false, 'example' => 'instancename'], + 'TableNames' => [ + 'description' => 'The names of the tables in the Tablestore instance.'."\n", + 'type' => 'array', + 'items' => ['description' => 'The name of the table in the Tablestore instance.'."\n", 'type' => 'string', 'required' => false, 'example' => 'tablename'], + 'required' => false, + ], + ], + 'required' => false, + ], 'required' => false, - 'example' => '{"UseVSS":false}', ], ], [ - 'name' => 'Include', - 'in' => 'query', - 'schema' => [ - 'description' => 'This parameter does not take effect if you set the **SourceType** parameter to **UDM_ECS**. This parameter specifies the paths to the files that are backed up. The value can be up to 255 characters in length.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '["/home/alice/*.pdf", "/home/bob/*.txt"]', - ], + 'name' => 'Limit', + 'in' => 'formData', + 'schema' => ['description' => 'The maximum number of rows that you want the current query to return.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100'], ], [ - 'name' => 'Exclude', - 'in' => 'query', - 'schema' => [ - 'description' => 'This parameter does not take effect if you set the **SourceType** parameter to **UDM_ECS**. This parameter specifies the paths to the files that are excluded from the backup job. The value can be up to 255 characters in length.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '["/var", "/proc"]', - ], + 'name' => 'NextToken', + 'in' => 'formData', + 'schema' => ['description' => 'The token that is required to obtain the next page of backup snapshots.'."\n", 'type' => 'string', 'required' => false, 'example' => 'caeba0bbb2be03f84eb48b699f0a****'], ], [ - 'name' => 'ClusterId', + 'name' => 'CrossAccountType', 'in' => 'query', - 'schema' => [ - 'description' => 'You do not need to specify this parameter.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cl-00068btz******oku', - ], + 'schema' => ['description' => 'Specifies whether data is backed up within the same Alibaba Cloud account or across Alibaba Cloud accounts. Valid values:'."\n" + ."\n" + .'* SELF_ACCOUNT: Data is backed up within the same Alibaba Cloud account.'."\n" + .'* CROSS_ACCOUNT: Data is backed up across Alibaba Cloud accounts.'."\n", 'type' => 'string', 'required' => false, 'example' => 'CROSS_ACCOUNT'], ], [ - 'name' => 'ContainerResources', + 'name' => 'CrossAccountUserId', 'in' => 'query', - 'schema' => [ - 'description' => 'You do not need to specify this parameter.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '[{\\"resourceType\\":\\"PV\\",\\"backupMethod\\":\\"FILE\\",\\"resourceId\\":\\"674dac6d-74cd-47e9-a675-09e2f10d2c45\\",\\"resourceInfo\\":\\"{\\\\\\"pv_name\\\\\\":\\\\\\"nas-650dac6d-74cd-47e9-a675-09e2f10d2c45\\\\\\",\\\\\\"pv_size\\\\\\":\\\\\\"8Gi\\\\\\",\\\\\\"storage_class\\\\\\":\\\\\\"alibabacloud-cnfs-nas\\\\\\",\\\\\\"pvc_name\\\\\\":\\\\\\"data-postgresql-default-0\\\\\\",\\\\\\"namespace\\\\\\":\\\\\\"database\\\\\\"}\\",\\"host\\":\\"cn-huhehaote.192.168.13.133\\",\\"hostPrefix\\":\\"6f5e758e-8d35-4584-b9ce-8333adfc7547/volumes/kubernetes.io~csi/nas-670dac6d-74cd-47e9-a675-09e2f10d2c45/mount\\",\\"pvPath\\":\\"/\\"}]', - ], + 'schema' => ['description' => 'The UID of the source account used for cross-account backup.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '144015xxxxx98732'], ], [ - 'name' => 'InitiatedByAck', + 'name' => 'CrossAccountRoleName', 'in' => 'query', + 'schema' => ['description' => 'The name of the RAM role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", 'type' => 'string', 'required' => false, 'example' => 'BackupRole'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'false or left empty'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '09376812-6290-5E36-B504-E8010D72D1F0'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], + 'Code' => ['description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'Limit' => ['description' => 'The number of backup snapshots that are displayed on the current page.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '10'], + 'Snapshots' => [ + 'description' => 'The backup snapshots.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => ['description' => 'The status of the backup job. Valid values:'."\n" + ."\n" + .'* **COMPLETE**: The backup job is completed.'."\n" + .'* **PARTIAL_COMPLETE**: The backup job is partially completed.'."\n" + .'* **FAILED**: The backup job has failed.'."\n", 'type' => 'string', 'example' => 'COMPLETE'], + 'SnapshotHash' => ['description' => 'The hash value of the backup snapshot.'."\n", 'type' => 'string', 'example' => 'f2fe...'], + 'VaultId' => ['description' => 'The ID of the backup vault that stores the backup snapshot.'."\n", 'type' => 'string', 'example' => 'v-00030j*******sn'], + 'BackupType' => ['description' => 'The backup type. Valid value: **COMPLETE**, which indicates full backup.'."\n", 'type' => 'string', 'example' => 'COMPLETE'], + 'CreateTime' => ['description' => 'The time when the Tablestore instance was created. The value is a UNIX timestamp. Unit: seconds.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1607436917'], + 'ActualBytes' => ['description' => 'The actual data amount of backup snapshots after duplicates are removed. Unit: bytes.'."\n", 'type' => 'string', 'example' => '0'], + 'SourceType' => ['description' => 'The type of the data source. Valid values:'."\n" + ."\n" + .'* **ECS_FILE**: backup snapshots for Elastic Compute Service (ECS) files'."\n" + .'* **OSS**: backup snapshots for Object Storage Service (OSS) buckets'."\n" + .'* **NAS**: backup snapshots for Apsara File Storage NAS file systems'."\n" + .'* **OTS_TABLE**: backup snapshots for Tablestore instances'."\n", 'type' => 'string', 'example' => 'OTS_TABLE'], + 'BytesTotal' => ['description' => 'The total amount of data. Unit: bytes.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '0'], + 'CompleteTime' => ['description' => 'The time when the backup snapshot was completed. The value is a UNIX timestamp. Unit: seconds.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1642496679'], + 'Retention' => ['description' => 'The retention period of the backup snapshot. Unit: days.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '730'], + 'CreatedTime' => ['description' => 'The time when the backup snapshot was created. The value is a UNIX timestamp. Unit: seconds.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1642496679'], + 'ParentSnapshotHash' => ['description' => 'The hash value of the parent backup snapshot.'."\n", 'type' => 'string', 'example' => 'f2fe..'], + 'StartTime' => ['description' => 'The time when the backup snapshot started. The value is a UNIX timestamp. Unit: seconds.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1642496543'], + 'UpdatedTime' => ['description' => 'The time when the backup snapshot was updated. The value is a UNIX timestamp. Unit: seconds.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1642496679'], + 'SnapshotId' => ['description' => 'The ID of the backup snapshot.'."\n", 'type' => 'string', 'example' => 's-00047mxg17p26*****b'], + 'JobId' => ['description' => 'The ID of the backup job.'."\n", 'type' => 'string', 'example' => 'job-00030j3chkt******2'], + 'InstanceName' => ['description' => 'The name of the Tablestore instance.'."\n", 'type' => 'string', 'example' => 'instancename'], + 'TableName' => ['description' => 'The name of the table in the Tablestore instance.'."\n", 'type' => 'string', 'example' => 'table2'], + 'RangeStart' => ['description' => 'The time when the backup job started. The value is a UNIX timestamp. Unit: milliseconds.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1642492553038'], + 'RangeEnd' => ['description' => 'The time when the backup job ended. The value is a UNIX timestamp. Unit: milliseconds.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1642521709966'], + ], + 'description' => 'The list of backup snapshots.', + ], + ], + 'NextToken' => ['description' => 'The token that is required to obtain the next page of backup snapshots.'."\n", 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0a'], + ], + 'description' => '', ], ], + ], + 'title' => 'DescribeOtsTableSnapshots', + 'summary' => 'Queries the details about Tablestore instances that are backed up.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeOtsTableSnapshots'], + ], + ], + 'ramActions' => [ [ - 'name' => 'ContainerClusterId', - 'in' => 'query', - 'schema' => [ - 'description' => 'You do not need to specify this parameter.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cc-000xxxxxxxxxxxxxxi00', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeOtsTableSnapshots', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"09376812-6290-5E36-B504-E8010D72D1F0\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"Limit\\": 10,\\n \\"Snapshots\\": [\\n {\\n \\"Status\\": \\"COMPLETE\\",\\n \\"SnapshotHash\\": \\"f2fe...\\",\\n \\"VaultId\\": \\"v-00030j*******sn\\",\\n \\"BackupType\\": \\"COMPLETE\\",\\n \\"CreateTime\\": 1607436917,\\n \\"ActualBytes\\": \\"0\\",\\n \\"SourceType\\": \\"OTS_TABLE\\",\\n \\"BytesTotal\\": 0,\\n \\"CompleteTime\\": 1642496679,\\n \\"Retention\\": 730,\\n \\"CreatedTime\\": 1642496679,\\n \\"ParentSnapshotHash\\": \\"f2fe..\\",\\n \\"StartTime\\": 1642496543,\\n \\"UpdatedTime\\": 1642496679,\\n \\"SnapshotId\\": \\"s-00047mxg17p26*****b\\",\\n \\"JobId\\": \\"job-00030j3chkt******2\\",\\n \\"InstanceName\\": \\"instancename\\",\\n \\"TableName\\": \\"table2\\",\\n \\"RangeStart\\": 1642492553038,\\n \\"RangeEnd\\": 1642521709966\\n }\\n ],\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeOtsTableSnapshotsResponse>\\n <RequestId>09376812-6290-5E36-B504-E8010D72D1F0</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <Limit>10</Limit>\\n <Snapshots>\\n <Status>COMPLETE</Status>\\n <SnapshotHash>f2fe...</SnapshotHash>\\n <VaultId>v-00030j*******sn</VaultId>\\n <BackupType>COMPLETE</BackupType>\\n <CreateTime>1607436917</CreateTime>\\n <ActualBytes>0</ActualBytes>\\n <SourceType>OTS_TABLE</SourceType>\\n <BytesTotal>0</BytesTotal>\\n <CompleteTime>1642496679</CompleteTime>\\n <Retention>730</Retention>\\n <CreatedTime>1642496679</CreatedTime>\\n <ParentSnapshotHash>f2fe..</ParentSnapshotHash>\\n <StartTime>1642496543</StartTime>\\n <UpdatedTime>1642496679</UpdatedTime>\\n <SnapshotId>s-00047mxg17p26*****b</SnapshotId>\\n <JobId>job-00030j3chkt******2</JobId>\\n <InstanceName>instancename</InstanceName>\\n <TableName>table2</TableName>\\n <RangeStart>1642492553038</RangeStart>\\n <RangeEnd>1642521709966</RangeEnd>\\n </Snapshots>\\n <NextToken>caeba0bbb2be03f84eb48b699f0a</NextToken>\\n</DescribeOtsTableSnapshotsResponse>","errorExample":""}]', + ], + 'DescribePoliciesV2' => [ + 'summary' => 'Queries one or more policies.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'CrossAccountType', - 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether data is backed up within the same Alibaba Cloud account or across Alibaba Cloud accounts. Valid values:'."\n" - ."\n" - .'* SELF_ACCOUNT: Data is backed up within the same Alibaba Cloud account.'."\n" - .'* CROSS_ACCOUNT: Data is backed up across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [], - 'example' => 'SELF_ACCOUNT', - ], + 'AK' => [], ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '162855', + 'abilityTreeNodes' => ['FEATUREhbr56LH1C', 'FEATUREhbrS7MI6C', 'FEATUREhbrFWIWBG', 'FEATUREhbr7WEYAR', 'FEATUREhbrB1KQ9G', 'FEATUREhbr3BJQCT', 'FEATUREhbrF83GXN'], + ], + 'parameters' => [ [ - 'name' => 'CrossAccountUserId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the source Alibaba Cloud account that authorizes the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '158975xxxxxx4625', - ], + 'name' => 'NextToken', + 'in' => 'formData', + 'schema' => ['description' => 'The token that is used to retrieve the next page of policies.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'caeba0bbb2be03f84eb48b699f0a'], ], [ - 'name' => 'CrossAccountRoleName', - 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the RAM role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'BackupRole', - ], + 'name' => 'MaxResults', + 'in' => 'formData', + 'schema' => ['description' => 'The number of entries to return on each page.'."\n" + ."\n" + .'Valid values: 10 to 100. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '10', 'title' => '', 'example' => '10'], + ], + [ + 'name' => 'PolicyId', + 'in' => 'formData', + 'schema' => ['description' => 'The policy ID.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'po-000************2l6'], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => 'DescribePoliciesResponse', + 'description' => 'DescribePoliciesResponse', 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '25F49E7B-7E39-542E-83AD-62E6E7F73786', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'JobId' => [ - 'description' => 'The ID of the backup job.'."\n", - 'type' => 'string', - 'example' => 'job-000csy09q50a2jdcbwbo', + 'Policies' => [ + 'description' => 'The list of policies.', + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the policy.', + 'type' => 'object', + 'properties' => [ + 'CreatedTime' => ['description' => 'The time when the policy was created. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1650248136'], + 'UpdatedTime' => ['description' => 'The time when the policy was updated. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1662080404'], + 'PolicyId' => ['description' => 'The policy ID.', 'type' => 'string', 'title' => '', 'example' => 'po-000************bkz'], + 'PolicyName' => ['description' => 'The policy name.', 'type' => 'string', 'title' => '', 'example' => 'Daily backup + offsite backup'], + 'PolicyDescription' => ['description' => 'The description of the policy.', 'type' => 'string', 'title' => '', 'example' => 'Data is backed up at 10:00:00 every day and replicated to the China (Shanghai) region.'], + 'Rules' => [ + 'description' => 'The list of policy rules.', + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the policy rule.', + 'type' => 'object', + 'properties' => [ + 'RuleId' => ['description' => 'The rule ID.', 'type' => 'string', 'title' => '', 'example' => 'rule-000************f1e'], + 'RuleType' => ['title' => 'TRANSITION, BACKUP, REPLICATION', 'description' => 'The type of the rule. Each policy must have at least one rule of the **BACKUP** type and can have only one rule of the **TRANSITION** type. Valid values:'."\n" + ."\n" + .'- **BACKUP**: the backup rule.'."\n" + ."\n" + .'- **TRANSITION**: the lifecycle rule.'."\n" + ."\n" + .'- **REPLICATION**: the replication rule.', 'type' => 'string', 'example' => 'BACKUP'], + 'Schedule' => ['description' => 'This parameter is required only when **RuleType** is set to **BACKUP**. The backup schedule. The format is `I|{startTime}|{interval}`. The system runs a backup job at a specified interval, starting from the specified time. The system does not run a backup job to compensate for a missed job. If the last backup job is not complete, the next backup job is not triggered. For example, `I|1631685600|P1D` indicates that a backup job is run every day, starting from 2021-09-15 14:00:00.'."\n" + ."\n" + .'- startTime: The time to start the backup. This value is a UNIX timestamp. Unit: seconds.'."\n" + ."\n" + .'- interval: The backup interval. The value must be in the ISO 8601 standard. For example, PT1H indicates an interval of one hour. P1D indicates an interval of one day.', 'type' => 'string', 'title' => '', 'example' => 'I|1648647166|P1D'], + 'BackupType' => ['title' => 'COMPLETE, INCREMENTAL, DIFFERENTIAL, LOG', 'description' => 'This parameter is required only when **RuleType** is set to **BACKUP**. The backup type. The value **COMPLETE** indicates a full backup.', 'type' => 'string', 'example' => 'COMPLETE'], + 'VaultId' => ['description' => 'This parameter is required only when RuleType is set to BACKUP. The ID of the backup vault.', 'type' => 'string', 'title' => '', 'example' => 'v-000**************kgm'], + 'ReplicationRegionId' => ['description' => 'This parameter is required only when **RuleType** is set to **REPLICATION**. The ID of the destination region for replication.', 'type' => 'string', 'title' => '', 'example' => 'cn-shanghai'], + 'Retention' => ['description' => 'This parameter is required only when **RuleType** is set to **TRANSITION** or **REPLICATION**.'."\n" + ."\n" + .'- If **RuleType** is set to **TRANSITION**: the retention period of the backup. The minimum value is 1. Unit: days.'."\n" + ."\n" + .'- If **RuleType** is set to **REPLICATION**: the retention period of the remote backup. The minimum value is 1. Unit: days.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '7'], + 'RetentionRules' => [ + 'description' => 'This parameter is required only when **RuleType** is set to **TRANSITION**. The list of special retention rules.', + 'type' => 'array', + 'items' => [ + 'description' => 'The special retention rule.', + 'type' => 'object', + 'properties' => [ + 'AdvancedRetentionType' => ['title' => 'DAILY, WEEKLY, MONTHLY, YEARLY', 'description' => 'The type of the special retention rule. Valid values:'."\n" + ."\n" + .'- **WEEKLY**: weekly backups'."\n" + ."\n" + .'- **MONTHLY**: monthly backups'."\n" + ."\n" + .'- **YEARLY**: yearly backups', 'type' => 'string', 'example' => 'YEARLY'], + 'WhichSnapshot' => ['description' => 'Specifies which backup is retained. This parameter is valid only for the first backup. The value must be 1.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1'], + 'Retention' => ['description' => 'The special retention period of the backup. The minimum value is 1. Unit: days.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '730'], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'ArchiveDays' => ['description' => 'This parameter is required only when **RuleType** is set to **TRANSITION**. The number of days before a backup is converted to an archive backup. Unit: days.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '30'], + 'KeepLatestSnapshots' => ['description' => 'Specifies whether to retain at least one backup version. Valid values:'."\n" + ."\n" + .'- **0**: No.'."\n" + ."\n" + .'- **1**: Yes.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1'], + 'DataSourceFilters' => [ + 'description' => 'This parameter is required only when **RuleType** is set to **TAG**. The filter rules for data sources.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'SourceType' => ['description' => 'The type of the data source. Valid values:'."\n" + ."\n" + .'- **UDM\\_ECS**: ECS instance backup'."\n" + ."\n" + .'- **OSS**: OSS backup'."\n" + ."\n" + .'- **NAS**: Alibaba Cloud NAS backup'."\n" + ."\n" + .'- **ECS\\_FILE**: ECS file backup'."\n" + ."\n" + .'- **OTS**: Tablestore backup', 'type' => 'string', 'title' => '', 'example' => 'UDM_ECS'], + 'DataSourceIds' => [ + 'description' => 'This parameter is deprecated.', + 'type' => 'array', + 'items' => ['description' => 'This parameter is deprecated.', 'type' => 'string', 'title' => '', 'example' => '已废弃。'], + 'title' => '', + 'example' => 'Deprecated.', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'TagFilters' => [ + 'description' => 'This parameter is required only when **RuleType** is set to **TAG**. The filter rules for resource tags.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => 'The tag key.', 'type' => 'string', 'title' => '', 'example' => 'env'], + 'Value' => ['description' => 'The tag value. If you leave this parameter empty, all tag values are matched.', 'type' => 'string', 'title' => '', 'example' => 'prod'], + 'Operator' => ['description' => 'The tag matching rule. Valid values:'."\n" + ."\n" + .'- **EQUAL**: Matches the tag key and tag value.'."\n" + ."\n" + .'- **NOT**: Matches the tag key but not the tag value.', 'type' => 'string', 'title' => '', 'example' => 'EQUAL'], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'Immutable' => ['description' => 'This parameter is valid only when **PolicyType** is set to**UDM\\_ECS\\_ONLY**. This parameter specifies whether to enable backup locking.', 'type' => 'boolean', 'title' => '', 'example' => 'true'], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'PolicyBindingCount' => ['description' => 'The number of data sources that are bound to the policy.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '5'], + 'PolicyType' => ['description' => 'The type of the policy. Valid values:'."\n" + ."\n" + .'- **STANDARD**: a standard backup policy. This policy type supports all data sources except ECS instance backup.'."\n" + ."\n" + .'- **UDM\\_ECS\\_ONLY**: an ECS instance backup policy. This policy type supports only ECS instance backup.', 'type' => 'string', 'title' => '', 'example' => 'STANDARD'], + 'BusinessStatus' => ['type' => 'string', 'title' => '', 'description' => 'The business status.', 'example' => 'ACTIVE'], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', ], + 'NextToken' => ['description' => 'The token that is used to retrieve the next page of policies.', 'type' => 'string', 'title' => '', 'example' => 'caeba0bbb2be03f84eb48b699f0a'], + 'MaxResults' => ['description' => 'The number of entries returned on each page.'."\n" + ."\n" + .'Valid values: 10 to 100. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '10'], + 'TotalCount' => ['description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '12'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'title' => '', 'example' => 'true'], + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request was successful.', 'type' => 'string', 'title' => '', 'example' => '200'], + 'Message' => ['description' => 'The message that is returned. If the request was successful, \\`successful\\` is returned. If the request failed, an error message is returned.', 'type' => 'string', 'title' => '', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], ], + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"25F49E7B-7E39-542E-83AD-62E6E7F73786\\",\\n \\"Success\\": true,\\n \\"JobId\\": \\"job-000csy09q50a2jdcbwbo\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateBackupJobResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>25F49E7B-7E39-542E-83AD-62E6E7F73786</RequestId>\\n <Success>true</Success>\\n <JobId>job-000csy09q50a2jdcbwbo</JobId>\\n</CreateBackupJobResponse>","errorExample":""}]', - 'title' => 'CreateBackupJob', - 'summary' => 'Creates a backup job.', - ], - 'DescribeBackupJobs2' => [ - 'summary' => 'Queries the information about one or more backup jobs that meet the specified conditions.', - 'methods' => [ - 'post', - 'get', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Policies\\": [\\n {\\n \\"CreatedTime\\": 1650248136,\\n \\"UpdatedTime\\": 1662080404,\\n \\"PolicyId\\": \\"po-000************bkz\\",\\n \\"PolicyName\\": \\"Daily backup + offsite backup\\",\\n \\"PolicyDescription\\": \\"Data is backed up at 10:00:00 every day and replicated to the China (Shanghai) region.\\",\\n \\"Rules\\": [\\n {\\n \\"RuleId\\": \\"rule-000************f1e\\",\\n \\"RuleType\\": \\"BACKUP\\",\\n \\"Schedule\\": \\"I|1648647166|P1D\\",\\n \\"BackupType\\": \\"COMPLETE\\",\\n \\"VaultId\\": \\"v-000**************kgm\\",\\n \\"ReplicationRegionId\\": \\"cn-shanghai\\",\\n \\"Retention\\": 7,\\n \\"RetentionRules\\": [\\n {\\n \\"AdvancedRetentionType\\": \\"YEARLY\\",\\n \\"WhichSnapshot\\": 1,\\n \\"Retention\\": 730\\n }\\n ],\\n \\"ArchiveDays\\": 30,\\n \\"KeepLatestSnapshots\\": 1,\\n \\"DataSourceFilters\\": [\\n {\\n \\"SourceType\\": \\"UDM_ECS\\",\\n \\"DataSourceIds\\": [\\n \\"已废弃。\\"\\n ]\\n }\\n ],\\n \\"TagFilters\\": [\\n {\\n \\"Key\\": \\"env\\",\\n \\"Value\\": \\"prod\\",\\n \\"Operator\\": \\"EQUAL\\"\\n }\\n ],\\n \\"Immutable\\": true\\n }\\n ],\\n \\"PolicyBindingCount\\": 5,\\n \\"PolicyType\\": \\"STANDARD\\",\\n \\"BusinessStatus\\": \\"ACTIVE\\"\\n }\\n ],\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a\\",\\n \\"MaxResults\\": 10,\\n \\"TotalCount\\": 12,\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', + 'title' => 'DescribePoliciesV2', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribePoliciesV2'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'hbr:DescribePoliciesV2', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'translator' => 'machine', + ], + 'DescribePolicyBindings' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -10643,974 +7529,1122 @@ 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', + 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeCode' => '95502', - 'abilityTreeNodes' => [ - 'FEATUREhbr56LH1C', - 'FEATUREhbrS7MI6C', - 'FEATUREhbrFWIWBG', - 'FEATUREhbrAW9I1R', - 'FEATUREhbrB1KQ9G', - 'FEATUREhbrQ3MV3B', - 'FEATUREhbr3BJQCT', - ], + 'abilityTreeCode' => '136855', + 'abilityTreeNodes' => ['FEATUREhbr56LH1C', 'FEATUREhbrS7MI6C', 'FEATUREhbrFWIWBG', 'FEATUREhbrB1KQ9G', 'FEATUREhbrQ3MV3B', 'FEATUREhbr3BJQCT'], ], 'parameters' => [ [ - 'name' => 'PageNumber', - 'in' => 'query', - 'schema' => [ - 'description' => 'The number of the page to return. Pages start from page 1. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '1', - 'example' => '1', - 'default' => '1', - ], + 'name' => 'NextToken', + 'in' => 'formData', + 'schema' => ['description' => 'The token that is used to retrieve the next page of results.', 'type' => 'string', 'required' => false, 'example' => 'caeba0bbb2be03f84eb48b699f0a', 'title' => ''], ], [ - 'name' => 'PageSize', - 'in' => 'query', - 'schema' => [ - 'description' => 'The number of entries to return on each page. Valid values: 1 to 99. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '100', - 'minimum' => '1', - 'example' => '10', - 'default' => '10', - ], + 'name' => 'MaxResults', + 'in' => 'formData', + 'schema' => ['description' => 'The number of results to return for each query.'."\n" + ."\n" + .'Valid values: 10 to 100. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'default' => '10', 'required' => false, 'example' => '10', 'title' => ''], ], [ - 'name' => 'SourceType', - 'in' => 'query', + 'name' => 'PolicyId', + 'in' => 'formData', + 'schema' => ['description' => 'The policy ID.', 'type' => 'string', 'required' => false, 'example' => 'po-000************hky', 'title' => ''], + ], + [ + 'name' => 'DataSourceIds', + 'in' => 'formData', + 'style' => 'json', 'schema' => [ - 'description' => 'The type of the data source. Valid values:'."\n" - ."\n" - .'* **ECS_FILE**: Elastic Compute Service (ECS) files'."\n" - .'* **OSS**: Object Storage Service (OSS) buckets'."\n" - .'* **NAS**: Apsara File Storage NAS file systems'."\n" - .'* **OTS**: Tablestore instances'."\n" - .'* **UDM_ECS**: ECS instances'."\n" - .'* **UDM_ECS_DISK**: ECS disks'."\n", - 'type' => 'string', + 'description' => 'A list of data source IDs.', + 'type' => 'array', + 'items' => ['description' => 'The data source ID.', 'type' => 'string', 'required' => false, 'example' => 'i-uf6************68n', 'title' => ''], 'required' => false, - 'docRequired' => true, - 'example' => 'ECS_FILE', + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'SortDirection', + 'name' => 'SourceType', 'in' => 'query', - 'schema' => [ - 'description' => 'The order in which you want to sort the results. Valid values:'."\n" - ."\n" - .'* **ASCEND**: sorts the results in ascending order'."\n" - .'* **DESCEND** (default value): sorts the results in descending order'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'DESCEND', - 'default' => 'DESCEND', - 'enum' => [ - 'ASCEND', - 'DESCEND', - ], - ], + 'schema' => ['description' => 'The type of the data source. Valid value:'."\n" + ."\n" + .'- **UDM\\_ECS**: ECS instance backup.', 'type' => 'string', 'required' => false, 'example' => 'UDM_ECS', 'title' => ''], ], [ 'name' => 'Filters', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The keys that you want to match in the filter.', + 'description' => 'The query filters.', 'type' => 'array', 'items' => [ - 'description' => 'The keys that you want to match in the filter.', + 'description' => 'The query filters.', 'type' => 'object', 'properties' => [ - 'Key' => [ - 'description' => 'The keys in the filter. Valid values:'."\n" - ."\n" - .'* **RegionId**: the ID of a region'."\n" - .'* **PlanId**: the ID of a backup plan'."\n" - .'* **JobId**: the ID of a backup job'."\n" - .'* **VaultId**: the ID of a backup vault'."\n" - .'* **InstanceId**: the ID of an ECS instance'."\n" - .'* **Bucket**: the name of an OSS bucket'."\n" - .'* **FileSystemId**: the ID of a file system'."\n" - .'* **Status**: the status of a backup job'."\n" - .'* **CreatedTime**: the start time of a backup job'."\n" - .'* **CompleteTime**: the end time of a backup job'."\n" - .'* **instanceName**: the name of a Tablestore instance'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'VaultId', - ], + 'Key' => ['description' => 'The key of the filter. Valid values:'."\n" + ."\n" + .'- **PolicyId**: the backup policy ID'."\n" + ."\n" + .'- **DataSourceId**: the ECS instance ID'."\n" + ."\n" + .'- **DataSourceType**: the data source type', 'type' => 'string', 'required' => false, 'example' => 'DataSourceType', 'title' => ''], + 'Operator' => ['description' => 'The matching method. The default value is IN. This parameter specifies the operator to use for matching the key and value. Valid values:'."\n" + ."\n" + .'- **EQUAL**: equal to'."\n" + ."\n" + .'- **NOT\\_EQUAL**: not equal to'."\n" + ."\n" + .'- **GREATER\\_THAN**: greater than'."\n" + ."\n" + .'- **GREATER\\_THAN\\_OR\\_EQUAL**: greater than or equal to'."\n" + ."\n" + .'- **LESS\\_THAN**: less than'."\n" + ."\n" + .'- **LESS\\_THAN\\_OR\\_EQUAL**: less than or equal to'."\n" + ."\n" + .'- **BETWEEN**: between. The value is a JSON array in the format of `[lower_bound,upper_bound]`.'."\n" + ."\n" + .'- **IN**: in a set. The value is an array.', 'type' => 'string', 'required' => false, 'example' => 'IN', 'title' => ''], 'Values' => [ - 'description' => 'The values that you want to match in the filter.', + 'description' => 'The value to match in the filter.', 'type' => 'array', - 'items' => [ - 'description' => 'The values that you want to match in the filter.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'COMPLETE', - ], - 'required' => false, - 'maxItems' => 500, - ], - 'Operator' => [ - 'description' => 'The matching method. Default value: IN. This parameter specifies the operator that you want to use to match a key and a value in the filter. Valid values:'."\n" - ."\n" - .'* **EQUAL**: equal to'."\n" - .'* **NOT_EQUAL**: not equal to'."\n" - .'* **GREATER_THAN**: greater than'."\n" - .'* **GREATER_THAN_OR_EQUAL**: greater than or equal to'."\n" - .'* **LESS_THAN**: less than'."\n" - .'* **LESS_THAN_OR_EQUAL**: less than or equal to'."\n" - .'* **BETWEEN**: specifies a JSON array as a range. The results must fall within the range in the `[Minimum value,maximum value]` format.'."\n" - .'* **IN**: specifies an array as a collection. The results must fall within the collection.'."\n" - ."\n" - .'> If you specify **CompleteTime** as a key to query backup jobs, you cannot use the IN operator to perform a match.'."\n", - 'type' => 'string', + 'items' => ['description' => 'The value to match in the filter.', 'type' => 'string', 'required' => false, 'example' => 'UDM_ECS', 'title' => ''], 'required' => false, - 'example' => 'IN', + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], 'required' => false, + 'title' => '', + 'example' => '', ], 'required' => false, - 'maxItems' => 5, - ], - ], - [ - 'name' => 'Edition', - 'in' => 'query', - 'schema' => [ - 'title' => '版本类型,支持BASIC和STANDARD,默认值为STANDARD。', - 'type' => 'string', - 'example' => 'STANDARD', + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => 'DescribePolicyBindingsResponse', + 'description' => 'DescribePolicyBindingsResponse', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Success' => [ - 'description' => 'Indicates whether the call is successful.'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'PageNumber' => [ - 'description' => 'The page number of the returned page. Pages start from page 1. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'PageSize' => [ - 'description' => 'The number of entries returned per page. Valid values: 1 to 99. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'TotalCount' => [ - 'description' => 'The total number of returned backup jobs that meet the specified conditions.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '8', - ], - 'BackupJobs' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'BackupJob' => [ - 'description' => 'The returned backup jobs that meet the specified conditions.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The returned backup job that meet the specified conditions.', + 'PolicyBindings' => [ + 'description' => 'The list of policy bindings.', + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the policy binding.', + 'type' => 'object', + 'properties' => [ + 'CreatedTime' => ['description' => 'The time when the policy binding was created. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1661399570', 'title' => ''], + 'UpdatedTime' => ['description' => 'The time when the policy binding was last updated. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1653611573', 'title' => ''], + 'PolicyBindingId' => ['description' => 'The ID of the policy binding.', 'type' => 'string', 'example' => 'pd-000************slc', 'title' => ''], + 'PolicyBindingDescription' => ['description' => 'The description of the policy binding.', 'type' => 'string', 'example' => 'po-000************eslc-i-uf6************y5g', 'title' => ''], + 'PolicyId' => ['description' => 'The policy ID.', 'type' => 'string', 'example' => 'po-000************56y', 'title' => ''], + 'DataSourceId' => ['description' => 'The data source ID.', 'type' => 'string', 'example' => 'i-8vb************5ly', 'title' => ''], + 'Disabled' => ['description' => 'Indicates whether the policy is paused for the data source.'."\n" + ."\n" + .'- true: The policy is paused.'."\n" + ."\n" + .'- false: The policy is not paused.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Source' => ['description' => '- If SourceType is set to **OSS**, this parameter specifies the prefix of objects to back up. If you do not specify this parameter, the entire bucket is backed up.'."\n" + ."\n" + .'- If SourceType is set to **ECS\\_FILE** or **File**, this parameter specifies the paths to the files to back up. If you do not specify this parameter, all directories are backed up.', 'type' => 'string', 'example' => 'backup/', 'title' => ''], + 'Include' => ['description' => 'This parameter is required only if **SourceType** is set to **ECS\\_FILE** or **File**. This parameter specifies the file types to back up. All files of the specified types are backed up. This parameter supports a maximum of 255 characters.', 'type' => 'string', 'example' => '[\\"*.doc\\",\\"*.xltm\\"]', 'title' => ''], + 'Exclude' => ['description' => 'This parameter is required only if **SourceType** is set to **ECS\\_FILE** or **File**. This parameter specifies the file types to exclude from the backup. All files of the specified types are not backed up. This parameter supports a maximum of 255 characters.', 'type' => 'string', 'example' => '[\\"*.doc\\",\\"*.xltm\\"]', 'title' => ''], + 'SpeedLimit' => ['description' => 'This parameter is required only if **SourceType** is set to **ECS\\_FILE** or **File**. This parameter specifies the traffic shaping settings for the backup. The format is `{start}:{end}:{bandwidth}`. You can specify multiple settings. Separate them with commas (,). The time periods cannot overlap.'."\n" + ."\n" + .'- **start**: the start hour.'."\n" + ."\n" + .'- **end**: the end hour.'."\n" + ."\n" + .'- **bandwidth**: the throttling speed. Unit: KB/s.', 'type' => 'string', 'example' => '0:24:10240', 'title' => ''], + 'AdvancedOptions' => [ + 'description' => 'The advanced options.', 'type' => 'object', 'properties' => [ - 'Status' => [ - 'description' => 'The status of the backup job. Valid values:'."\n" - ."\n" - .'* **COMPLETE**: The backup job is completed.'."\n" - .'* **PARTIAL_COMPLETE**: The backup job is partially completed.'."\n" - .'* **FAILED**: The restore job has failed.'."\n", - 'type' => 'string', - 'example' => 'COMPLETE', - ], - 'ErrorMessage' => [ - 'description' => 'The error message that is returned for the backup job.'."\n", - 'type' => 'string', - 'example' => 'PARTIAL_COMPLETE', - ], - 'ActualItems' => [ - 'description' => 'This parameter is returned only if the **SourceType** parameter is set to **ECS_FILE**. This parameter indicates the actual number of objects that are backed up by the backup job.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '6', - ], - 'VaultId' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'example' => 'v-0006******q', - ], - 'ActualBytes' => [ - 'description' => 'The actual amount of data that is backed up after duplicates are removed. Unit: bytes.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '600', - ], - 'CreateTime' => [ - 'description' => 'This parameter is returned only if the **SourceType** parameter is set to **NAS**. This parameter indicates the time when the file system was created. This value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1607436917', - ], - 'BackupType' => [ - 'description' => 'The backup type. Valid value: **COMPLETE**, which indicates full backup.'."\n", - 'type' => 'string', - 'example' => 'COMPLETE', - ], - 'Prefix' => [ - 'description' => 'This parameter is returned only if the **SourceType** parameter is set to **OSS**. This parameter indicates the prefix of objects that are backed up.'."\n", - 'type' => 'string', - 'example' => 'example/', - ], - 'SourceType' => [ - 'description' => 'The type of the data source. Valid values:'."\n" - ."\n" - .'* **ECS_FILE**: ECS files'."\n" - .'* **OSS**: OSS buckets'."\n" - .'* **NAS**: NAS file systems'."\n", - 'type' => 'string', - 'example' => 'ECS_FILE', - ], - 'Options' => [ - 'description' => 'This parameter is returned only if the **SourceType** parameter is set to **ECS_FILE**. This parameter indicates whether Windows VSS is used to define a backup path.'."\n" - ."\n" - .'* This parameter is available only for Windows ECS instances.'."\n" - .'* If data changes occur in the backup source, the source data must be the same as the data to be backed up before the system sets this parameter to `["UseVSS":true]`.'."\n" - .'* If you use VSS, you cannot back up data from multiple directories.'."\n", - 'type' => 'string', - 'example' => '{"UseVSS":false}', - ], - 'ClientId' => [ - 'description' => 'This parameter is returned only if the **SourceType** parameter is set to **ECS_FILE**. This parameter indicates the ID of the backup client.'."\n", - 'type' => 'string', - 'example' => 'c-*********************', - ], - 'ItemsDone' => [ - 'description' => 'This parameter is returned only if the **SourceType** parameter is set to **ECS_FILE**. This parameter indicates the number of objects that are backed up.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '8', - ], - 'BytesTotal' => [ - 'description' => 'The total amount of data that is backed up from the data source. Unit: bytes.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1000', - ], - 'Exclude' => [ - 'description' => 'This parameter is returned only if the **SourceType** parameter is set to **ECS_FILE**. This parameter indicates the paths to the files that are excluded from the backup job. The value must be 1 to 255 characters in length.'."\n", - 'type' => 'string', - 'example' => '["/var", "/proc"]', - ], - 'JobName' => [ - 'description' => 'The name of the backup job.'."\n", - 'type' => 'string', - 'example' => 'jobname', - ], - 'CompleteTime' => [ - 'description' => 'The time when the backup job was completed. This value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1554347313', - ], - 'CreatedTime' => [ - 'description' => 'The time when the backup job was created. This value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1554347313', - ], - 'Bucket' => [ - 'description' => 'This parameter is returned only if the **SourceType** parameter is set to **OSS**. This parameter indicates the name of the OSS bucket that is backed up.'."\n", - 'type' => 'string', - 'example' => 'hbr-backup-oss', - ], - 'Progress' => [ - 'description' => 'The backup progress. For example, 10000 indicates that the progress is 100%.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10000', - ], - 'SpeedLimit' => [ - 'description' => 'This parameter is returned only if the **SourceType** parameter is set to **ECS_FILE**. This parameter indicates the throttling rules. Format: `{start}{end}{bandwidth}`. Multiple throttling rules are separated with vertical bars (`{start}|{end}|{bandwidth}`). A specified time range cannot overlap with another one.'."\n" - ."\n" - .'* **start**: the start hour'."\n" - .'* **end**: the end hour'."\n" - .'* **bandwidth**: the bandwidth. Unit: KB/s.'."\n", - 'type' => 'string', - 'example' => '0:24:5120', - ], - 'InstanceId' => [ - 'description' => 'This parameter is returned only if the **SourceType** parameter is set to **NAS**. This parameter indicates the ID of the ECS instance.'."\n", - 'type' => 'string', - 'example' => 'i-*********************', - ], - 'PlanId' => [ - 'description' => 'The ID of the backup plan.'."\n", - 'type' => 'string', - 'example' => 'plan-20********35', - ], - 'FileSystemId' => [ - 'description' => 'This parameter is returned only if the **SourceType** parameter is set to **NAS**. This parameter indicates the ID of the NAS file system.'."\n", - 'type' => 'string', - 'example' => '005494', - ], - 'StartTime' => [ - 'description' => 'The time when the backup job started. This value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1554347313', - ], - 'UpdatedTime' => [ - 'description' => 'The time when the backup job was updated. This value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1554347313', - ], - 'JobId' => [ - 'description' => 'The ID of the backup job.'."\n", - 'type' => 'string', - 'example' => 'job-000g********w7', - ], - 'ItemsTotal' => [ - 'description' => 'This parameter is returned only if the **SourceType** parameter is set to **ECS_FILE**. This parameter indicates the total number of objects in the data source.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '10', - ], - 'Include' => [ - 'description' => 'The paths to the files that are included in the backup job.'."\n", - 'type' => 'string', - 'example' => '["/home/alice/*.pdf", "/home/bob/*.txt"]', - ], - 'BytesDone' => [ - 'description' => 'The actual amount of data that is generated by incremental backups. Unit: bytes.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '800', - ], - 'Paths' => [ + 'UdmDetail' => [ + 'description' => 'The advanced options for ECS instance backup.', 'type' => 'object', - 'itemNode' => true, 'properties' => [ - 'Path' => [ - 'description' => 'The backup paths.'."\n", + 'ExcludeDiskIdList' => [ + 'description' => 'The list of disk IDs to exclude from the backup. This parameter is ignored if \\`DiskIdList\\` is not empty.', 'type' => 'array', - 'items' => [ - 'description' => 'The backup path.', - 'type' => 'string', - 'example' => '"/home"', - ], + 'items' => ['description' => 'The ID of the disk to exclude from the backup.', 'type' => 'string', 'example' => 'd-bp1************apo'."\n", 'title' => ''], + 'title' => '', + 'example' => '', ], + 'DiskIdList' => [ + 'description' => 'The list of disk IDs to back up. If you want to back up all disks, leave this parameter empty.', + 'type' => 'array', + 'items' => ['description' => 'The ID of the disk to back up.', 'type' => 'string', 'example' => 'd-bp1************apo'."\n", 'title' => ''], + 'title' => '', + 'example' => '', + ], + 'SnapshotGroup' => ['description' => 'Indicates whether to create a snapshot-consistent group. You can create a snapshot-consistent group only when all disks of the instance are Enhanced SSDs (ESSDs).', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'AppConsistent' => ['description' => 'Indicates whether to create an application-consistent snapshot. You can create an application-consistent snapshot only when all disks of the instance are ESSDs.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], + 'RamRoleName' => ['description' => 'This parameter is required only if **AppConsistent** is set to **true**. This parameter specifies the name of the RAM role that is required to create an application-consistent snapshot.', 'type' => 'string', 'example' => 'AliyunECSInstanceForHbrRole', 'title' => ''], + 'PreScriptPath' => ['description' => 'This parameter is required only if **AppConsistent** is set to **true**. This parameter specifies the path of the pre-freeze script that is run before the application-consistent snapshot is created.', 'type' => 'string', 'example' => '/tmp/prescript.sh', 'title' => ''], + 'PostScriptPath' => ['description' => 'This parameter is required only if **AppConsistent** is set to **true**. This parameter specifies the path of the post-thaw script that is run after the application-consistent snapshot is created.', 'type' => 'string', 'example' => '/tmp/postscript.sh', 'title' => ''], + 'EnableFsFreeze' => ['description' => 'This parameter is required only if **AppConsistent** is set to **true**. This parameter indicates whether to use the \\`fsfreeze\\` command of the Linux operating system to put the file system in a read-only state before you create an application-consistent snapshot. The default value is true.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'TimeoutInSeconds' => ['description' => 'This parameter is required only if **AppConsistent** is set to **true**. This parameter specifies the timeout period for I/O freeze. The default value is 30 seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '30', 'title' => ''], + 'EnableWriters' => ['description' => 'This parameter is required only if **AppConsistent** is set to **true**. Indicates whether to create an application-consistent snapshot:'."\n" + ."\n" + .'- true: Create an application-consistent snapshot.'."\n" + ."\n" + .'- false: Create a file system-consistent snapshot.'."\n" + ."\n" + .'Default value: true.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'DestinationKmsKeyId' => ['description' => 'The ID of a customer managed key (CMK) in the destination region. If you enable cross-region replication and specify this parameter, the cross-region backup is encrypted using the specified key.', 'type' => 'string', 'example' => '4ed37b1e-da51-4187-aceb-9db4f9b7148b', 'title' => ''], ], + 'title' => '', + 'example' => '', ], - 'Detail' => [ - 'description' => 'The udm backup job detail.', + 'OssDetail' => [ + 'description' => 'The advanced options for OSS backup.', 'type' => 'object', 'properties' => [ - 'DoCopy' => [ - 'description' => 'Indicates whether remote replication is enabled.', - 'type' => 'boolean', - 'example' => 'true', - ], - 'DestinationNativeSnapshotId' => [ - 'description' => 'The ID of the remote replication snapshot.', - 'type' => 'string', - 'example' => 's-******************', - ], - 'DestinationNativeSnapshotProgress' => [ - 'description' => 'The progress of the remote replication.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '85', - ], - 'DestinationNativeSnapshotStatus' => [ - 'description' => 'The state of the remote replication.', - 'type' => 'string', - 'example' => 'COMPLETE', - ], - 'DestinationRetention' => [ - 'description' => 'The retention period of the remote replication backup.', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '30', - ], - 'DestinationSnapshotId' => [ - 'description' => 'The ID of the remote replication backup.', - 'type' => 'string', - 'example' => 's-******************', - ], - 'DestinationNativeSnapshotErrorMessage' => [ - 'description' => 'The information about the remote replication failure.', - 'type' => 'string', - 'example' => 'ECS.CreatingSnapshot', - ], - 'NativeSnapshotId' => [ - 'description' => 'The ID of the backup snapshot.', - 'type' => 'string', - 'example' => 's-******************', - ], - 'DiskNativeSnapshotIdList' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'DiskNativeSnapshotId' => [ - 'description' => 'The mapping between snapshots and disks.', - 'type' => 'array', - 'items' => [ - 'description' => 'The native snapshot id.', - 'type' => 'string', - 'example' => 's-******************', - ], - ], - ], - ], - 'InstanceInfos' => [ - 'description' => 'The ecs instance infos.', - 'type' => 'object', - 'example' => '{'."\n" - .' "i-xxxxxxxx": {'."\n" - .' "hostName": "test",'."\n" - .' "instanceName": "test",'."\n" - .' "instanceType": "ecs.c7.xlarge",'."\n" - .' "osType": "linux",'."\n" - .' "diskIds": ['."\n" - .' "d-xxxxxxxx01",'."\n" - .' "d-xxxxxxxx02"'."\n" - .' ],'."\n" - .' "osNameEn": "Rocky Linux 8.8 64 bit",'."\n" - .' "osName": "Rocky Linux 8.8 64位",'."\n" - .' "platform": "Rocky Linux"'."\n" - .' }'."\n" - .'}', - ], + 'InventoryId' => ['description' => 'The name of the OSS inventory. If you specify this parameter, an OSS inventory is used for performance optimization.'."\n" + ."\n" + .'- The storage fees for inventory files are charged by OSS.'."\n" + ."\n" + .'- It takes time to generate an OSS inventory file. The backup job may fail before the inventory file is generated. You can wait for the next backup cycle to run.', 'type' => 'string', 'example' => 'inventory_test', 'title' => ''], + 'InventoryCleanupPolicy' => ['description' => 'Indicates whether to delete the inventory file after a backup. This parameter is valid only when an OSS inventory is used. Valid values:'."\n" + ."\n" + .'- **NO\\_CLEANUP**: The inventory file is not deleted.'."\n" + ."\n" + .'- **DELETE\\_CURRENT**: The current inventory file is deleted.'."\n" + ."\n" + .'- **DELETE\\_CURRENT\\_AND\\_PREVIOUS**: All inventory files are deleted.', 'type' => 'string', 'example' => 'DELETE_CURRENT_AND_PREVIOUS', 'title' => ''], + 'IgnoreArchiveObject' => ['title' => '不在任务统计和失败文件列表中提示归档型对象', 'description' => 'Indicates whether to exclude archive objects from the backup job statistics and the list of failed files.', 'type' => 'boolean', 'example' => 'true'], ], + 'title' => '', + 'example' => '', ], - 'InstanceName' => [ - 'description' => 'The name of the Tablestore instance.'."\n", - 'type' => 'string', - 'example' => 'instancename', - ], - 'OtsDetail' => [ - 'description' => 'The details about the Tablestore instance.'."\n", + 'FileDetail' => [ + 'description' => 'The advanced options for file backup.', 'type' => 'object', 'properties' => [ - 'TableNames' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'TableName' => [ - 'description' => 'The names of the destination tables in the Tablestore instance.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The name of the table.'."\n", - 'type' => 'string', - 'example' => '["table1", "table2", "table3"]', - ], - ], - ], - ], + 'UseVSS' => ['description' => 'Indicates whether to enable the Volume Shadow Copy Service (VSS) feature. This feature is available only for Windows instances. Valid values:'."\n" + ."\n" + .'- **true**: Enable the VSS feature.'."\n" + ."\n" + .'- **false**: Disable the VSS feature.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], + 'AdvPolicy' => ['description' => 'Indicates whether to use an advanced policy. Valid values:'."\n" + ."\n" + .'- **true**: Use an advanced policy.'."\n" + ."\n" + .'- **false**: Do not use an advanced policy.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], ], + 'title' => '', + 'example' => '', ], - 'Speed' => [ - 'description' => 'The average speed at which data is backed up. Unit: KB/s.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '500', - ], - 'TableName' => [ - 'description' => 'The name of a destination table in the Tablestore instance.'."\n", - 'type' => 'string', - 'example' => 'table1', - ], - 'CrossAccountType' => [ - 'description' => 'Specifies whether data is backed up within the same Alibaba Cloud account or across Alibaba Cloud accounts. Valid values:'."\n" - ."\n" - .'* SELF_ACCOUNT: Data is backed up within the same Alibaba Cloud account.'."\n" - .'* CROSS_ACCOUNT: Data is backed up across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'enumValueTitles' => [], - 'example' => 'SELF_ACCOUNT', - ], - 'CrossAccountUserId' => [ - 'description' => 'The ID of the source Alibaba Cloud account that authorizes the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '158975xxxxx4625', - ], - 'CrossAccountRoleName' => [ - 'description' => 'The name of the RAM role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'example' => 'BackupRole', - ], - 'Report' => [ - 'description' => 'Task Report', + 'CommonNasDetail' => [ + 'description' => 'The advanced options for on-premises NAS.', 'type' => 'object', 'properties' => [ - 'TotalFiles' => [ - 'description' => 'List of all files. (This field is not returned for data synchronization)', - 'type' => 'string', - 'example' => '/temp/report/158975xxxxxx4625/job-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_total.csv', - ], - 'SuccessFiles' => [ - 'description' => 'List of successful files.', - 'type' => 'string', - 'example' => '/temp/report/158975xxxxxx4625/r-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_success.zip', - ], - 'FailedFiles' => [ - 'description' => 'List of failed files', - 'type' => 'string', - 'example' => '/temp/report/158975xxxxxx4625/r-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_failed.zip', - ], - 'SkippedFiles' => [ - 'description' => 'List of skipped files', - 'type' => 'string', - 'example' => '/temp/report/158975xxxxxx4625/r-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_skipped.zip', - ], - 'ReportTaskStatus' => [ - 'description' => 'Report generation status.', - 'type' => 'string', - 'example' => 'COMPLETE', - ], + 'FullOnIncrementFail' => ['description' => 'Indicates whether to run a full backup if an incremental backup fails. Valid values:'."\n" + ."\n" + .'- **true**: Run a full backup.'."\n" + ."\n" + .'- **false**: Do not run a full backup.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'FetchSliceSize' => ['description' => 'The size of a backup shard, which is the number of files.', 'type' => 'integer', 'format' => 'int64', 'example' => '100000', 'title' => ''], + 'ClientId' => ['description' => 'The backup client ID.', 'type' => 'string', 'example' => 'c-0001eg6mcvjs93f46s2d', 'title' => ''], + 'ClusterId' => ['description' => 'The client group ID.', 'type' => 'string', 'example' => 'cl-000gkcofngi04j6k680a', 'title' => ''], ], + 'title' => '', + 'example' => '', ], - 'Identifier' => [ - 'title' => '仅SourceType=CONTAINER时返回,表示容器备份任务备份的集群标识。当集群类型为阿里云容器服务Kubernetes集群时,该值为Kubernetes集群ID。', - 'description' => 'The identifier of the container cluster. For a Container Service for Kubernetes (ACK) cluster, specify the cluster ID.'."\n", - 'type' => 'string', - 'example' => 'c83**************************b76', - ], - 'DestSourceType' => [ - 'description' => 'Destination data source type. (Required only for synchronization)', - 'type' => 'string', - 'example' => 'OSS', - ], - 'DestDataSourceId' => [ - 'description' => 'Destination data source ID. (Required only for synchronization)', - 'type' => 'string', - 'example' => 'ds-000cov4ufudxklj24zdk', - ], - 'DestDataSourceDetail' => [ - 'description' => 'Destination data source details. (Required only for synchronization)', - 'type' => 'string', - 'example' => '{\\"prefix\\":\\"/\\"}', - ], - 'ChangeListPath' => [ - 'description' => 'The data source details at the destination. Thisparameter is returned only for data synchronization.', - 'type' => 'string', - 'example' => '{"dataSourceId": "ds-123456789", "path": "/changelist"}', - ], - 'FilesTotal' => [ - 'description' => 'The total number of files to be processed.', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '10', - ], - 'FilesDone' => [ - 'description' => 'The number of files that have been processed.', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '9', + 'CommonFileSystemDetail' => [ + 'description' => 'The advanced options for large-scale file system backup.', + 'type' => 'object', + 'properties' => [ + 'FullOnIncrementFail' => ['description' => 'Indicates whether to run a full backup if an incremental backup fails. Valid values:'."\n" + ."\n" + .'- **true**: Run a full backup.'."\n" + ."\n" + .'- **false**: Do not run a full backup.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'FetchSliceSize' => ['description' => 'The size of a backup shard, which is the number of files.', 'type' => 'integer', 'format' => 'int64', 'example' => '100000', 'title' => ''], + ], + 'title' => '', + 'example' => '', ], - 'ActualFiles' => [ - 'description' => 'The number of files that are actually processed.', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '8', + ], + 'title' => '', + 'example' => '', + ], + 'SourceType' => ['description' => 'The type of the data source. Valid value:'."\n" + ."\n" + .'- **UDM\\_ECS**: ECS instance backup', 'type' => 'string', 'example' => 'UDM_ECS', 'title' => ''], + 'CrossAccountType' => ['description' => 'The type of cross-account backup. Valid values:'."\n" + ."\n" + .'- SELF\\_ACCOUNT: Backs up data within the same account.'."\n" + ."\n" + .'- CROSS\\_ACCOUNT: Backs up data across accounts.', 'type' => 'string', 'example' => 'CROSS_ACCOUNT', 'title' => ''], + 'CrossAccountUserId' => ['description' => 'The ID of the source account for cross-account backup.', 'type' => 'integer', 'format' => 'int64', 'example' => '1480************', 'title' => ''], + 'CrossAccountRoleName' => ['description' => 'The name of the RAM role that is created in the source account for cross-account backup.', 'type' => 'string', 'example' => 'hbrcrossrole', 'title' => ''], + 'CreatedByTag' => ['description' => 'Indicates whether the data source is automatically bound to the backup policy based on tags.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], + 'HitTags' => [ + 'description' => 'The matched tag rules.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'env', 'title' => ''], + 'Value' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'prod', 'title' => ''], + 'Operator' => ['description' => 'The tag matching rule.'."\n" + ."\n" + .'- **EQUAL**: Matches the tag key and tag value.'."\n" + ."\n" + .'- **NOT**: Matches the tag key but not the tag value.', 'type' => 'string', 'example' => 'EQUAL', 'title' => ''], ], + 'description' => '', + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], + 'NextToken' => ['description' => 'The token that is used to retrieve the next page of policy bindings.', 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0a', 'title' => ''], + 'MaxResults' => ['description' => 'The number of results returned for each query.'."\n" + ."\n" + .'Valid values: 10 to 100. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], + 'TotalCount' => ['description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int64', 'example' => '38', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request was successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The returned message. If the request is successful, \\`successful\\` is returned. If the request fails, an error message is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '5225929A-4EBD-55EE-9FE1-4A130E582A76', 'title' => ''], ], + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 8,\\n \\"BackupJobs\\": {\\n \\"BackupJob\\": [\\n {\\n \\"Status\\": \\"COMPLETE\\",\\n \\"ErrorMessage\\": \\"PARTIAL_COMPLETE\\",\\n \\"ActualItems\\": 6,\\n \\"VaultId\\": \\"v-0006******q\\",\\n \\"ActualBytes\\": 600,\\n \\"CreateTime\\": 1607436917,\\n \\"BackupType\\": \\"COMPLETE\\",\\n \\"Prefix\\": \\"example/\\",\\n \\"SourceType\\": \\"ECS_FILE\\",\\n \\"Options\\": \\"{\\\\\\"UseVSS\\\\\\":false}\\",\\n \\"ClientId\\": \\"c-*********************\\",\\n \\"ItemsDone\\": 8,\\n \\"BytesTotal\\": 1000,\\n \\"Exclude\\": \\"[\\\\\\"/var\\\\\\", \\\\\\"/proc\\\\\\"]\\",\\n \\"JobName\\": \\"jobname\\",\\n \\"CompleteTime\\": 1554347313,\\n \\"CreatedTime\\": 1554347313,\\n \\"Bucket\\": \\"hbr-backup-oss\\",\\n \\"Progress\\": 10000,\\n \\"SpeedLimit\\": \\"0:24:5120\\",\\n \\"InstanceId\\": \\"i-*********************\\",\\n \\"PlanId\\": \\"plan-20********35\\",\\n \\"FileSystemId\\": \\"005494\\",\\n \\"StartTime\\": 1554347313,\\n \\"UpdatedTime\\": 1554347313,\\n \\"JobId\\": \\"job-000g********w7\\",\\n \\"ItemsTotal\\": 10,\\n \\"Include\\": \\"[\\\\\\"/home/alice/*.pdf\\\\\\", \\\\\\"/home/bob/*.txt\\\\\\"]\\",\\n \\"BytesDone\\": 800,\\n \\"Paths\\": {\\n \\"Path\\": [\\n \\"\\\\\\"/home\\\\\\"\\"\\n ]\\n },\\n \\"Detail\\": {\\n \\"DoCopy\\": true,\\n \\"DestinationNativeSnapshotId\\": \\"s-******************\\",\\n \\"DestinationNativeSnapshotProgress\\": 85,\\n \\"DestinationNativeSnapshotStatus\\": \\"COMPLETE\\",\\n \\"DestinationRetention\\": 30,\\n \\"DestinationSnapshotId\\": \\"s-******************\\",\\n \\"DestinationNativeSnapshotErrorMessage\\": \\"ECS.CreatingSnapshot\\",\\n \\"NativeSnapshotId\\": \\"s-******************\\",\\n \\"DiskNativeSnapshotIdList\\": {\\n \\"DiskNativeSnapshotId\\": [\\n \\"s-******************\\"\\n ]\\n },\\n \\"InstanceInfos\\": {\\n \\"i-xxxxxxxx\\": {\\n \\"hostName\\": \\"test\\",\\n \\"instanceName\\": \\"test\\",\\n \\"instanceType\\": \\"ecs.c7.xlarge\\",\\n \\"osType\\": \\"linux\\",\\n \\"diskIds\\": [\\n \\"d-xxxxxxxx01\\",\\n \\"d-xxxxxxxx02\\"\\n ],\\n \\"osNameEn\\": \\"Rocky Linux 8.8 64 bit\\",\\n \\"osName\\": \\"Rocky Linux 8.8 64位\\",\\n \\"platform\\": \\"Rocky Linux\\"\\n }\\n }\\n },\\n \\"InstanceName\\": \\"instancename\\",\\n \\"OtsDetail\\": {\\n \\"TableNames\\": {\\n \\"TableName\\": [\\n \\"[\\\\\\"table1\\\\\\", \\\\\\"table2\\\\\\", \\\\\\"table3\\\\\\"]\\"\\n ]\\n }\\n },\\n \\"Speed\\": 500,\\n \\"TableName\\": \\"table1\\",\\n \\"CrossAccountType\\": \\"SELF_ACCOUNT\\",\\n \\"CrossAccountUserId\\": 0,\\n \\"CrossAccountRoleName\\": \\"BackupRole\\",\\n \\"Report\\": {\\n \\"TotalFiles\\": \\"/temp/report/158975xxxxxx4625/job-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_total.csv\\",\\n \\"SuccessFiles\\": \\"/temp/report/158975xxxxxx4625/r-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_success.zip\\",\\n \\"FailedFiles\\": \\"/temp/report/158975xxxxxx4625/r-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_failed.zip\\",\\n \\"SkippedFiles\\": \\"/temp/report/158975xxxxxx4625/r-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_skipped.zip\\",\\n \\"ReportTaskStatus\\": \\"COMPLETE\\"\\n },\\n \\"Identifier\\": \\"c83**************************b76\\",\\n \\"DestSourceType\\": \\"OSS\\",\\n \\"DestDataSourceId\\": \\"ds-000cov4ufudxklj24zdk\\",\\n \\"DestDataSourceDetail\\": \\"{\\\\\\\\\\\\\\"prefix\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"/\\\\\\\\\\\\\\"}\\",\\n \\"ChangeListPath\\": \\"{\\\\\\"dataSourceId\\\\\\": \\\\\\"ds-123456789\\\\\\", \\\\\\"path\\\\\\": \\\\\\"/changelist\\\\\\"}\\",\\n \\"FilesTotal\\": 10,\\n \\"FilesDone\\": 9,\\n \\"ActualFiles\\": 8\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeBackupJobs2Response>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>8</TotalCount>\\n <BackupJobs>\\n <Status>COMPLETE</Status>\\n <ErrorMessage>PARTIAL_COMPLETE</ErrorMessage>\\n <ActualItems>6</ActualItems>\\n <VaultId>v-0006******q</VaultId>\\n <ActualBytes>600</ActualBytes>\\n <CreateTime>1607436917</CreateTime>\\n <BackupType>COMPLETE</BackupType>\\n <Prefix>example/</Prefix>\\n <SourceType>ECS_FILE</SourceType>\\n <Options>{\\"UseVSS\\":false}</Options>\\n <ClientId>c-*********************</ClientId>\\n <ItemsDone>8</ItemsDone>\\n <BytesTotal>1000</BytesTotal>\\n <Exclude>[\\"/var\\", \\"/proc\\"]</Exclude>\\n <JobName>jobname</JobName>\\n <CompleteTime>1554347313</CompleteTime>\\n <CreatedTime>1554347313</CreatedTime>\\n <Bucket>hbr-backup-oss</Bucket>\\n <Progress>10000</Progress>\\n <SpeedLimit>0:24:5120</SpeedLimit>\\n <InstanceId>i-*********************</InstanceId>\\n <PlanId>plan-20********35</PlanId>\\n <FileSystemId>005494</FileSystemId>\\n <StartTime>1554347313</StartTime>\\n <UpdatedTime>1554347313</UpdatedTime>\\n <JobId>job-000g********w7</JobId>\\n <ItemsTotal>10</ItemsTotal>\\n <Include>[\\"/home/alice/*.pdf\\", \\"/home/bob/*.txt\\"]</Include>\\n <BytesDone>800</BytesDone>\\n <Paths>\\"/home\\"</Paths>\\n <InstanceName>instancename</InstanceName>\\n <OtsDetail>\\n <TableNames>[\\"table1\\", \\"table2\\", \\"table3\\"]</TableNames>\\n </OtsDetail>\\n <Speed>500</Speed>\\n <TableName>table1</TableName>\\n <CrossAccountType>SELF_ACCOUNT</CrossAccountType>\\n <CrossAccountRoleName>BackupRole</CrossAccountRoleName>\\n </BackupJobs>\\n</DescribeBackupJobs2Response>","errorExample":""}]', - 'title' => 'DescribeBackupJobs2', - 'translator' => 'machine', - ], - 'CreateHanaBackupPlan' => [ - 'methods' => [ - 'post', - 'get', + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], ], - 'schemes' => [ - 'https', + 'title' => 'List Bound Policies', + 'summary' => 'You can query the data sources attached to a policy, or the policies attached to a data source.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribePolicyBindings'], + ], ], + 'ramActions' => [ + [ + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'hbr:DescribePolicyBindings', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PolicyBindings\\": [\\n {\\n \\"CreatedTime\\": 1661399570,\\n \\"UpdatedTime\\": 1653611573,\\n \\"PolicyBindingId\\": \\"pd-000************slc\\",\\n \\"PolicyBindingDescription\\": \\"po-000************eslc-i-uf6************y5g\\",\\n \\"PolicyId\\": \\"po-000************56y\\",\\n \\"DataSourceId\\": \\"i-8vb************5ly\\",\\n \\"Disabled\\": true,\\n \\"Source\\": \\"backup/\\",\\n \\"Include\\": \\"[\\\\\\\\\\\\\\"*.doc\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"*.xltm\\\\\\\\\\\\\\"]\\",\\n \\"Exclude\\": \\"[\\\\\\\\\\\\\\"*.doc\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"*.xltm\\\\\\\\\\\\\\"]\\",\\n \\"SpeedLimit\\": \\"0:24:10240\\",\\n \\"AdvancedOptions\\": {\\n \\"UdmDetail\\": {\\n \\"ExcludeDiskIdList\\": [\\n \\"d-bp1************apo\\\\n\\"\\n ],\\n \\"DiskIdList\\": [\\n \\"d-bp1************apo\\\\n\\"\\n ],\\n \\"SnapshotGroup\\": true,\\n \\"AppConsistent\\": false,\\n \\"RamRoleName\\": \\"AliyunECSInstanceForHbrRole\\",\\n \\"PreScriptPath\\": \\"/tmp/prescript.sh\\",\\n \\"PostScriptPath\\": \\"/tmp/postscript.sh\\",\\n \\"EnableFsFreeze\\": true,\\n \\"TimeoutInSeconds\\": 30,\\n \\"EnableWriters\\": true,\\n \\"DestinationKmsKeyId\\": \\"4ed37b1e-da51-4187-aceb-9db4f9b7148b\\"\\n },\\n \\"OssDetail\\": {\\n \\"InventoryId\\": \\"inventory_test\\",\\n \\"InventoryCleanupPolicy\\": \\"DELETE_CURRENT_AND_PREVIOUS\\",\\n \\"IgnoreArchiveObject\\": true\\n },\\n \\"FileDetail\\": {\\n \\"UseVSS\\": false,\\n \\"AdvPolicy\\": false\\n },\\n \\"CommonNasDetail\\": {\\n \\"FullOnIncrementFail\\": true,\\n \\"FetchSliceSize\\": 100000,\\n \\"ClientId\\": \\"c-0001eg6mcvjs93f46s2d\\",\\n \\"ClusterId\\": \\"cl-000gkcofngi04j6k680a\\"\\n },\\n \\"CommonFileSystemDetail\\": {\\n \\"FullOnIncrementFail\\": true,\\n \\"FetchSliceSize\\": 100000\\n }\\n },\\n \\"SourceType\\": \\"UDM_ECS\\",\\n \\"CrossAccountType\\": \\"CROSS_ACCOUNT\\",\\n \\"CrossAccountUserId\\": 0,\\n \\"CrossAccountRoleName\\": \\"hbrcrossrole\\",\\n \\"CreatedByTag\\": false,\\n \\"HitTags\\": [\\n {\\n \\"Key\\": \\"env\\",\\n \\"Value\\": \\"prod\\",\\n \\"Operator\\": \\"EQUAL\\"\\n }\\n ]\\n }\\n ],\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a\\",\\n \\"MaxResults\\": 10,\\n \\"TotalCount\\": 38,\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"5225929A-4EBD-55EE-9FE1-4A130E582A76\\"\\n}","type":"json"}]', + ], + 'DescribeRecoverableOtsInstances' => [ + 'methods' => ['get', 'post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'read', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', + 'operationType' => 'get', + 'abilityTreeCode' => '119714', + 'abilityTreeNodes' => ['FEATUREhbrAW9I1R'], + 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ - 'name' => 'VaultId', + 'name' => 'CrossAccountType', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'v-0002pcwhdn******wmi', - ], + 'schema' => ['description' => 'Specifies whether data is backed up within the same Alibaba Cloud account or across Alibaba Cloud accounts. Valid values:'."\n" + ."\n" + .'* SELF_ACCOUNT: Data is backed up within the same Alibaba Cloud account.'."\n" + .'* CROSS_ACCOUNT: Data is backed up across Alibaba Cloud accounts.'."\n", 'type' => 'string', 'required' => false, 'example' => 'CROSS_ACCOUNT'], ], [ - 'name' => 'ClusterId', + 'name' => 'CrossAccountUserId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the SAP HANA instance.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cl-00024vyjj9******v', - ], + 'schema' => ['description' => 'The ID of the source Alibaba Cloud account that authorizes the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1440155109798732'], ], [ - 'name' => 'PlanName', + 'name' => 'CrossAccountRoleName', 'in' => 'query', + 'schema' => ['description' => 'The name of the Resource Access Management (RAM) role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", 'type' => 'string', 'required' => false, 'example' => 'hbrcrossrole'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The name of the backup plan.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'plan-20220110-113108', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '14DC089E-5DD3-5028-AEDB-93D78E11DB2A'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'OtsInstances' => [ + 'description' => 'The list of Tablestore instances that can be restored and the tables in the instances.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The list of Tablestore instances that can be restored and the tables in the instances.'."\n", + 'type' => 'object', + 'properties' => [ + 'InstanceName' => ['description' => 'The name of the Tablestore instance that can be restored.'."\n", 'type' => 'string', 'example' => 'instancename'], + 'TableNames' => [ + 'description' => 'The names of the tables in the Tablestore instance.'."\n", + 'type' => 'array', + 'items' => ['description' => 'The names of the tables in the Tablestore instance.'."\n", 'type' => 'string', 'example' => '["table1", "table2", "table3"]'], + ], + ], + ], + ], + ], + 'description' => '', ], ], + ], + 'title' => 'DescribeRecoverableOtsInstances', + 'summary' => 'Queries the tables of a restorable Tablestore instance.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeRecoverableOtsInstances'], + ], + ], + 'ramActions' => [], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"14DC089E-5DD3-5028-AEDB-93D78E11DB2A\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"OtsInstances\\": [\\n {\\n \\"InstanceName\\": \\"instancename\\",\\n \\"TableNames\\": [\\n \\"[\\\\\\"table1\\\\\\", \\\\\\"table2\\\\\\", \\\\\\"table3\\\\\\"]\\"\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeRecoverableOtsInstancesResponse>\\n <RequestId>14DC089E-5DD3-5028-AEDB-93D78E11DB2A</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <OtsInstances>\\n <InstanceName>instancename</InstanceName>\\n <TableNames>[\\"table1\\", \\"table2\\", \\"table3\\"]</TableNames>\\n </OtsInstances>\\n</DescribeRecoverableOtsInstancesResponse>","errorExample":""}]', + ], + 'DescribeRegions' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'Schedule', - 'in' => 'query', + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '95538', + 'abilityTreeNodes' => ['FEATUREhbrKJCQWH', 'FEATUREhbr56LH1C', 'FEATUREhbr5DOJ9F', 'FEATUREhbrN8YWXB', 'FEATUREhbr88PDT6', 'FEATUREhbr461GQI', 'FEATUREhbrS7MI6C', 'FEATUREhbrFWIWBG', 'FEATUREhbrO5EHNR', 'FEATUREhbr7WEYAR', 'FEATUREhbrAW9I1R', 'FEATUREhbrFJ9107', 'FEATUREhbrB1KQ9G', 'FEATUREhbrQ3MV3B', 'FEATUREhbr3BJQCT', 'FEATUREhbrF83GXN', 'FEATUREhbrIA0YQI', 'FEATUREhbrI97IXK', 'FEATUREhbrTH4MM4', 'FEATUREhbrAL60OZ'], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The backup policy. Format: `I|{startTime}|{interval}`. The system runs the first backup job at a point in time that is specified in the {startTime} parameter and the subsequent backup jobs at an interval that is specified in the {interval} parameter. The system does not run a backup job before the specified point in time. Each backup job, except the first one, starts only after the previous backup job is completed. For example, `I|1631685600|P1D` specifies that the system runs the first backup job at 14:00:00 on September 15, 2021 and the subsequent backup jobs once a day.'."\n" - ."\n" - .'* startTime: the time at which the system starts to run a backup job. The time must follow the UNIX time format. Unit: seconds.'."\n" - .'* interval: the interval at which the system runs a backup job. The interval must follow the ISO 8601 standard. For example, PT1H specifies an interval of one hour. P1D specifies an interval of one day.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'I|1602673264|P1D', + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'B3395EC6-7A4A-5282-A9AB-7A442F2CFC90'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], + 'Regions' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Region' => [ + 'description' => 'The regions returned.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'LocalName' => ['description' => 'The region name.'."\n", 'type' => 'string', 'example' => 'China (Hangzhou)'], + 'RegionId' => ['description' => 'The region ID.'."\n", 'type' => 'string', 'example' => 'cn-hangzhou'], + ], + ], + ], + ], + ], + ], + 'description' => '', ], ], + ], + 'title' => 'DescribeRegions', + 'summary' => 'Queries available regions.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeRegions'], + ], + ], + 'ramActions' => [], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"B3395EC6-7A4A-5282-A9AB-7A442F2CFC90\\",\\n \\"Success\\": true,\\n \\"Regions\\": {\\n \\"Region\\": [\\n {\\n \\"LocalName\\": \\"China (Hangzhou)\\",\\n \\"RegionId\\": \\"cn-hangzhou\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeRegionsResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>B3395EC6-7A4A-5282-A9AB-7A442F2CFC90</RequestId>\\n <Success>true</Success>\\n <Regions>\\n <VaultCount>11</VaultCount>\\n <LocalName>China (Hangzhou)</LocalName>\\n <RegionId>cn-hangzhou</RegionId>\\n </Regions>\\n</DescribeRegionsResponse>","errorExample":""}]', + ], + 'DescribeRestoreJobs2' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'BackupType', + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '95541', + 'abilityTreeNodes' => ['FEATUREhbrB1KQ9G', 'FEATUREhbrS7MI6C', 'FEATUREhbr3BJQCT', 'FEATUREhbrQ3MV3B', 'FEATUREhbr56LH1C', 'FEATUREhbrFWIWBG', 'FEATUREhbrAW9I1R'], + ], + 'parameters' => [ + [ + 'name' => 'PageNumber', 'in' => 'query', - 'schema' => [ - 'description' => 'The backup type. Valid values:'."\n" - ."\n" - .'* COMPLETE: full backup'."\n" - .'* INCREMENTAL: incremental backup'."\n" - .'* DIFFERENTIAL: differential backup'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'enumValueTitles' => [], - 'example' => 'COMPLETE', - ], + 'schema' => ['description' => 'The page number. Pages start from 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''], ], [ - 'name' => 'DatabaseName', + 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the database.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'SYSTEMDB', - ], + 'schema' => ['description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], ], [ - 'name' => 'BackupPrefix', + 'name' => 'RestoreType', 'in' => 'query', - 'schema' => [ - 'description' => 'The backup prefix.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'DIFF_DATA_BACKUP', - ], + 'schema' => ['description' => 'The data source type. Valid values:'."\n" + ."\n" + .'- **ECS\\_FILE**: Restores ECS files.'."\n" + ."\n" + .'- **OSS**: Restores OSS objects.'."\n" + ."\n" + .'- **NAS**: Restores NAS files.'."\n" + ."\n" + .'- **COMMON\\_FILE\\_SYSTEM**: Restores data to a CPFS file system.'."\n" + ."\n" + .'- **OTS\\_TABLE**: Restores an OTS table.'."\n" + ."\n" + .'- **UDM\\_ECS\\_ROLLBACK**: Restores an entire ECS instance.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'ECS_FILE', 'title' => ''], ], [ - 'name' => 'ResourceGroupId', + 'name' => 'Filters', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The ID of the resource group.'."\n", - 'type' => 'string', + 'description' => 'The filter conditions.', + 'type' => 'array', + 'items' => [ + 'description' => 'A filter for querying restore jobs.', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => 'The filter key. Valid values:'."\n" + ."\n" + .'- **RegionId**: region ID'."\n" + ."\n" + .'- **PlanId**: backup plan ID'."\n" + ."\n" + .'- **JobId**: backup job ID'."\n" + ."\n" + .'- **VaultId**: vault ID'."\n" + ."\n" + .'- **InstanceId**: ECS instance ID'."\n" + ."\n" + .'- **Bucket**: OSS bucket name'."\n" + ."\n" + .'- **FileSystemId**: file system ID'."\n" + ."\n" + .'- **Status**: job status'."\n" + ."\n" + .'- **CompleteTime**: completion time', 'type' => 'string', 'required' => false, 'example' => 'VaultId', 'title' => ''], + 'Values' => [ + 'description' => 'An array of values for the specified filter key.', + 'type' => 'array', + 'items' => ['description' => 'A value to match.', 'type' => 'string', 'required' => false, 'example' => '["v-*********************"]', 'title' => ''], + 'required' => false, + 'maxItems' => 500, + 'title' => '', + 'example' => '', + ], + 'Operator' => ['description' => 'The matching method. The default value is IN. Valid values:'."\n" + ."\n" + .'- **EQUAL**: Equal to'."\n" + ."\n" + .'- **NOT\\_EQUAL**: Not equal to'."\n" + ."\n" + .'- **GREATER\\_THAN**: Greater than'."\n" + ."\n" + .'- **GREATER\\_THAN\\_OR\\_EQUAL**: Greater than or equal to'."\n" + ."\n" + .'- **LESS\\_THAN**: Less than'."\n" + ."\n" + .'- **LESS\\_THAN\\_OR\\_EQUAL**: Less than or equal to'."\n" + ."\n" + .'- **BETWEEN**: The value is within a specified range. The `Values` parameter must be a JSON array in the `[min, max]` format.'."\n" + ."\n" + .'- **IN**: The value is in a specified set. The `Values` parameter must be an array.'."\n" + ."\n" + .'> The IN operator is not supported when `Key` is **CompleteTime**.', 'type' => 'string', 'required' => false, 'example' => 'IN', 'title' => ''], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], 'required' => false, - 'example' => 'rg-acfmvnf22m7itha', + 'maxItems' => 5, + 'title' => '', + 'example' => '', ], ], + [ + 'name' => 'Edition', + 'in' => 'query', + 'schema' => ['description' => 'The edition. Valid values: `BASIC` and `STANDARD`. Default value: `STANDARD`.', 'type' => 'string', 'example' => 'STANDARD', 'title' => '', 'required' => false], + ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '33AA3AAE-89E1-5D3A-A51D-0C0A80850F68', - ], - 'PlanId' => [ - 'description' => 'The ID of the backup plan.'."\n", - 'type' => 'string', - 'example' => 'pl-000756jdlk2zmqig2nea', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request was successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The response message. If the request is successful, "successful" is returned. Otherwise, an error message is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'PageNumber' => ['description' => 'The page number of the returned page. Pages start from 1. Default: 1.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'PageSize' => ['description' => 'The number of entries per page. Valid values: 1 to 99. Default: 10.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'TotalCount' => ['description' => 'The total number of entries that match the query.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'RestoreJobs' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'RestoreJob' => [ + 'description' => 'A list of restore jobs.', + 'example' => '{\'RestoreJob\': []}', + 'type' => 'array', + 'items' => [ + 'description' => 'The details of a restore job.', + 'type' => 'object', + 'properties' => [ + 'SnapshotHash' => ['description' => 'The hash value of the backup snapshot.', 'type' => 'string', 'example' => 'f2fe...', 'title' => ''], + 'Status' => ['description' => 'The status of the restore job. Valid values:'."\n" + ."\n" + .'- **COMPLETE**: The job is complete.'."\n" + ."\n" + .'- **PARTIAL\\_COMPLETE**: The job is partially complete.'."\n" + ."\n" + .'- **FAILED**: The job failed.', 'type' => 'string', 'example' => 'COMPLETE', 'title' => ''], + 'ErrorMessage' => ['description' => 'The error message for the restore job.', 'type' => 'string', 'example' => 'PARTIAL_COMPLETE', 'title' => ''], + 'ActualItems' => ['description' => 'The actual number of files restored. This parameter is returned only if **SourceType** is set to **ECS\\_FILE**.', 'type' => 'integer', 'format' => 'int64', 'example' => '6', 'title' => ''], + 'VaultId' => ['description' => 'The ID of the backup vault.', 'type' => 'string', 'example' => 'v-0006******q', 'title' => ''], + 'ActualBytes' => ['description' => 'The actual amount of data restored after deduplication, in bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '600', 'title' => ''], + 'UdmDetail' => ['description' => 'The details of the entire machine backup.', 'type' => 'string', 'example' => '{\\"doCopy\\":true,\\"doBackup\\":false,\\"instanceName\\":\\"instance example\\",\\"appConsistent\\":false,\\"destinationRegionId\\":\\"cn-shanghai\\",\\"enableFsFreeze\\":true,\\"osNameEn\\":\\"Windows Server 2019 Data Center Edition 64bit Chinese Edition\\",\\"osName\\":\\"Windows Server 2019 Data Center Edition 64bit Chinese Edition\\",\\"diskIdList\\":[],\\"backupVaultId\\":\\"\\",\\"snapshotGroup\\":true,\\"destinationRetention\\":35,\\"platform\\":\\"Windows Server 2012\\",\\"timeoutInSeconds\\":60,\\"backupRetention\\":1,\\"osType\\":\\"windows\\",\\"preScriptPath\\":\\"\\",\\"postScriptPath\\":\\"\\",\\"enableWriters\\":true,\\"ecsDeleted\\":false}', 'title' => ''], + 'SourceType' => ['description' => 'The type of the data source. Valid values:'."\n" + ."\n" + .'- **ECS\\_FILE**: ECS files'."\n" + ."\n" + .'- **OSS**: OSS objects'."\n" + ."\n" + .'- **NAS**: NAS files'."\n" + ."\n" + .'- **OTS\\_TABLE**: Tablestore tables'."\n" + ."\n" + .'- **UDM\\_ECS**: ECS instance', 'type' => 'string', 'example' => 'ECS_FILE', 'title' => ''], + 'Options' => ['description' => 'The advanced restore options. This parameter is returned only if **SourceType** is set to **ECS\\_FILE**. It indicates whether Volume Shadow Copy Service (VSS) was used.'."\n" + ."\n" + .'- This feature is available only for Windows ECS instances.'."\n" + ."\n" + .'- The `["UseVSS":true]` option indicates that VSS was used to ensure data consistency, which is useful when the source data changes during the backup process.'."\n" + ."\n" + .'- If you use VSS, you cannot restore files from multiple directories at the same time.', 'type' => 'string', 'example' => '{"UseVSS":false}', 'title' => ''], + 'SourceInstanceId' => ['description' => 'The ID of the source instance.', 'type' => 'string', 'example' => 'i-2ze3m7ktcgw******cs', 'title' => ''], + 'RestoreType' => ['description' => 'The type of the restore job.', 'type' => 'string', 'example' => 'ECS_FILE', 'title' => ''], + 'TargetCreateTime' => ['description' => 'The time when the destination file system was created. This parameter is returned only for NAS backups.', 'type' => 'integer', 'format' => 'int64', 'example' => '1634714531', 'title' => ''], + 'ItemsDone' => ['description' => 'The number of files that have been restored. This parameter is returned only if **SourceType** is set to **ECS\\_FILE**.', 'type' => 'integer', 'format' => 'int64', 'example' => '8', 'title' => ''], + 'BytesTotal' => ['description' => 'The total size of the data source, in bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000', 'title' => ''], + 'Exclude' => ['description' => 'The paths to files that were excluded from the restore job. This parameter is returned only if **SourceType** is set to **ECS\\_FILE**. Each path can be up to 255 characters long.', 'type' => 'string', 'example' => '["/var", "/proc"]', 'title' => ''], + 'ParentId' => ['description' => 'The ID of the parent job.', 'type' => 'string', 'example' => 'r-0003hd2an3x4dyv0l18b', 'title' => ''], + 'CompleteTime' => ['description' => 'The time when the restore job completed. This is a UNIX timestamp in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1554347313', 'title' => ''], + 'CreatedTime' => ['description' => 'The time when the restore job was created. This is a UNIX timestamp in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1554347313', 'title' => ''], + 'TargetBucket' => ['description' => 'The destination bucket. This parameter is returned only for OSS backups.', 'type' => 'string', 'example' => 'target-bucket', 'title' => ''], + 'ClusterId' => ['description' => 'The ID of the client group used for the restore job.', 'type' => 'string', 'example' => 'cl-000******hp6', 'title' => ''], + 'TargetFileSystemId' => ['description' => 'The ID of the destination file system. This parameter is returned only for NAS backups.', 'type' => 'string', 'example' => '0be9****9c9', 'title' => ''], + 'Progress' => ['description' => 'The progress of the restore job, where a value of 10000 indicates 100% completion.', 'type' => 'integer', 'format' => 'int32', 'example' => '10000', 'title' => ''], + 'ExpireTime' => ['description' => 'The time when the restore job expires.', 'type' => 'integer', 'format' => 'int64', 'example' => '1634714531', 'title' => ''], + 'TargetDataSourceId' => ['description' => 'The ID of the destination data source.', 'type' => 'string', 'example' => 'ds-000*****997', 'title' => ''], + 'TargetPrefix' => ['description' => 'The destination prefix. This parameter is returned only for OSS backups.', 'type' => 'string', 'example' => '"/target"', 'title' => ''], + 'TargetPath' => ['description' => 'The destination path of the restore job.', 'type' => 'string', 'example' => '"D:\\\\rebk"', 'title' => ''], + 'ErrorFile' => ['description' => 'The list of files that failed to be restored.', 'type' => 'string', 'example' => '"test.csv"', 'title' => ''], + 'StartTime' => ['description' => 'The time when the restore job started. This is a UNIX timestamp in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1554347313', 'title' => ''], + 'UpdatedTime' => ['description' => 'The time when the restore job was last updated. This is a UNIX timestamp in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1554347313', 'title' => ''], + 'SnapshotId' => ['description' => 'The ID of the snapshot used for the restore.', 'type' => 'string', 'example' => 's-0002******ga88', 'title' => ''], + 'RestoreId' => ['description' => 'The ID of the restore job.', 'type' => 'string', 'example' => 'r-0003*****8a', 'title' => ''], + 'TargetClientId' => ['description' => 'The ID of the destination client.', 'type' => 'string', 'example' => 'c-000e*****397', 'title' => ''], + 'ItemsTotal' => ['description' => 'The total number of files in the data source. This parameter is returned only if **SourceType** is set to **ECS\\_FILE**.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''], + 'Include' => ['description' => 'The paths to the files that are included in the restore job.', 'type' => 'string', 'example' => '["/home/alice/*.pdf", "/home/bob/*.txt"]', 'title' => ''], + 'BytesDone' => ['description' => 'The amount of data restored, in bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '800', 'title' => ''], + 'TargetInstanceName' => ['description' => 'The name of the destination Tablestore instance.', 'type' => 'string', 'example' => 'instancename', 'title' => ''], + 'TargetTableName' => ['description' => 'The data table in the destination Tablestore instance.', 'type' => 'string', 'example' => 'tablename', 'title' => ''], + 'Speed' => ['description' => 'The average restore speed, in KB/s.', 'type' => 'integer', 'format' => 'int64', 'example' => '500', 'title' => ''], + 'TargetTime' => ['description' => 'The point in time to which the Tablestore instance is restored. This is a UNIX timestamp in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1642560261', 'title' => ''], + 'OtsDetail' => [ + 'description' => 'The details of the Tablestore restore.', + 'type' => 'object', + 'properties' => [ + 'BatchChannelCount' => ['description' => 'The number of channels processed by each Tablestore restore job.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], + 'OverwriteExisting' => ['description' => 'Indicates whether existing data in the destination table was overwritten.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'CrossAccountType' => [ + 'description' => 'The type of the cross-account backup. Valid values:'."\n" + ."\n" + .'- SELF\\_ACCOUNT: a backup within the same account'."\n" + ."\n" + .'- CROSS\\_ACCOUNT: a cross-account backup', + 'enumValueTitles' => [], + 'type' => 'string', + 'example' => 'SELF_ACCOUNT', + 'title' => '', + ], + 'CrossAccountUserId' => ['description' => 'The ID of the Alibaba Cloud account that owns the backup data. This parameter is returned for cross-account restores.', 'type' => 'integer', 'format' => 'int64', 'example' => '158975xxxxxx4625', 'title' => ''], + 'CrossAccountRoleName' => ['description' => 'The name of the RAM role that was assumed in the source account to perform the cross-account restore.', 'type' => 'string', 'example' => 'BackupRole', 'title' => ''], + 'Report' => [ + 'description' => 'The report of the restore job.', + 'type' => 'object', + 'properties' => [ + 'TotalFiles' => ['description' => 'The path to the list of all files for a file-based restore.', 'type' => 'string', 'example' => '/temp/report/158975xxxxxx4625/job-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_total.csv', 'title' => ''], + 'SuccessFiles' => ['description' => 'The path to the list of successfully restored files.', 'type' => 'string', 'example' => '/temp/report/158975xxxxxx4625/r-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_success.zip'."\n", 'title' => ''], + 'FailedFiles' => ['description' => 'The path to the list of files that failed to be restored.', 'type' => 'string', 'example' => '/temp/report/158975xxxxxx4625/r-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_failed.zip', 'title' => ''], + 'SkippedFiles' => ['description' => 'The path to the list of skipped files.', 'type' => 'string', 'example' => '/temp/report/158975xxxxxx4625/r-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_skipped.zip', 'title' => ''], + 'ReportTaskStatus' => ['description' => 'The status of the report generation task.', 'type' => 'string', 'example' => 'COMPLETE', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'MeteringBytesDone' => ['description' => 'The billable amount of restored data, in bytes. This parameter is returned only when StorageClass is set to ARCHIVE. The value is rounded up to the nearest 1 MB.', 'type' => 'integer', 'format' => 'int64', 'example' => '1048576', 'title' => ''], + 'MeteringBytesTotal' => ['description' => 'The total billable amount of data in the data source, in bytes. This parameter is returned only when StorageClass is set to ARCHIVE. The value is rounded up to the nearest 1 MB.', 'type' => 'integer', 'format' => 'int64', 'example' => '1048576', 'title' => ''], + 'StorageClass' => ['description' => 'The storage class of the backup data. Valid values:'."\n" + ."\n" + .'- **STANDARD**: Standard storage.'."\n" + ."\n" + .'- **ARCHIVE**: Archive storage.', 'type' => 'string', 'example' => 'STANDARD', 'title' => ''], + 'FailbackDetail' => ['description' => 'The details of the VMware failback job.', 'type' => 'string', 'example' => '{"cpu":4,"extra":"{\\"restoreVMNamePrefix\\":\\"627-\\",\\"dataCenterName\\":\\"SDDC-Datacenter\\",\\"dataStoreId\\":\\"datastore-50\\",\\"folderId\\":\\"group-v49\\",\\"resourcePoolId\\":\\"resgroup-46\\",\\"locationName\\":\\"vcenter.pc-uf600arcwi9td3eyj641.acvs.aliyuncs.com/SDDC-Datacenter/Workloads\\",\\"computeResourceName\\":\\"SDDC-Datacenter/Default_c-uf600arcwi9td3eyj640\\",\\"dataStoreName\\":\\"Default_c-uf600arcwi9td3eyj640/WorkloadDatastore\\",\\"networkMoReference\\":\\"DistributedVirtualPortgroup:dvportgroup-1001\\",\\"useHotAdd\\":false}","instanceId":"i-2vc357i2eannmmotcagz","memoryInMB":8192,"serverId":"0fdc0c86-eb92-4e05-91ab-eeaf9fb6ad01","uefiBoot":false}', 'title' => ''], + 'TargetInstanceId' => ['description' => 'The ID of the destination instance.', 'type' => 'string', 'example' => 'i-2ze3m7ktcgw******cs', 'title' => ''], + 'SourceResourceId' => ['description' => 'The ID of the source resource.', 'type' => 'string', 'example' => 'i-123***7890', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + ], + ], + 'description' => 'A container for the restore job details.', + 'title' => '', + 'example' => '', ], ], 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"33AA3AAE-89E1-5D3A-A51D-0C0A80850F68\\",\\n \\"PlanId\\": \\"pl-000756jdlk2zmqig2nea\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<CreateHanaBackupPlanResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>33AA3AAE-89E1-5D3A-A51D-0C0A80850F68</RequestId>\\n <PlanId>pl-000756jdlk2zmqig2nea</PlanId>\\n <Success>true</Success>\\n</CreateHanaBackupPlanResponse>","errorExample":""}]', - 'title' => 'CreateHanaBackupPlan', - 'summary' => 'Creates a backup plan for an SAP HANA instance.', - 'description' => '* A backup plan defines the data source, backup policy, and other configurations. After you execute a backup plan, a backup job is generated to record the backup progress and the backup result. If a backup job is completed, a backup snapshot is generated. You can use a backup snapshot to create a restore job.'."\n" - .'* You can specify only one type of data source in a backup plan.'."\n" - .'* You can specify only one interval as a backup cycle in a backup plan.'."\n" - .'* Each backup plan allows you to back up data to only one backup vault.'."\n", - ], - 'CreateHanaInstance' => [ - 'summary' => 'Registers an SAP HANA instance.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => 'DescribeRestoreJobs2', + 'summary' => 'Queries restore jobs that match specified criteria.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeRestoreJobs2'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeRestoreJobs2', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 1,\\n \\"TotalCount\\": 1,\\n \\"RestoreJobs\\": {\\n \\"RestoreJob\\": [\\n {\\n \\"SnapshotHash\\": \\"f2fe...\\",\\n \\"Status\\": \\"COMPLETE\\",\\n \\"ErrorMessage\\": \\"PARTIAL_COMPLETE\\",\\n \\"ActualItems\\": 6,\\n \\"VaultId\\": \\"v-0006******q\\",\\n \\"ActualBytes\\": 600,\\n \\"UdmDetail\\": \\"{\\\\\\\\\\\\\\"doCopy\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"doBackup\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"instanceName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"instance example\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"appConsistent\\\\\\\\\\\\\\":false,\\\\\\\\\\\\\\"destinationRegionId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"cn-shanghai\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"enableFsFreeze\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"osNameEn\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Windows Server 2019 Data Center Edition 64bit Chinese Edition\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"osName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Windows Server 2019 Data Center Edition 64bit Chinese Edition\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"diskIdList\\\\\\\\\\\\\\":[],\\\\\\\\\\\\\\"backupVaultId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"snapshotGroup\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"destinationRetention\\\\\\\\\\\\\\":35,\\\\\\\\\\\\\\"platform\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Windows Server 2012\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"timeoutInSeconds\\\\\\\\\\\\\\":60,\\\\\\\\\\\\\\"backupRetention\\\\\\\\\\\\\\":1,\\\\\\\\\\\\\\"osType\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"windows\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"preScriptPath\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"postScriptPath\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"enableWriters\\\\\\\\\\\\\\":true,\\\\\\\\\\\\\\"ecsDeleted\\\\\\\\\\\\\\":false}\\",\\n \\"SourceType\\": \\"ECS_FILE\\",\\n \\"Options\\": \\"{\\\\\\"UseVSS\\\\\\":false}\\",\\n \\"SourceInstanceId\\": \\"i-2ze3m7ktcgw******cs\\",\\n \\"RestoreType\\": \\"ECS_FILE\\",\\n \\"TargetCreateTime\\": 1634714531,\\n \\"ItemsDone\\": 8,\\n \\"BytesTotal\\": 1000,\\n \\"Exclude\\": \\"[\\\\\\"/var\\\\\\", \\\\\\"/proc\\\\\\"]\\",\\n \\"ParentId\\": \\"r-0003hd2an3x4dyv0l18b\\",\\n \\"CompleteTime\\": 1554347313,\\n \\"CreatedTime\\": 1554347313,\\n \\"TargetBucket\\": \\"target-bucket\\",\\n \\"ClusterId\\": \\"cl-000******hp6\\",\\n \\"TargetFileSystemId\\": \\"0be9****9c9\\",\\n \\"Progress\\": 10000,\\n \\"ExpireTime\\": 1634714531,\\n \\"TargetDataSourceId\\": \\"ds-000*****997\\",\\n \\"TargetPrefix\\": \\"\\\\\\"/target\\\\\\"\\",\\n \\"TargetPath\\": \\"\\\\\\"D:\\\\\\\\\\\\\\\\rebk\\\\\\"\\",\\n \\"ErrorFile\\": \\"\\\\\\"test.csv\\\\\\"\\",\\n \\"StartTime\\": 1554347313,\\n \\"UpdatedTime\\": 1554347313,\\n \\"SnapshotId\\": \\"s-0002******ga88\\",\\n \\"RestoreId\\": \\"r-0003*****8a\\",\\n \\"TargetClientId\\": \\"c-000e*****397\\",\\n \\"ItemsTotal\\": 10,\\n \\"Include\\": \\"[\\\\\\"/home/alice/*.pdf\\\\\\", \\\\\\"/home/bob/*.txt\\\\\\"]\\",\\n \\"BytesDone\\": 800,\\n \\"TargetInstanceName\\": \\"instancename\\",\\n \\"TargetTableName\\": \\"tablename\\",\\n \\"Speed\\": 500,\\n \\"TargetTime\\": 1642560261,\\n \\"OtsDetail\\": {\\n \\"BatchChannelCount\\": 2,\\n \\"OverwriteExisting\\": false\\n },\\n \\"CrossAccountType\\": \\"SELF_ACCOUNT\\",\\n \\"CrossAccountUserId\\": 0,\\n \\"CrossAccountRoleName\\": \\"BackupRole\\",\\n \\"Report\\": {\\n \\"TotalFiles\\": \\"/temp/report/158975xxxxxx4625/job-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_total.csv\\",\\n \\"SuccessFiles\\": \\"/temp/report/158975xxxxxx4625/r-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_success.zip\\\\n\\",\\n \\"FailedFiles\\": \\"/temp/report/158975xxxxxx4625/r-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_failed.zip\\",\\n \\"SkippedFiles\\": \\"/temp/report/158975xxxxxx4625/r-0001hfxxxxxymsspjjtl/job-0001hfxxxxxymsspjjtl_skipped.zip\\",\\n \\"ReportTaskStatus\\": \\"COMPLETE\\"\\n },\\n \\"MeteringBytesDone\\": 1048576,\\n \\"MeteringBytesTotal\\": 1048576,\\n \\"StorageClass\\": \\"STANDARD\\",\\n \\"FailbackDetail\\": \\"{\\\\\\"cpu\\\\\\":4,\\\\\\"extra\\\\\\":\\\\\\"{\\\\\\\\\\\\\\"restoreVMNamePrefix\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"627-\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"dataCenterName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"SDDC-Datacenter\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"dataStoreId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"datastore-50\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"folderId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"group-v49\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"resourcePoolId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"resgroup-46\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"locationName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"vcenter.pc-uf600arcwi9td3eyj641.acvs.aliyuncs.com/SDDC-Datacenter/Workloads\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"computeResourceName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"SDDC-Datacenter/Default_c-uf600arcwi9td3eyj640\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"dataStoreName\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Default_c-uf600arcwi9td3eyj640/WorkloadDatastore\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"networkMoReference\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"DistributedVirtualPortgroup:dvportgroup-1001\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"useHotAdd\\\\\\\\\\\\\\":false}\\\\\\",\\\\\\"instanceId\\\\\\":\\\\\\"i-2vc357i2eannmmotcagz\\\\\\",\\\\\\"memoryInMB\\\\\\":8192,\\\\\\"serverId\\\\\\":\\\\\\"0fdc0c86-eb92-4e05-91ab-eeaf9fb6ad01\\\\\\",\\\\\\"uefiBoot\\\\\\":false}\\",\\n \\"TargetInstanceId\\": \\"i-2ze3m7ktcgw******cs\\",\\n \\"SourceResourceId\\": \\"i-123***7890\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'DescribeTask' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'systemTags' => [ - 'operationType' => 'create', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '95438', - 'abilityTreeNodes' => [ - 'FEATUREhbrI97IXK', - ], + 'operationType' => 'get', + 'abilityTreeCode' => '95552', + 'abilityTreeNodes' => ['FEATUREhbr3BJQCT'], ], 'parameters' => [ [ - 'name' => 'VaultId', + 'name' => 'Token', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'v-0003v4a******gfv2', - 'docRequired' => true, - ], + 'schema' => ['description' => 'The access token.'."\n", 'type' => 'string', 'required' => false, 'example' => '01W3ZZOQ'], ], [ - 'name' => 'HanaName', + 'name' => 'TaskId', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the SAP HANA instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'HANA-DEV', - 'docRequired' => true, - ], + 'schema' => ['description' => 'The ID of the job.'."\n", 'type' => 'string', 'required' => false, 'example' => 't-*********************', 'docRequired' => true], ], [ - 'name' => 'Host', + 'name' => 'ResourceGroupId', 'in' => 'query', + 'schema' => ['description' => 'The ID of the resource group.'."\n", 'type' => 'string', 'required' => false, 'example' => 'rg-acfmvywqfey5njq'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The private or internal IP address of the host where the primary node of the SAP HANA instance resides.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '47.100.XX.XX', - 'docRequired' => true, + 'type' => 'object', + 'properties' => [ + 'Progress' => ['description' => 'The progress of the job. Valid values: 0 to 100. Unit: percentage (%). If the job fails, the value -1 is returned.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '100'], + 'RequestId' => ['description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], + 'CompletedTime' => ['description' => 'The time when the task was complete. The time is a UNIX timestamp. Unit: seconds.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1615607706'], + 'Result' => ['description' => 'The result of the job.'."\n", 'type' => 'string', 'example' => '{}'], + 'Description' => ['description' => 'The status of the job. Valid values:'."\n" + ."\n" + .'* **created**: The job is created.'."\n" + .'* **expired**: The job expires.'."\n" + .'* **completed**: The job is completed.'."\n" + .'* **cancelled**: The job is canceled.'."\n", 'type' => 'string', 'example' => 'completed'], + 'UpdatedTime' => ['description' => 'The time when the job was updated. This value is a UNIX timestamp. Unit: seconds.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1615607706'], + 'Success' => ['description' => 'Indicates whether the call is successful.'."\n" + ."\n" + .'* true: The call is successful.'."\n" + .'* false: The call fails.'."\n", 'type' => 'boolean', 'example' => 'true'], + 'Code' => ['description' => 'HttpCode'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'Name' => ['description' => 'The name of the job.'."\n", 'type' => 'string', 'example' => 'InstallBackupClientsTask'], + 'CreatedTime' => ['description' => 'The time when the job was created. This value is a UNIX timestamp. Unit: seconds.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1615607706'], + ], + 'description' => '', ], ], + ], + 'title' => 'DescribeTask', + 'summary' => 'Queries an asynchronous job. ', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeTask'], + ], + ], + 'ramActions' => [], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Progress\\": 100,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"CompletedTime\\": 1615607706,\\n \\"Result\\": \\"{}\\",\\n \\"Description\\": \\"completed\\",\\n \\"UpdatedTime\\": 1615607706,\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"Name\\": \\"InstallBackupClientsTask\\",\\n \\"CreatedTime\\": 1615607706\\n}","errorExample":""},{"type":"xml","example":"<DescribeTaskResponse>\\n <Progress>100</Progress>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <CompletedTime>1615607706</CompletedTime>\\n <Result>{}</Result>\\n <Description>completed</Description>\\n <UpdatedTime>1615607706</UpdatedTime>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <Name>InstallBackupClientsTask</Name>\\n <CreatedTime>1615607706</CreatedTime>\\n</DescribeTaskResponse>","errorExample":""}]', + ], + 'DescribeUdmSnapshots' => [ + 'summary' => 'Queries the snapshots of full backups.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'InstanceNumber', - 'in' => 'query', - 'schema' => [ - 'description' => 'The instance number of the SAP HANA system.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '00', - 'docRequired' => true, - ], + 'AK' => [], ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '95555', + 'abilityTreeNodes' => ['FEATUREhbrB1KQ9G'], + ], + 'parameters' => [ [ - 'name' => 'UserName', + 'name' => 'SourceType', 'in' => 'query', - 'schema' => [ - 'description' => 'The username of the SYSTEMDB database.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'admin', - 'docRequired' => true, - ], + 'schema' => ['description' => 'The type of the data source. Valid values:'."\n" + ."\n" + .'- **UDM\\_ECS**: ECS instance backup'."\n" + ."\n" + .'- **UDM\\_ECS\\_DISK**: a disk backup subtask of an ECS instance backup'."\n" + ."\n" + .'- **UDM\\_DISK**: disk backup', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'UDM_ECS', 'title' => ''], ], [ - 'name' => 'Password', + 'name' => 'StartTime', 'in' => 'query', - 'schema' => [ - 'description' => 'The password that is used to connect with the SAP HANA database.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '************', - 'docRequired' => true, - ], + 'schema' => ['description' => 'The beginning of the time range to query. This value is a UNIX timestamp in seconds.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'docRequired' => true, 'example' => '1642057551', 'title' => ''], ], [ - 'name' => 'UseSsl', + 'name' => 'EndTime', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to connect with the SAP HANA database over Secure Sockets Layer (SSL).'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => 'The end of the time range to query. This value is a UNIX timestamp in seconds.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'docRequired' => true, 'example' => '1643092168', 'title' => ''], ], [ - 'name' => 'ValidateCertificate', + 'name' => 'UdmRegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to verify the SSL certificate of the SAP HANA database.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => 'The region ID of the ECS instance.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'AlertSetting', + 'name' => 'InstanceId', 'in' => 'query', - 'schema' => [ - 'description' => 'The alert settings. Valid value: INHERITED, which indicates that the Cloud Backup client sends alert notifications by using the same method configured for the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'INHERITED', - ], + 'schema' => ['description' => 'The ID of the ECS instance.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'i-bp18x2k7sw925ir7ofh8', 'title' => ''], ], [ - 'name' => 'EcsInstanceId', + 'name' => 'DiskId', 'in' => 'query', - 'schema' => [ - 'description' => 'The IDs of the ECS instances that host the SAP HANA instance to be registered. Cloud Backup installs backup clients on the specified ECS instances.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '[\\"i-uf6ir9y******hvisj\\"]', - ], + 'schema' => ['description' => 'The ID of the disk.', 'type' => 'string', 'required' => false, 'example' => 'd-bp1560750pclffpzxy70', 'title' => ''], ], [ - 'name' => 'Sid', + 'name' => 'JobId', 'in' => 'query', - 'schema' => [ - 'description' => 'The security identifier (SID) of the SAP HANA database. For more information, see [How to find sid user and instance number of HANA db?](https://answers.sap.com/questions/555192/how-to-find-sid-user-and-instance-number-of-hana-d.html?spm=a2c4g.11186623.0.0.55c34b4ftZeXNK).'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'HXE', - ], + 'schema' => ['description' => 'The ID of the backup job.', 'type' => 'string', 'required' => false, 'example' => 'job-*********************', 'title' => ''], ], [ - 'name' => 'ResourceGroupId', - 'in' => 'query', + 'name' => 'SnapshotIds', + 'in' => 'formData', + 'style' => 'json', + 'schema' => ['description' => 'The list of snapshot IDs.', 'type' => 'object', 'required' => false, 'example' => '[\\"s-000e3vhhu62xsm6v92r0\\"]', 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The ID of the resource group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rg-acfm4ebtpkzx7zy', + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => 'The HTTP status code. A value of 200 indicates that the request was successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The message that is returned. If the request was successful, **successful** is returned. If the request failed, an error message is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '51CDEECB-7001-51CC-94AC-2A0F2A4B71D2', 'title' => ''], + 'TotalCount' => ['description' => 'The total number of snapshots.', 'type' => 'integer', 'format' => 'int64', 'example' => '3', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Snapshots' => [ + 'description' => 'The details of the snapshots.', + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the snapshots.', + 'type' => 'object', + 'properties' => [ + 'Status' => ['description' => 'The status of the backup snapshot. Valid values:'."\n" + ."\n" + .'- **COMPLETE**: The backup is successful.'."\n" + ."\n" + .'- **PARTIAL\\_COMPLETE**: The backup is partially successful.'."\n" + ."\n" + .'- **FAILED**: The backup failed.', 'type' => 'string', 'example' => 'COMPLETE', 'title' => ''], + 'SnapshotHash' => ['description' => 'The hash value of the snapshot.', 'type' => 'string', 'example' => 'f2fe...', 'title' => ''], + 'BackupType' => ['description' => 'The backup type. The value **COMPLETE** indicates a full backup.', 'type' => 'string', 'example' => 'COMPLETE', 'title' => ''], + 'CreateTime' => ['description' => 'The time when the backup snapshot was created.', 'type' => 'integer', 'format' => 'int64', 'example' => '1607436917', 'title' => ''], + 'ActualBytes' => ['description' => 'The actual size of the snapshot. Unit: bytes.', 'type' => 'string', 'example' => '600', 'title' => ''], + 'SourceType' => ['description' => 'The type of the data source. Valid values:'."\n" + ."\n" + .'- **UDM\\_ECS**: ECS instance backup'."\n" + ."\n" + .'- **UDM\\_ECS\\_DISK**: a disk backup subtask of an ECS instance backup'."\n" + ."\n" + .'- **UDM\\_DISK**: disk backup', 'type' => 'string', 'example' => 'UDM_ECS', 'title' => ''], + 'Prefix' => ['description' => 'The prefix of the snapshot.', 'type' => 'string', 'example' => 'example/', 'title' => ''], + 'DiskId' => ['description' => 'The ID of the disk. The disk can be a cloud disk or a local disk.', 'type' => 'string', 'example' => 'd-2ze86h5fga5rfwxxa8ef', 'title' => ''], + 'BytesTotal' => ['description' => 'The total size of the data source. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000', 'title' => ''], + 'NativeSnapshotInfo' => ['description' => 'The information about the native snapshot.', 'type' => 'string', 'example' => '{'."\n" + .' "sourceDiskId":"d-bp17misjuy636t82v7b0",'."\n" + .' "lastModifiedTime":"2022-03-09T11:35:12Z",'."\n" + .' "snapshotSN":"64588-429372675-857161235",'."\n" + .' "snapshotId":"s-bp1fbtwv3e6xr6wpe9e0",'."\n" + .' "creationTime":"2022-03-09T11:31:12Z",'."\n" + .' "snapshotType":"user",'."\n" + .' "usage":"none",'."\n" + .' "description":"",'."\n" + .' "sourceStorageType":"disk",'."\n" + .' "tags":['."\n" + .' {'."\n" + .' "tagValue":"job-0007e0wqjl0imbrtkmnm",'."\n" + .' "tagKey":"HBR JobId"'."\n" + .' }'."\n" + .' ],'."\n" + .' "productCode":"",'."\n" + .' "encrypted":false,'."\n" + .' "sourceDiskType":"system",'."\n" + .' "retentionDays":30,'."\n" + .' "snapshotName":"Created-from-HBR-job:job-0007e0wqjl0imbrtkmnm",'."\n" + .' "kMSKeyId":"",'."\n" + .' "progress":"100%",'."\n" + .' "category":"standard",'."\n" + .' "sourceDiskSize":"20",'."\n" + .' "status":"accomplished"'."\n" + .' }', 'title' => ''], + 'CompleteTime' => ['description' => 'The time when the backup snapshot was completed. This value is a UNIX timestamp in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1646895666', 'title' => ''], + 'Retention' => ['description' => 'The retention period of the snapshot in days.', 'type' => 'integer', 'format' => 'int64', 'example' => '7', 'title' => ''], + 'CreatedTime' => ['description' => 'The time when the backup snapshot was created. This value is a UNIX timestamp in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1642496679', 'title' => ''], + 'RealSnapshotTime' => ['description' => 'The timestamp of the snapshot. This value is a UNIX timestamp in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1642496679', 'title' => ''], + 'ParentSnapshotHash' => ['description' => 'The hash value of the parent snapshot.', 'type' => 'string', 'example' => 'f2fe..', 'title' => ''], + 'InstanceId' => ['description' => 'The ID of the ECS instance.', 'type' => 'string', 'example' => 'i-bp1f0pe78dxizrsdcgxd', 'title' => ''], + 'StartTime' => ['description' => 'The time when the snapshot was started. This value is a UNIX timestamp in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1554347313', 'title' => ''], + 'UpdatedTime' => ['description' => 'The time when the backup snapshot was updated. This value is a UNIX timestamp in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1642496679', 'title' => ''], + 'SnapshotId' => ['description' => 'The ID of the backup snapshot.', 'type' => 'string', 'example' => 's-00047mxg17p26*****b', 'title' => ''], + 'JobId' => ['description' => 'The ID of the backup job.', 'type' => 'string', 'example' => 'job-00030j3chkt******2', 'title' => ''], + 'NativeSnapshotId' => ['description' => 'The ID of the native snapshot.', 'type' => 'string', 'example' => 's-00047mg17p26x*****b', 'title' => ''], + 'Detail' => [ + 'description' => 'The details of the snapshot.', + 'type' => 'object', + 'properties' => [ + 'DiskDevName' => ['description' => 'The name of the disk device.', 'type' => 'string', 'example' => '/dev/xvdb', 'title' => ''], + 'DowngradeReason' => ['description' => 'The reason for the downgrade.', 'type' => 'string', 'example' => 'HBR.NoRamRoleBound', 'title' => ''], + 'OsDiskId' => ['description' => 'The ID of the system disk.', 'type' => 'string', 'example' => 'd-bp1e6427vhd320hifvc', 'title' => ''], + 'OsName' => ['description' => 'The name of the operating system.', 'type' => 'string', 'example' => 'Debian 10.10 64-bit (UEFI)', 'title' => ''], + 'ContainOsDisk' => ['description' => 'Indicates whether the system disk is included.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'ConsistentLevel' => ['description' => 'The consistency level.', 'type' => 'string', 'example' => 'CRASH', 'title' => ''], + 'VmName' => ['description' => 'The name of the instance.', 'type' => 'string', 'example' => 'BNSHSVR42 IPGUARD', 'title' => ''], + 'DiskHbrSnapshotIdWithDeviceMap' => ['description' => 'The mapping between devices and backup point IDs.', 'type' => 'object', 'example' => '{'."\n" + .' "/dev/xvdb":"s-0000u7y6wm3v1e7hxh5a", '."\n" + .' "/dev/xvda":"s-0004bl6yr5pt89jjsv5a"'."\n" + .'}', 'title' => ''], + 'InstanceIdWithDiskIdListMap' => ['description' => 'The mapping between instance IDs and disk IDs.', 'type' => 'object', 'example' => '{'."\n" + .' "i-bp1dlp0keohh7ids4uo6":"d-bp1e6427vhd320hifvs", '."\n" + .' "i-bp1dlp0keohh7ids4uo6":"d-bp1e6427vhd320hifvd"'."\n" + .'}', 'title' => ''], + 'InstanceName' => ['description' => 'The name of the instance.', 'type' => 'string', 'example' => 'swh-hbr', 'title' => ''], + 'OsType' => ['description' => 'The type of the operating system. Valid values: linux, windows.', 'type' => 'string', 'example' => 'windows', 'title' => ''], + 'Platform' => ['description' => 'The operating system.', 'type' => 'string', 'example' => 'CentOS', 'title' => ''], + 'OsNameEn' => ['description' => 'The English name of the operating system.', 'type' => 'string', 'example' => 'Debian 11.1 64 bit', 'title' => ''], + 'HostName' => ['description' => 'The hostname.', 'type' => 'string', 'example' => 'iZbpxxxxxxxxxxxxxxxxe2Z', 'title' => ''], + 'SystemDisk' => ['description' => 'Indicates whether the disk is a system disk.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'DiskIdList' => [ + 'description' => 'The list of disk IDs that are included in the backup point.', + 'type' => 'array', + 'items' => ['description' => 'The ID of a disk that is included in the backup point.', 'type' => 'string', 'example' => 'd-bp1e6427vhd320hifvs', 'title' => ''], + 'title' => '', + 'example' => '', + ], + 'NativeSnapshotIdList' => [ + 'description' => 'The list of native snapshot IDs. The native snapshot IDs in this list have a one-to-one correspondence with the disk IDs in the DiskIdList.', + 'type' => 'array', + 'items' => ['description' => 'The ID of the native snapshot.', 'type' => 'string', 'example' => 's-0004bl6yr5pt89jjsv5a', 'title' => ''], + 'title' => '', + 'example' => '', + ], + 'SnapshotGroupId' => ['description' => 'The ID of the snapshot group.', 'type' => 'string', 'example' => 'ssg-uf6856txcaq31uj***', 'title' => ''], + 'InstanceType' => ['description' => 'The instance type of the source instance.', 'type' => 'string', 'example' => 'ecs.c6.xlarge', 'title' => ''], + 'DiskCategory' => ['description' => 'The type of the source disk.', 'type' => 'string', 'example' => 'cloud_essd', 'title' => ''], + 'PerformanceLevel' => ['description' => 'The performance level of the source disk.', 'type' => 'string', 'example' => 'PL0', 'title' => ''], + 'InstantAccess' => ['description' => 'Indicates whether the backup is created for the instant clone feature.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'AdvancedRetentionType' => ['description' => 'The special retention type. This parameter is valid only for special retention backups. Valid values:'."\n" + ."\n" + .'- **WEEKLY**: weekly special retention backup'."\n" + ."\n" + .'- **MONTHLY**: monthly special retention backup'."\n" + ."\n" + .'- **YEARLY**: yearly special retention backup', 'type' => 'string', 'example' => 'WEEKLY', 'title' => ''], + 'ExpireTime' => ['description' => 'The time when the backup expires.', 'type' => 'integer', 'format' => 'int64', 'example' => '1640334062', 'title' => ''], + 'CanBeDeleted' => ['description' => 'Indicates whether the disk backup point can be deleted. This parameter is valid only if **SourceType** is set to **UDM\\_ECS\\_DISK**.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], + 'ArchiveStatus' => ['description' => 'The archiving status.', 'type' => 'string', 'example' => 'ARCHIVED', 'title' => ''], + 'ArchiveErrorMessage' => ['description' => 'The error message that is returned if the archiving fails.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''], + 'ArchiveTriggerTime' => ['description' => 'The time when the archiving was triggered.', 'type' => 'integer', 'format' => 'int64', 'example' => '1763373304', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"51CDEECB-7001-51CC-94AC-2A0F2A4B71D2\\",\\n \\"TotalCount\\": 3,\\n \\"Success\\": true,\\n \\"Snapshots\\": [\\n {\\n \\"Status\\": \\"COMPLETE\\",\\n \\"SnapshotHash\\": \\"f2fe...\\",\\n \\"BackupType\\": \\"COMPLETE\\",\\n \\"CreateTime\\": 1607436917,\\n \\"ActualBytes\\": \\"600\\",\\n \\"SourceType\\": \\"UDM_ECS\\",\\n \\"Prefix\\": \\"example/\\",\\n \\"DiskId\\": \\"d-2ze86h5fga5rfwxxa8ef\\",\\n \\"BytesTotal\\": 1000,\\n \\"NativeSnapshotInfo\\": \\"{\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"sourceDiskId\\\\\\":\\\\\\"d-bp17misjuy636t82v7b0\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"lastModifiedTime\\\\\\":\\\\\\"2022-03-09T11:35:12Z\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"snapshotSN\\\\\\":\\\\\\"64588-429372675-857161235\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"snapshotId\\\\\\":\\\\\\"s-bp1fbtwv3e6xr6wpe9e0\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"creationTime\\\\\\":\\\\\\"2022-03-09T11:31:12Z\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"snapshotType\\\\\\":\\\\\\"user\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"usage\\\\\\":\\\\\\"none\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"description\\\\\\":\\\\\\"\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"sourceStorageType\\\\\\":\\\\\\"disk\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"tags\\\\\\":[\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t{\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"tagValue\\\\\\":\\\\\\"job-0007e0wqjl0imbrtkmnm\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"tagKey\\\\\\":\\\\\\"HBR JobId\\\\\\"\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\t}\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t],\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"productCode\\\\\\":\\\\\\"\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"encrypted\\\\\\":false,\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"sourceDiskType\\\\\\":\\\\\\"system\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"retentionDays\\\\\\":30,\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"snapshotName\\\\\\":\\\\\\"Created-from-HBR-job:job-0007e0wqjl0imbrtkmnm\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"kMSKeyId\\\\\\":\\\\\\"\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"progress\\\\\\":\\\\\\"100%\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"category\\\\\\":\\\\\\"standard\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"sourceDiskSize\\\\\\":\\\\\\"20\\\\\\",\\\\n\\\\t\\\\t\\\\t\\\\t\\\\t\\\\\\"status\\\\\\":\\\\\\"accomplished\\\\\\"\\\\n\\\\t\\\\t\\\\t\\\\t}\\",\\n \\"CompleteTime\\": 1646895666,\\n \\"Retention\\": 7,\\n \\"CreatedTime\\": 1642496679,\\n \\"RealSnapshotTime\\": 1642496679,\\n \\"ParentSnapshotHash\\": \\"f2fe..\\",\\n \\"InstanceId\\": \\"i-bp1f0pe78dxizrsdcgxd\\",\\n \\"StartTime\\": 1554347313,\\n \\"UpdatedTime\\": 1642496679,\\n \\"SnapshotId\\": \\"s-00047mxg17p26*****b\\",\\n \\"JobId\\": \\"job-00030j3chkt******2\\",\\n \\"NativeSnapshotId\\": \\"s-00047mg17p26x*****b\\",\\n \\"Detail\\": {\\n \\"DiskDevName\\": \\"/dev/xvdb\\",\\n \\"DowngradeReason\\": \\"HBR.NoRamRoleBound\\",\\n \\"OsDiskId\\": \\"d-bp1e6427vhd320hifvc\\",\\n \\"OsName\\": \\"Debian 10.10 64-bit (UEFI)\\",\\n \\"ContainOsDisk\\": true,\\n \\"ConsistentLevel\\": \\"CRASH\\",\\n \\"VmName\\": \\"BNSHSVR42 IPGUARD\\",\\n \\"DiskHbrSnapshotIdWithDeviceMap\\": {\\n \\"/dev/xvdb\\": \\"s-0000u7y6wm3v1e7hxh5a\\",\\n \\"/dev/xvda\\": \\"s-0004bl6yr5pt89jjsv5a\\"\\n },\\n \\"InstanceIdWithDiskIdListMap\\": {\\n \\"i-bp1dlp0keohh7ids4uo6\\": \\"d-bp1e6427vhd320hifvd\\"\\n },\\n \\"InstanceName\\": \\"swh-hbr\\",\\n \\"OsType\\": \\"windows\\",\\n \\"Platform\\": \\"CentOS\\",\\n \\"OsNameEn\\": \\"Debian 11.1 64 bit\\",\\n \\"HostName\\": \\"iZbpxxxxxxxxxxxxxxxxe2Z\\",\\n \\"SystemDisk\\": true,\\n \\"DiskIdList\\": [\\n \\"d-bp1e6427vhd320hifvs\\"\\n ],\\n \\"NativeSnapshotIdList\\": [\\n \\"s-0004bl6yr5pt89jjsv5a\\"\\n ],\\n \\"SnapshotGroupId\\": \\"ssg-uf6856txcaq31uj***\\",\\n \\"InstanceType\\": \\"ecs.c6.xlarge\\",\\n \\"DiskCategory\\": \\"cloud_essd\\",\\n \\"PerformanceLevel\\": \\"PL0\\",\\n \\"InstantAccess\\": false\\n },\\n \\"AdvancedRetentionType\\": \\"WEEKLY\\",\\n \\"ExpireTime\\": 1640334062,\\n \\"CanBeDeleted\\": false,\\n \\"ArchiveStatus\\": \\"ARCHIVED\\",\\n \\"ArchiveErrorMessage\\": \\"InternalError\\",\\n \\"ArchiveTriggerTime\\": 1763373304\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'DescribeUdmSnapshots', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeUdmSnapshots'], + ], + ], + 'ramActions' => [ [ - 'name' => 'CrossAccountType', - 'in' => 'query', - 'schema' => [ - 'description' => 'The backup type. Valid values:'."\n" - ."\n" - .'- **SELF_ACCOUNT**: Data is backed up within the same Alibaba Cloud account.'."\n" - .'- **CROSS_ACCOUNT**: Data is backed up across Alibaba Cloud accounts.', - 'type' => 'string', - 'required' => false, - 'example' => 'CROSS_ACCOUNT', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'hbr:DescribeUdmSnapshots', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], + ], + ], + 'DescribeVaultReplicationRegions' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'CrossAccountUserId', + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'abilityTreeCode' => '95568', + 'abilityTreeNodes' => ['FEATUREhbrGSUVI2'], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'Token', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the source Alibaba Cloud account that authorizes the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '158975xxxxx4625', - ], + 'schema' => ['description' => 'This parameter is deprecated.'."\n", 'type' => 'string', 'required' => false, 'example' => '01W3ZZOQ'], ], [ - 'name' => 'CrossAccountRoleName', + 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the Resource Access Management (RAM) role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.', - 'type' => 'string', - 'required' => false, - 'example' => 'hbrcrossrole', - ], + 'schema' => ['description' => 'This parameter is deprecated.'."\n", 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => 'v-00030j3c******sn'], ], ], 'responses' => [ @@ -11618,155 +8652,150 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => 'EB526A5D-1FE2-51C1-B790-1732C1DBA969', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'ClusterId' => [ - 'description' => 'The ID of the SAP HANA instance.'."\n", - 'type' => 'string', - 'example' => 'cl-000dp1sz******6hn', + 'Code' => ['description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => 'F4EEB401-DD21-588D-AE3B-1E835C7655E1'], + 'Success' => ['description' => 'Indicates whether the call is successful.'."\n" + ."\n" + .'* true: The call is successful.'."\n" + .'* false: The call fails.'."\n", 'type' => 'boolean', 'example' => 'true'], + 'Regions' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'RegionId' => [ + 'description' => 'The regions that support cross-region replication.'."\n", + 'type' => 'array', + 'items' => ['description' => 'The regions that support cross-region replication.'."\n", 'type' => 'string', 'example' => 'cn-hangzhou'], + ], + ], ], ], - 'description' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"EB526A5D-1FE2-51C1-B790-1732C1DBA969\\",\\n \\"Success\\": true,\\n \\"ClusterId\\": \\"cl-000dp1sz******6hn\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateHanaInstanceResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>EB526A5D-1FE2-51C1-B790-1732C1DBA969</RequestId>\\n <Success>true</Success>\\n <ClusterId>cl-000dp1sz******6hn</ClusterId>\\n</CreateHanaInstanceResponse>","errorExample":""}]', - 'title' => 'CreateHanaInstance', - 'description' => 'To register an SAP HANA instance, you must configure the SAP HANA connection information. After the SAP HANA instance is registered, Cloud Backup installs a backup client on the node of the SAP HANA instance.'."\n", - ], - 'CreateClients' => [ - 'summary' => 'Installs one or more Cloud Backup clients on specified instances.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', + 'title' => 'DescribeVaultReplicationRegions', + 'summary' => 'Queries the regions that support cross-region replication. ', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeVaultReplicationRegions'], + ], ], + 'ramActions' => [], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"F4EEB401-DD21-588D-AE3B-1E835C7655E1\\",\\n \\"Success\\": true,\\n \\"Regions\\": {\\n \\"RegionId\\": [\\n \\"cn-hangzhou\\"\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeVaultReplicationRegionsResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>F4EEB401-DD21-588D-AE3B-1E835C7655E1</RequestId>\\n <Success>true</Success>\\n <Regions>cn-hangzhou</Regions>\\n</DescribeVaultReplicationRegionsResponse>","errorExample":""}]', + ], + 'DescribeVaults' => [ + 'summary' => 'Describes one or more backup vaults that meet specified criteria.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', + 'operationType' => 'get', 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '95433', - 'abilityTreeNodes' => [ - 'FEATUREhbrI97IXK', - ], + 'chargeType' => 'paid', + 'abilityTreeCode' => '95569', + 'abilityTreeNodes' => ['FEATUREhbrFJ9107'], ], 'parameters' => [ [ 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'v-0001ufe******kgm', - ], + 'schema' => ['description' => 'The ID of the backup vault.', 'type' => 'string', 'required' => false, 'example' => 'v-*********************', 'title' => ''], ], [ - 'name' => 'AlertSetting', + 'name' => 'VaultRegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The alert settings. Valid value: INHERITED, which indicates that the HBR client sends alert notifications by using the same method configured for the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'INHERITED', - ], + 'schema' => ['description' => 'The ID of the region where the backup vault resides.', 'type' => 'string', 'required' => false, 'example' => 'cn-shanghai', 'title' => ''], ], [ - 'name' => 'ClientInfo', + 'name' => 'Status', 'in' => 'query', 'schema' => [ - 'description' => 'The installation information of the HBR clients.'."\n", + 'description' => 'The status of the backup vault.'."\n" + ."\n" + .'- **UNKNOWN**: The status is unknown.'."\n" + ."\n" + .'- **INITIALIZING**: The backup vault is being initialized.'."\n" + ."\n" + .'- **CREATED**: The backup vault has been created.'."\n" + ."\n" + .'- **ERROR**: An error occurred.', 'type' => 'string', 'required' => false, - 'example' => '[ { "instanceId": "i-bp116lr******te9q2", "accessKeyId": "", "accessKeySecret": "", "clusterId": "cl-000csy09q******9rfz9", "sourceTypes": [ "HANA" ] }, { "instanceId": "i-bp116lrux******hte9q4", "accessKeyId": "", "accessKeySecret": "", "clusterId": "cl-000csy09q5094vw9rfz9", "sourceTypes": [ "HANA" ] }]', - 'docRequired' => true, + 'enum' => ['UNKNOWN', 'CREATED', 'ERROR'], + 'example' => 'CREATED', + 'title' => '', ], ], [ - 'name' => 'UseHttps', + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => ['description' => 'The page number. Pages start from page 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''], + ], + [ + 'name' => 'PageSize', 'in' => 'query', + 'schema' => ['description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], + ], + [ + 'name' => 'VaultType', + 'in' => 'query', + 'schema' => ['description' => 'The type of the backup vault. Valid values:'."\n" + ."\n" + .'- **STANDARD**: standard backup vault. This type of vault can be used for ECS file backup, OSS backup, and NAS backup.'."\n" + ."\n" + .'- **OTS\\_BACKUP**: Tablestore backup vault. This type of vault is dedicated to Tablestore backup.', 'type' => 'string', 'required' => false, 'example' => 'STANDARD', 'title' => ''], + ], + [ + 'name' => 'Tag', + 'in' => 'formData', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'Specifies whether to transmit data over HTTPS. Valid values:'."\n" - ."\n" - .'* true: transmits data over HTTPS.'."\n" - .'* false: transmits data over HTTP.'."\n", - 'type' => 'boolean', + 'description' => 'The tags. You can specify a maximum of 20 tags.', + 'type' => 'array', + 'items' => [ + 'description' => 'The tag.', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => 'The key of the tag.', 'type' => 'string', 'required' => false, 'example' => 'key1', 'title' => ''], + 'Value' => ['description' => 'The value of the tag.', 'type' => 'string', 'required' => false, 'example' => 'value1', 'title' => ''], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], 'required' => false, - 'example' => 'false', + 'example' => '6a745bceffb042959b3b5206d6f12ad1', + 'maxItems' => 21, + 'title' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the resource group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rg-aekzvx7d3c4kpny', - ], + 'schema' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'required' => false, 'example' => 'rg-*********************', 'title' => ''], ], [ - 'name' => 'CrossAccountType', + 'name' => 'VaultName', 'in' => 'query', - 'schema' => [ - 'description' => 'The backup type. Valid values:'."\n" - ."\n" - .'- **SELF_ACCOUNT**: Data is backed up within the same Alibaba Cloud account.'."\n" - .'- **CROSS_ACCOUNT**: Data is backed up across Alibaba Cloud accounts.', - 'type' => 'string', - 'required' => false, - 'example' => 'CROSS_ACCOUNT', - ], + 'schema' => ['description' => 'The name of the backup vault. The name must be 1 to 64 characters in length.', 'type' => 'string', 'required' => false, 'example' => 'vaultname', 'title' => ''], ], [ - 'name' => 'CrossAccountUserId', + 'name' => 'VaultOwnerId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the source Alibaba Cloud account that authorizes the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '158975xxxxx4625', - ], + 'schema' => ['description' => 'The ID of the Alibaba Cloud account that owns the backup vault.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '144******732', 'title' => ''], ], [ - 'name' => 'CrossAccountRoleName', + 'name' => 'Replication', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the Resource Access Management (RAM) role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.', - 'type' => 'string', - 'required' => false, - 'example' => 'hbrcrossrole', - ], + 'schema' => ['description' => 'Specifies whether to query the backup vaults that are used as replication destinations.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], ], 'responses' => [ @@ -11774,80 +8803,269 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '4A8A9AE4-F798-5E6D-853E-10F9F5A1BD4E', - ], - 'TaskId' => [ - 'description' => 'The ID of the asynchronous job. You can call the DescribeTask operation to query the execution result of an asynchronous job.'."\n", - 'type' => 'string', - 'example' => 't-000h9x5t02vhyksf1x7k', - ], - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'InstanceStatuses' => [ + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request was successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The message that is returned. If the request is successful, "successful" is returned. If the request fails, an error message is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'PageNumber' => ['description' => 'The page number. Pages start from page 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'PageSize' => ['description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], + 'TotalCount' => ['description' => 'The total number of backup vaults that are returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '8', 'title' => ''], + 'Vaults' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ - 'InstanceStatus' => [ - 'description' => 'The status of the ECS instance. If you specify more than one instance IDs in the request and the status of an ECS instance does not meet the requirements to install an HBR client, an error message is returned based on the value of this parameter.'."\n", + 'Vault' => [ + 'description' => 'The list of backup vaults.', + 'example' => '{\'Vault\': []}', 'type' => 'array', 'items' => [ - 'description' => 'The status of the ECS instance. If you specify more than one instance IDs in the request and the status of an ECS instance does not meet the requirements to install an HBR client, an error message is returned based on the value of this parameter.'."\n", + 'description' => 'The list of backup vaults.', 'type' => 'object', 'properties' => [ - 'ValidInstance' => [ - 'description' => 'Indicates whether an HBR client can be installed on the ECS instance. Valid values:'."\n" - ."\n" - .'* true: An HBR client can be installed on the ECS instance.'."\n" - .'* false: An HBR client cannot be installed on the ECS instance.'."\n", - 'type' => 'boolean', - 'example' => 'true', + 'Status' => ['description' => 'The status of the backup vault.'."\n" + ."\n" + .'- **UNKNOWN**: The status is unknown.'."\n" + ."\n" + .'- **INITIALIZING**: The backup vault is being initialized.'."\n" + ."\n" + .'- **CREATED**: The backup vault has been created.'."\n" + ."\n" + .'- **ERROR**: An error occurred.', 'type' => 'string', 'example' => 'CREATED', 'title' => ''], + 'VaultId' => ['description' => 'The ID of the backup vault.', 'type' => 'string', 'example' => 'v-*********************', 'title' => ''], + 'ChargeType' => ['description' => 'The billing method of the backup vault.', 'type' => 'string', 'example' => 'FREE', 'title' => ''], + 'VaultType' => ['description' => 'The type of the backup vault. The value is fixed as **STANDARD**, which indicates a standard backup vault.', 'type' => 'string', 'example' => 'STANDARD', 'title' => ''], + 'Dedup' => ['description' => 'Indicates whether the deduplication feature is enabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'ReplicationSourceVaultId' => ['description' => 'The ID of the source vault for geo-redundancy.', 'type' => 'string', 'example' => 'v-*********************', 'title' => ''], + 'IndexUpdateTime' => ['description' => 'The time when the index was updated.', 'type' => 'integer', 'format' => 'int64', 'example' => '1639645628', 'title' => ''], + 'Description' => ['description' => 'The description of the vault.', 'type' => 'string', 'example' => 'vault description', 'title' => ''], + 'VaultStorageClass' => ['description' => 'The storage class of the backup vault. The value is fixed as **STANDARD**.', 'type' => 'string', 'example' => 'STANDARD', 'title' => ''], + 'Retention' => ['description' => 'The retention period of the backup vault. Unit: days.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''], + 'CreatedTime' => ['description' => 'The time when the backup vault was created. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1554347313', 'title' => ''], + 'IndexLevel' => ['description' => 'The index level.'."\n" + ."\n" + .'- OFF: No index is created.'."\n" + ."\n" + .'- META: A metadata index is created.'."\n" + ."\n" + .'- ALL: A full-text index is created.', 'type' => 'string', 'example' => 'OFF', 'title' => ''], + 'VaultName' => ['description' => 'The name of the backup vault.', 'type' => 'string', 'example' => 'vaultname', 'title' => ''], + 'StorageSize' => ['description' => 'The usage of the backup vault. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''], + 'LatestReplicationTime' => ['description' => 'The time of the last geo-redundancy sync. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1554347313', 'title' => ''], + 'VaultStatusMessage' => ['description' => 'The error message for the geo-redundant vault. This parameter is valid only for geo-redundant vaults. Valid values:'."\n" + ."\n" + .'- **UNKNOWN\\_ERROR**: An unknown error occurred.'."\n" + ."\n" + .'- **SOURCE\\_VAULT\\_ALREADY\\_HAS\\_REPLICATION**: Another replication destination is configured for the source vault.', 'type' => 'string', 'example' => 'SOURCE_VAULT_ALREADY_HAS_REPLICATION', 'title' => ''], + 'Replication' => ['description' => 'Indicates whether the vault is a geo-redundant vault.'."\n" + ."\n" + .'- true: The vault is a geo-redundant vault.'."\n" + ."\n" + .'- false: The vault is a local backup vault.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], + 'ReplicationSourceRegionId' => ['description' => 'The ID of the region where the source vault of the geo-redundant vault resides. This parameter is valid only for geo-redundant vaults.', 'type' => 'string', 'example' => 'cn-shanghai', 'title' => ''], + 'VaultRegionId' => ['description' => 'The ID of the region where the backup vault resides.', 'type' => 'string', 'example' => 'cn-shanghai', 'title' => ''], + 'UpdatedTime' => ['description' => 'The time when the backup vault was updated. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1554347313', 'title' => ''], + 'ResourceGroupId' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'example' => 'rg-*********************', 'title' => ''], + 'BucketName' => ['description' => 'The name of the Object Storage Service (OSS) bucket used for the backup vault.', 'type' => 'string', 'example' => 'hbr-0005i51******t58', 'title' => ''], + 'SearchEnabled' => ['description' => 'Indicates whether the backup search feature is enabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'IndexAvailable' => ['description' => 'Indicates whether the index is available. An index is available when it is not being updated.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'BytesDone' => ['description' => 'The backup data size. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''], + 'Tags' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Tag' => [ + 'description' => 'The tags of the backup vault.', + 'type' => 'array', + 'items' => [ + 'description' => 'The tags of the backup vault.', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => 'The tag key of the vault.'."\n" + ."\n" + .'- The key cannot start with `aliyun` or `acs:`.'."\n" + ."\n" + .'- The key cannot contain `http://` or `https://`.'."\n" + ."\n" + .'- The key cannot be an empty string.', 'type' => 'string', 'example' => 'aaa', 'title' => ''], + 'Value' => ['description' => 'The tag value of the vault.'."\n" + ."\n" + .'- The value cannot start with `aliyun` or `acs:`.'."\n" + ."\n" + .'- The value cannot contain `http://` or `https://`.'."\n" + ."\n" + .'- The value cannot be an empty string.', 'type' => 'string', 'example' => 'a1', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', ], - 'InstanceId' => [ - 'description' => 'The ID of the ECS instance.'."\n", - 'type' => 'string', - 'example' => 'i-2zegp3cdu******uj9i', + 'SourceTypes' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'SourceType' => [ + 'description' => 'The types of data sources that are backed up to the vault.', + 'type' => 'array', + 'items' => ['description' => 'The type of the data source.', 'type' => 'string', 'example' => 'ECS_FILE', 'title' => ''], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'ReplicationProgress' => [ + 'description' => 'The replication progress of the backup vault.', + 'type' => 'object', + 'properties' => [ + 'HistoricalReplicationProgress' => ['description' => 'The replication progress of historical data in the backup vault. Valid values: 0 to 100.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], + 'NewReplicationProgress' => ['description' => 'The most recent replication time of incremental data in the backup vault.', 'type' => 'integer', 'format' => 'int64', 'example' => '1579413159', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'BackupPlanStatistics' => [ + 'description' => 'The statistics of backup plans for the backup vault.', + 'type' => 'object', + 'properties' => [ + 'Oracle' => ['description' => 'The number of Oracle backup plans.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'LocalFile' => ['description' => 'The number of backup plans for on-premises servers.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'Nas' => ['description' => 'The number of NAS backup plans.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'CommonNas' => ['description' => 'The number of backup plans for general-purpose NAS file systems.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'Isilon' => ['description' => 'The number of Isilon backup plans.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'Oss' => ['description' => 'The number of OSS backup plans.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'SqlServer' => ['description' => 'The number of SQL Server backup plans.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'Csg' => ['description' => 'The number of Cloud Storage Gateway (CSG) backup plans.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'EcsFile' => ['description' => 'The number of ECS file backup plans.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'MySql' => ['description' => 'The number of MySQL backup plans.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'EcsHana' => ['description' => 'The number of SAP HANA backup plans.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'LocalVm' => ['description' => 'The number of backup plans for on-premises virtual machines.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'Ots' => ['description' => 'The number of Tablestore backup plans.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'Archive' => ['description' => 'The number of archive plans.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'CommonFileSystem' => ['description' => 'The number of Cloud Paralleled File System (CPFS) backup plans.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'TrialInfo' => [ + 'description' => 'The free trial properties.', + 'type' => 'object', + 'properties' => [ + 'TrialStartTime' => ['description' => 'The start time of the free trial.', 'type' => 'integer', 'format' => 'int64', 'example' => '1579413159', 'title' => ''], + 'TrialVaultReleaseTime' => ['description' => 'The time when the trial backup vault is released.', 'type' => 'integer', 'format' => 'int64', 'example' => '1594965600', 'title' => ''], + 'TrialExpireTime' => ['description' => 'The expiration time of the free trial.', 'type' => 'integer', 'format' => 'int64', 'example' => '1584597600', 'title' => ''], + 'KeepAfterTrialExpiration' => ['description' => 'Indicates whether the backup vault is converted to a pay-as-you-go vault after the free trial ends.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'EncryptType' => ['description' => 'The encryption type of the backup vault.'."\n" + ."\n" + .'- NONE: No encryption is used.'."\n" + ."\n" + .'- HBR\\_PRIVATE: The backup vault is encrypted using a key that is managed by Hybrid Backup Recovery (HBR). This is the default value.'."\n" + ."\n" + .'- KMS: The backup vault is encrypted using a key that is managed by Key Management Service (KMS).', 'type' => 'string', 'example' => 'HBR_PRIVATE', 'title' => ''], + 'WormEnabled' => ['description' => 'Indicates whether backup locking is enabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'SnapshotCount' => ['description' => 'The number of snapshots in the vault.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''], + 'CompressionAlgorithm' => ['description' => 'The compression algorithm that is used for the backup vault. Valid values:'."\n" + ."\n" + .'- DISABLED: Compression is disabled.'."\n" + ."\n" + .'- SNAPPY: The SNAPPY algorithm is used.'."\n" + ."\n" + .'- ZSTD: The Zstandard algorithm is used. Zstandard is a fast, lossless compression algorithm.', 'type' => 'string', 'example' => 'ZSTD', 'title' => ''], + 'RedundancyType' => ['description' => 'The data redundancy type of the backup vault. Valid values:'."\n" + ."\n" + .'- LRS: locally redundant storage (LRS). HBR stores redundant copies of your data on multiple devices in the same zone to ensure data durability and availability in case of hardware failures.'."\n" + ."\n" + .'- ZRS: zone-redundant storage (ZRS). HBR uses a multi-zone mechanism to distribute your data across three zones within the same region. This ensures that your data remains accessible even if a zone becomes unavailable.', 'type' => 'string', 'example' => 'LRS', 'title' => ''], + 'KmsKeyId' => ['description' => 'The ID of the customer master key (CMK) or the alias of the CMK that is used for KMS encryption. This parameter is required only if you set EncryptType to KMS.', 'type' => 'string', 'example' => 'alias/acs/acm', 'title' => ''], + 'ChargedStorageSize' => ['description' => 'The billable storage usage of the archive vault. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '1024000', 'title' => ''], + 'ArchiveStorageSize' => ['description' => 'The billable storage usage of the Archive storage class. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '1024000', 'title' => ''], + 'ArchiveBytesDone' => ['description' => 'The backup data size of the Archive storage class. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '1024000', 'title' => ''], + 'ReplicationSourceVault' => ['description' => 'Indicates whether the vault is a source vault for geo-redundancy.'."\n" + ."\n" + .'- true: The vault is a source vault for geo-redundancy.'."\n" + ."\n" + .'- false: The vault is not a source vault for geo-redundancy.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], + 'ReplicationTargetRegionId' => ['description' => 'The destination region for geo-redundancy.', 'type' => 'string', 'example' => 'cn-shanghai', 'title' => ''], + 'VaultOwnerId' => ['description' => 'The ID of the account that owns the data store.', 'type' => 'integer', 'format' => 'int64', 'example' => '123***7890', 'title' => ''], + 'ReplicationTargetVaultId' => ['description' => 'The ID of the replication destination vault.', 'type' => 'string', 'example' => 'v-123***7890', 'title' => ''], + 'ReplicationSourceOwnerId' => ['description' => 'The ID of the source account for replication.', 'type' => 'integer', 'format' => 'int64', 'example' => '123***7890', 'title' => ''], + 'ReplicationTargetOwnerId' => ['description' => 'The ID of the account that owns the replication destination vault.', 'type' => 'integer', 'format' => 'int64', 'example' => '123***7890', 'title' => ''], + 'ReplicationStatus' => ['description' => 'The replication status of the replication destination vault.', 'type' => 'string', 'example' => 'RUNNING', 'title' => ''], + 'RsTargetAccountIds' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'RsTargetAccountId' => [ + 'type' => 'array', + 'items' => ['description' => 'The destination account for resource sharing.', 'type' => 'integer', 'format' => 'int64', 'example' => '123***7890', 'title' => ''], + 'description' => 'The destination account for resource sharing.', + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], + 'title' => '', ], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"4A8A9AE4-F798-5E6D-853E-10F9F5A1BD4E\\",\\n \\"TaskId\\": \\"t-000h9x5t02vhyksf1x7k\\",\\n \\"Success\\": true,\\n \\"InstanceStatuses\\": {\\n \\"InstanceStatus\\": [\\n {\\n \\"ValidInstance\\": true,\\n \\"InstanceId\\": \\"i-2zegp3cdu******uj9i\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<CreateClientsResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>4A8A9AE4-F798-5E6D-853E-10F9F5A1BD4E</RequestId>\\n <TaskId>t-000h9x5t02vhyksf1x7k</TaskId>\\n <Success>true</Success>\\n <InstanceStatuses>\\n <ValidInstance>true</ValidInstance>\\n <InstanceId>i-2zegp3cdu******uj9i</InstanceId>\\n </InstanceStatuses>\\n</CreateClientsResponse>","errorExample":""}]', - 'title' => 'CreateClients', - 'description' => 'Before you call this operation, make sure that you fully understand the billing methods and pricing of Cloud Backup. For more information, see [Billing methods and billable items](~~89062~~).'."\n", - ], - 'DeleteClient' => [ - 'summary' => '删除客户端', - 'methods' => [ - 'post', - 'get', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 8,\\n \\"Vaults\\": {\\n \\"Vault\\": [\\n {\\n \\"Status\\": \\"CREATED\\",\\n \\"VaultId\\": \\"v-*********************\\",\\n \\"ChargeType\\": \\"FREE\\",\\n \\"VaultType\\": \\"STANDARD\\",\\n \\"Dedup\\": true,\\n \\"ReplicationSourceVaultId\\": \\"v-*********************\\",\\n \\"IndexUpdateTime\\": 1639645628,\\n \\"Description\\": \\"vault description\\",\\n \\"VaultStorageClass\\": \\"STANDARD\\",\\n \\"Retention\\": 2,\\n \\"CreatedTime\\": 1554347313,\\n \\"IndexLevel\\": \\"OFF\\",\\n \\"VaultName\\": \\"vaultname\\",\\n \\"StorageSize\\": 10,\\n \\"LatestReplicationTime\\": 1554347313,\\n \\"VaultStatusMessage\\": \\"SOURCE_VAULT_ALREADY_HAS_REPLICATION\\",\\n \\"Replication\\": false,\\n \\"ReplicationSourceRegionId\\": \\"cn-shanghai\\",\\n \\"VaultRegionId\\": \\"cn-shanghai\\",\\n \\"UpdatedTime\\": 1554347313,\\n \\"ResourceGroupId\\": \\"rg-*********************\\",\\n \\"BucketName\\": \\"hbr-0005i51******t58\\",\\n \\"SearchEnabled\\": true,\\n \\"IndexAvailable\\": true,\\n \\"BytesDone\\": 20,\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"Key\\": \\"aaa\\",\\n \\"Value\\": \\"a1\\"\\n }\\n ]\\n },\\n \\"SourceTypes\\": {\\n \\"SourceType\\": [\\n \\"ECS_FILE\\"\\n ]\\n },\\n \\"ReplicationProgress\\": {\\n \\"HistoricalReplicationProgress\\": 100,\\n \\"NewReplicationProgress\\": 1579413159\\n },\\n \\"BackupPlanStatistics\\": {\\n \\"Oracle\\": 1,\\n \\"LocalFile\\": 1,\\n \\"Nas\\": 1,\\n \\"CommonNas\\": 1,\\n \\"Isilon\\": 1,\\n \\"Oss\\": 1,\\n \\"SqlServer\\": 1,\\n \\"Csg\\": 1,\\n \\"EcsFile\\": 1,\\n \\"MySql\\": 1,\\n \\"EcsHana\\": 1,\\n \\"LocalVm\\": 1,\\n \\"Ots\\": 1,\\n \\"Archive\\": 1,\\n \\"CommonFileSystem\\": 1\\n },\\n \\"TrialInfo\\": {\\n \\"TrialStartTime\\": 1579413159,\\n \\"TrialVaultReleaseTime\\": 1594965600,\\n \\"TrialExpireTime\\": 1584597600,\\n \\"KeepAfterTrialExpiration\\": true\\n },\\n \\"EncryptType\\": \\"HBR_PRIVATE\\",\\n \\"WormEnabled\\": true,\\n \\"SnapshotCount\\": 0,\\n \\"CompressionAlgorithm\\": \\"ZSTD\\",\\n \\"RedundancyType\\": \\"LRS\\",\\n \\"KmsKeyId\\": \\"alias/acs/acm\\",\\n \\"ChargedStorageSize\\": 1024000,\\n \\"ArchiveStorageSize\\": 1024000,\\n \\"ArchiveBytesDone\\": 1024000,\\n \\"ReplicationSourceVault\\": false,\\n \\"ReplicationTargetRegionId\\": \\"cn-shanghai\\",\\n \\"VaultOwnerId\\": 0,\\n \\"ReplicationTargetVaultId\\": \\"v-123***7890\\",\\n \\"ReplicationSourceOwnerId\\": 0,\\n \\"ReplicationTargetOwnerId\\": 0,\\n \\"ReplicationStatus\\": \\"RUNNING\\",\\n \\"RsTargetAccountIds\\": {\\n \\"RsTargetAccountId\\": [\\n 0\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'DescribeVaults', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeVaults'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeVaults', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'DetachNasFileSystem' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -11855,89 +9073,102 @@ ], 'operationType' => 'write', 'systemTags' => [ - 'operationType' => 'delete', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREhbrI97IXK', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '95580', + 'abilityTreeNodes' => ['FEATUREhbrFWIWBG'], ], 'parameters' => [ [ - 'name' => 'VaultId', + 'name' => 'FileSystemId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'v-000************gs3', - ], + 'schema' => ['description' => 'The ID of the file system.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '005494', 'title' => ''], ], [ - 'name' => 'ClientId', + 'name' => 'CreateTime', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the client.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'c-000************f3h', - ], + 'schema' => ['description' => 'The time when the file system was created. The value must be a UNIX timestamp. Unit: seconds.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '1607436917', 'title' => ''], ], [ - 'name' => 'ResourceGroupId', + 'name' => 'CrossAccountType', 'in' => 'query', 'schema' => [ - 'description' => 'The ID of the resource group.'."\n", + 'description' => 'Specifies whether data is backed up and restored within the same Alibaba Cloud account or across Alibaba Cloud accounts. Valid values:'."\n" + ."\n" + .'- SELF\\_ACCOUNT: Data is backed up and restored within the same Alibaba Cloud account.'."\n" + ."\n" + .'- CROSS\\_ACCOUNT: Data is backed up and restored across Alibaba Cloud accounts.', + 'enumValueTitles' => [], 'type' => 'string', 'required' => false, - 'example' => 'rg-acf************kwy', + 'example' => 'SELF_ACCOUNT', + 'title' => '', ], ], + [ + 'name' => 'CrossAccountUserId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the source Alibaba Cloud account that authorizes the current Alibaba Cloud account to back up and restore data across Alibaba Cloud accounts.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '158975xxxxx4625', 'title' => ''], + ], + [ + 'name' => 'CrossAccountRoleName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the RAM role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up and restore data across Alibaba Cloud accounts.', 'type' => 'string', 'required' => false, 'example' => 'BackupRole', 'title' => ''], + ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => 'C51A9094-64B7-5DC0-B9FE-5FC1AC7E081D', - ], - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The HTTP status code. The status code 200 indicates that the request is successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The message that is returned. If the request is successful, a value of successful is returned. If the request fails, an error message is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], + 'TaskId' => ['description' => 'The ID of the asynchronous job. You can call the DescribeTask operation to query the execution result of the asynchronous job.', 'type' => 'string', 'example' => 't-*********************', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request is successful.'."\n" + ."\n" + .'- true: The request is successful.'."\n" + ."\n" + .'- false: The request fails.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"C51A9094-64B7-5DC0-B9FE-5FC1AC7E081D\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => 'DeleteClient', - ], - 'CreateHanaRestore' => [ - 'methods' => [ - 'post', - 'get', + 'title' => 'DetachNasFileSystem', + 'summary' => 'Deletes an internal mount target created by Cloud Backup.', + 'description' => '- If the request is successful, the mount target is deleted.'."\n" + ."\n" + .'- After you create a backup plan for an Apsara File Storage NAS file system, HBR automatically creates a mount target for the file system. Call this operation to delete the mount target. In the **Status** column of the mount target of the NAS file system, the following information is displayed: **This mount target is created by an Alibaba Cloud internal service and cannot be operated. Service name: HBR**.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DetachNasFileSystem'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:DetachNasFileSystem', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TaskId\\": \\"t-*********************\\",\\n \\"Success\\": true\\n}","type":"json"}]', + ], + 'DisableBackupPlan' => [ + 'summary' => 'Disables a backup plan.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -11946,203 +9177,191 @@ 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '95581', + 'abilityTreeNodes' => ['FEATUREhbr9ZUQY7'], ], 'parameters' => [ [ - 'name' => 'VaultId', + 'name' => 'PlanId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'v-000************yqr', - ], + 'schema' => ['description' => 'The ID of the backup plan.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'title' => '', 'example' => 'plan-*********************'], ], [ - 'name' => 'ClusterId', + 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the SAP HANA instance that you want to restore.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cl-000fbrs5******ka9w', - ], + 'schema' => ['description' => 'The ID of the backup vault.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'title' => '', 'example' => 'v-*********************'], ], [ - 'name' => 'DatabaseName', + 'name' => 'SourceType', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the database that you want to restore.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'TS2', - ], + 'schema' => ['description' => 'The type of the data source. Valid values:'."\n" + ."\n" + .'- **ECS\\_FILE**: Backs up ECS files.'."\n" + ."\n" + .'- **OSS**: Backs up Alibaba Cloud OSS.'."\n" + ."\n" + .'- **NAS**: Backs up Alibaba Cloud NAS.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'ECS_FILE'], ], [ - 'name' => 'BackupId', + 'name' => 'Edition', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'docRequired' => true, - 'example' => '1645628400235', - ], + 'schema' => ['type' => 'string', 'title' => '', 'description' => 'The edition. Valid values: BASIC and STANDARD. The default value is STANDARD.', 'required' => false, 'example' => 'STANDARD'], ], - [ - 'name' => 'Mode', - 'in' => 'query', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The recovery mode. Valid values:'."\n" - ."\n" - .'* **RECOVERY_TO_MOST_RECENT**: restores the database to the recently available state to which the database has been backed up.'."\n" - .'* **RECOVERY_TO_POINT_IN_TIME**: restores the database to a specified point in time.'."\n" - .'* **RECOVERY_TO_SPECIFIC_BACKUP**: restores the database to a specified backup.'."\n" - .'* **RECOVERY_TO_LOG_POSITION**: restores the database to a specified log position.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'RECOVERY_TO_POINT_IN_TIME', + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => 'The return code. A value of 200 indicates success.', 'type' => 'string', 'title' => '', 'example' => '200'], + 'Message' => ['description' => 'The returned message. \\`successful\\` is returned if the request is successful. An error message is returned if the request fails.', 'type' => 'string', 'title' => '', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'title' => '', 'example' => 'true'], + ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], - [ - 'name' => 'RecoveryPointInTime', - 'in' => 'query', - 'schema' => [ - 'description' => 'The point in time to which you want to restore the database. This parameter is valid only if you set the Mode parameter to **RECOVERY_TO_POINT_IN_TIME**. HBR restores the database to a state closest to the specified point in time.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1635315505', - ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'DisableBackupPlan', + 'description' => 'If the call is successful, the backup plan is disabled. The value of the Disabled parameter is then returned as true in the response of the DescribeBackupPlans operation.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DisableBackupPlan'], ], + ], + 'ramActions' => [ [ - 'name' => 'LogPosition', - 'in' => 'query', - 'schema' => [ - 'description' => 'The log position to which you want to restore the database. This parameter is valid only if you set the Mode parameter to **RECOVERY_TO_LOG_POSITION**.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '0', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:DisableBackupPlan', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], + ], + ], + 'DisableHanaBackupPlan' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'VolumeId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the volume that you want to restore. This parameter is valid only if you set the Mode parameter to **RECOVERY_TO_LOG_POSITION**.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '0', - ], + 'AK' => [], ], + ], + 'operationType' => 'write', + 'systemTags' => ['operationType' => 'update'], + 'parameters' => [ [ - 'name' => 'UseCatalog', + 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to use a catalog backup to restore the database. This parameter is required only if you set the Mode parameter to **RECOVERY_TO_SPECIFIC_BACKUP**. If you turn off Use Catalog, you must specify the prefix of a backup file. Then, Cloud Backup finds the backup file based on the specified prefix and restores the backup file.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - 'default' => 'true', - ], + 'schema' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'required' => true, 'example' => 'v-000f9z******vilrr'], ], [ - 'name' => 'BackupPrefix', + 'name' => 'ClusterId', 'in' => 'query', - 'schema' => [ - 'description' => 'The backup prefix.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'COMPLETE_DATA_BACKUP_2022_05_02_15_39', - ], + 'schema' => ['description' => 'The ID of the SAP HANA instance.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cl-0003tu******y5oc'], ], [ - 'name' => 'SystemCopy', + 'name' => 'PlanId', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to restore the database to a different instance.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => 'The ID of the backup plan.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'pl-0006o11ectqr650ceoct'], ], [ - 'name' => 'Source', + 'name' => 'ResourceGroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the source system. This parameter specifies the name of the source database that you want to restore. You must set the parameter in the `<Source database name>@SID` format.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'HNP@HNP', - ], + 'schema' => ['description' => 'The ID of the resource group.'."\n", 'type' => 'string', 'required' => false, 'example' => 'rg-acfm3erpwweavki'], ], - [ - 'name' => 'SourceClusterId', - 'in' => 'query', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The ID of the source SAP HANA instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cl-000ii8tzv******xm0t', + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'FFC87EC8-8126-5967-9C4D-82715F8DFC97'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], + ], + 'description' => '', ], ], + ], + 'title' => 'DisableHanaBackupPlan', + 'summary' => 'Disables an SAP HANA backup plan.', + 'description' => 'To enable the backup plan again, call the EnableHanaBackupPlan operation.'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DisableHanaBackupPlan'], + ], + ], + 'ramActions' => [], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"FFC87EC8-8126-5967-9C4D-82715F8DFC97\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DisableHanaBackupPlanResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>FFC87EC8-8126-5967-9C4D-82715F8DFC97</RequestId>\\n <Success>true</Success>\\n</DisableHanaBackupPlanResponse>","errorExample":""}]', + ], + 'EnableBackupPlan' => [ + 'summary' => 'Resumes a backup plan.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'ClearLog', - 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to delete all log entries from the log area after the log entries are restored. Valid values: true and false. If you set the value to false, all log entries are deleted from the log area after the log entries are restored.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'AK' => [], ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeCode' => '95589', + 'abilityTreeNodes' => ['FEATUREhbr9ZUQY7'], + ], + 'parameters' => [ [ - 'name' => 'CheckAccess', + 'name' => 'PlanId', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to validate the differential backup and log backup. Valid values: true and false. If you set the value to true, HBR checks whether the required differential backup and log backup are available before the restore job starts. If the differential backup or log backup is unavailable, HBR does not start the restore job.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - ], + 'schema' => ['description' => 'The ID of the backup plan.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'title' => '', 'example' => 'plan-*********************'], ], [ - 'name' => 'UseDelta', + 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to use a differential backup or an incremental backup to restore the database. Valid values: true and false. If you want to use a differential backup or an incremental backup to restore the database, set the value to true. If you set the value to false, HBR uses a log backup to restore the database.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => 'The ID of the backup vault.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'title' => '', 'example' => 'v-*********************'], ], [ - 'name' => 'SidAdmin', + 'name' => 'SourceType', 'in' => 'query', - 'schema' => [ - 'description' => 'The SID admin account that is created by SAP HANA.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'DB', - ], + 'schema' => ['description' => 'The type of the data source. Valid values:'."\n" + ."\n" + .'- **ECS\\_FILE**: Backs up ECS files.'."\n" + ."\n" + .'- **OSS**: Backs up Alibaba Cloud OSS.'."\n" + ."\n" + .'- **NAS**: Backs up Alibaba Cloud NAS.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'ECS_FILE'], ], [ - 'name' => 'MasterClientId', + 'name' => 'Edition', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the client where the primary node of the SAP HANA resides.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'c-000ii8tzv**********', - ], + 'schema' => ['type' => 'string', 'title' => '', 'description' => 'The edition. Valid values are BASIC and STANDARD. The default value is STANDARD.', 'required' => false, 'example' => 'STANDARD'], ], ], 'responses' => [ @@ -12150,101 +9369,77 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => 'EEC65C22-2152-5E31-8AD6-D6CBF1BFF49F', - ], - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'RestoreId' => [ - 'description' => 'The ID of the restore job.'."\n", - 'type' => 'string', - 'example' => 'hr-000fb9bz190p1rse6jwv', - ], + 'Code' => ['description' => 'The response code. A value of 200 indicates success.', 'type' => 'string', 'title' => '', 'example' => '200'], + 'Message' => ['description' => 'The response message. If the call is successful, \\`successful\\` is returned. If the call fails, an error message is returned.', 'type' => 'string', 'title' => '', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'title' => '', 'example' => 'true'], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"EEC65C22-2152-5E31-8AD6-D6CBF1BFF49F\\",\\n \\"Success\\": true,\\n \\"RestoreId\\": \\"hr-000fb9bz190p1rse6jwv\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateHanaRestoreResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>EEC65C22-2152-5E31-8AD6-D6CBF1BFF49F</RequestId>\\n <Success>true</Success>\\n <RestoreId>hr-000fb9bz190p1rse6jwv</RestoreId>\\n</CreateHanaRestoreResponse>","errorExample":""}]', - 'title' => 'CreateHanaRestore', - 'summary' => 'Creates a restore job for an SAP HANA database.', - 'description' => 'If you call this operation to restore a database, the database is restored to a specified state. Proceed with caution. For more information, see [Restore databases to an SAP HANA instance](~~101178~~).'."\n", - ], - 'DeleteHanaBackupPlan' => [ - 'methods' => [ - 'post', - 'get', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'EnableBackupPlan', + 'description' => 'If the call is successful, the backup plan is enabled. The plan then executes backups according to its policy. In the response of the DescribeBackupPlans operation, the value of the Disabled parameter is false.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'EnableBackupPlan'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:EnableBackupPlan', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'EnableHanaBackupPlan' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', - 'systemTags' => [ - 'operationType' => 'delete', - ], + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'v-0007o******1ssno', - ], + 'schema' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'required' => true, 'example' => 'v-00030j3c******sn'], ], [ 'name' => 'ClusterId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the SAP HANA instance.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cl-000br3******0ooy2', - ], + 'schema' => ['description' => 'The ID of the SAP HANA instance.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cl-0001zfcn******0pr3'], ], [ 'name' => 'PlanId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup plan.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'pl-00035lc8pwp1azdf3qku', - ], + 'schema' => ['description' => 'The ID of the backup plan.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'plan-*********************'], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the resource group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rg-acfm4ebtpkzx7zy', - ], + 'schema' => ['description' => 'The ID of the resource group.'."\n", 'type' => 'string', 'required' => false, 'example' => 'rg-acfm4ebtpkzx7zy'], ], ], 'responses' => [ @@ -12252,99 +9447,91 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '071E4789-6256-526B-B22E-2A9CDDB9EB21', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], ], 'description' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"071E4789-6256-526B-B22E-2A9CDDB9EB21\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteHanaBackupPlanResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>071E4789-6256-526B-B22E-2A9CDDB9EB21</RequestId>\\n <Success>true</Success>\\n</DeleteHanaBackupPlanResponse>","errorExample":""}]', - 'title' => 'DeleteHanaBackupPlan', - 'summary' => 'Deletes an SAP HANA backup plan.', - ], - 'DeleteHanaInstance' => [ - 'methods' => [ - 'post', - 'get', + 'title' => 'EnableHanaBackupPlan', + 'summary' => 'Enables an SAP HANA backup plan.', + 'description' => 'To disable the backup plan again, call the DisableHanaBackupPlan operation.'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'EnableHanaBackupPlan'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:EnableHanaBackupPlan', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<EnableHanaBackupPlanResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <Success>true</Success>\\n</EnableHanaBackupPlanResponse>","errorExample":""}]', + ], + 'ExecuteBackupPlan' => [ + 'summary' => 'Executes a backup plan.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'delete', + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeCode' => '95593', + 'abilityTreeNodes' => ['FEATUREhbr9ZUQY7'], ], 'parameters' => [ [ + 'name' => 'PlanId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the backup plan.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'title' => '', 'example' => 'plan-*********************'], + ], + [ 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'v-0008n2******ax3', - ], + 'schema' => ['description' => 'The ID of the backup vault.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'title' => '', 'example' => 'v-*********************'], ], [ - 'name' => 'ClusterId', + 'name' => 'SourceType', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the SAP HANA instance.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cl-000g4z09******9cfc', - ], + 'schema' => ['description' => 'The type of the data source. Valid values:'."\n" + ."\n" + .'- **ECS\\_FILE**: Backs up ECS files.'."\n" + ."\n" + .'- **OSS**: Backs up Alibaba Cloud OSS.'."\n" + ."\n" + .'- **NAS**: Backs up Alibaba Cloud NAS.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'ECS_FILE'], ], [ - 'name' => 'Sid', + 'name' => 'RuleId', 'in' => 'query', - 'schema' => [ - 'description' => 'The security identifier (SID) of the SAP HANA database. You must specify a valid SID. The SID must be three characters in length and start with a letter. For more information, see [How to find sid user and instance number of HANA db?](https://answers.sap.com/questions/555192/how-to-find-sid-user-and-instance-number-of-hana-d.html?)'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'HXE', - ], + 'schema' => ['description' => 'The ID of the backup rule.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'rule-0002*****ux8'], ], [ - 'name' => 'ResourceGroupId', + 'name' => 'Edition', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the resource group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rg-acfmwutpyat2kwy', - ], + 'schema' => ['type' => 'string', 'title' => '', 'description' => 'The edition. Valid values: BASIC and STANDARD. Default value: STANDARD.', 'required' => false, 'example' => 'STANDARD'], ], ], 'responses' => [ @@ -12352,226 +9539,239 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '28EAF89A-E0D8-5C04-9A1D-B373B29BCFB9', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The return code. A value of 200 indicates success.', 'type' => 'string', 'title' => '', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request is successful, \\`successful\\` is returned. If the request fails, an error message is returned.', 'type' => 'string', 'title' => '', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: successful'."\n" + ."\n" + .'- false: failed', 'type' => 'boolean', 'title' => '', 'example' => 'true'], + 'JobId' => ['description' => 'The ID of the backup job.', 'type' => 'string', 'title' => '', 'example' => 'job-*********************'], ], 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"28EAF89A-E0D8-5C04-9A1D-B373B29BCFB9\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteHanaInstanceResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>28EAF89A-E0D8-5C04-9A1D-B373B29BCFB9</RequestId>\\n <Success>true</Success>\\n</DeleteHanaInstanceResponse>","errorExample":""}]', - 'title' => 'DeleteHanaInstance', - 'summary' => 'Deletes an SAP HANA instance.', - 'description' => 'If you delete an SAP HANA instance, the existing backup data is also deleted and the running backup and restore jobs fail to be completed. Before you delete the SAP HANA instance, make sure that you no longer need the backup data of the instance and no backup or restore jobs are running for the instance. To delete an SAP HANA instance, you must specify the security identifier (SID) of the instance. The SID is three characters in length and starts with a letter. For more information, see [How to find sid user and instance number of HANA db?](https://answers.sap.com/questions/555192/how-to-find-sid-user-and-instance-number-of-hana-d.html?)'."\n", - ], - 'UninstallClient' => [ - 'methods' => [ - 'post', - 'get', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true,\\n \\"JobId\\": \\"job-*********************\\"\\n}","type":"json"}]', + 'title' => 'ExecuteBackupPlan', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ExecuteBackupPlan'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:ExecuteBackupPlan', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'ExecutePolicyV2' => [ + 'summary' => 'Execute a policy for one or all bound data sources.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'delete', - 'abilityTreeCode' => '95661', - 'abilityTreeNodes' => [ - 'FEATUREhbrI97IXK', - ], + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeCode' => '163243', + 'abilityTreeNodes' => ['FEATUREhbr4JQRTT'], ], 'parameters' => [ [ - 'name' => 'VaultId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 'v-0008n2q******ax3', - ], + 'name' => 'PolicyId', + 'in' => 'formData', + 'schema' => ['description' => 'Policy ID.', 'type' => 'string', 'required' => true, 'example' => 'po-000************hky', 'title' => ''], ], [ - 'name' => 'ClientId', + 'name' => 'DataSourceId', + 'in' => 'formData', + 'schema' => ['description' => 'Data source ID.', 'type' => 'string', 'required' => false, 'example' => 'i-bp1************dtv', 'title' => ''], + ], + [ + 'name' => 'SourceType', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the HBR client.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'c-000iuqo******zi3rn', - ], + 'schema' => ['description' => 'Data source type, with the value range as follows:'."\n" + ."\n" + .'- **UDM_ECS**: Represents ECS full machine backup.', 'type' => 'string', 'required' => false, 'example' => 'UDM_ECS', 'title' => ''], ], [ - 'name' => 'ResourceGroupId', + 'name' => 'RuleId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the resource group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rg-acfm3erpwweavki', - ], + 'schema' => ['description' => 'Rule ID, limited to executing rules of **RuleType** **BACKUP**.', 'type' => 'string', 'required' => true, 'example' => 'rule-0002*****ux8', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => '', + 'description' => 'ExecutePolicyResponse', 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '048A2164-3732-5DF5-88B5-F97FA56DAEB1', - ], - 'TaskId' => [ - 'description' => 'The ID of the asynchronous job. You can call the DescribeTask operation to query the execution result of an asynchronous job.'."\n", - 'type' => 'string', - 'example' => 't-0009qs5qcnvuvqrl2mxl', - ], - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: Success'."\n" + .'- false: Failure', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Code' => ['description' => 'Return code, 200 indicates success.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'Description of the return message, usually returns \'successful\' on success, and corresponding error messages on failure.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'RequestId' => ['description' => 'Request ID.', 'type' => 'string', 'example' => 'F4EEB401-DD21-588D-AE3B-1E835C7655E1', 'title' => ''], + 'JobId' => ['description' => 'Backup job ID.', 'type' => 'string', 'example' => 'job-*********************', 'title' => ''], ], + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"048A2164-3732-5DF5-88B5-F97FA56DAEB1\\",\\n \\"TaskId\\": \\"t-0009qs5qcnvuvqrl2mxl\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UninstallClientResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>048A2164-3732-5DF5-88B5-F97FA56DAEB1</RequestId>\\n <TaskId>t-0009qs5qcnvuvqrl2mxl</TaskId>\\n <Success>true</Success>\\n</UninstallClientResponse>","errorExample":""}]', - 'title' => 'UninstallClient', - 'summary' => 'Uninstalls an HBR client.', - 'description' => 'If you call this operation, the specified HBR client is uninstalled. To reinstall the HBR client, call the CreateClients operation.'."\n", - ], - 'UpdateHanaBackupPlan' => [ - 'methods' => [ - 'post', - 'get', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'Execute Policy', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ExecutePolicyV2'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:ExecutePolicyV2', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"F4EEB401-DD21-588D-AE3B-1E835C7655E1\\",\\n \\"JobId\\": \\"job-*********************\\"\\n}","type":"json"}]', + ], + 'GenerateRamPolicy' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', + 'operationType' => 'none', + 'abilityTreeCode' => '95715', + 'abilityTreeNodes' => ['FEATUREhbr3BJQCT'], + 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ - 'name' => 'VaultId', + 'name' => 'RequireBasePolicy', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'v-0000rcw******5c6', - ], + 'schema' => ['description' => 'Specifies whether to generate the policy based on an existing instance-specific rule. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ - 'name' => 'ClusterId', + 'name' => 'ActionType', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the SAP HANA instance.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cl-0005dhe******f38', - ], + 'schema' => ['description' => 'The type of policy that you want to generate. Valid values:'."\n" + ."\n" + .'* BACKUP: the permission to back up data to a backup vault'."\n" + .'* RESTORE: the permission to restore data from a backup vault'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'system'], ], [ - 'name' => 'PlanId', + 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup plan.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'pl-000br3cm4dqvmtph7cul', - ], + 'schema' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'v-0007al3m******7ao'], ], [ - 'name' => 'PlanName', + 'name' => 'ResourceGroupId', 'in' => 'query', + 'schema' => ['description' => 'The ID of the resource group.'."\n", 'type' => 'string', 'required' => false, 'example' => 'rg-*********************'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The name of the backup plan.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'plan-20211109-162411', + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], + 'PolicyDocument' => ['description' => 'The content of the policy.'."\n", 'type' => 'string', 'example' => '{ "Version": "1", "Statement": [ { "Effect": "Deny", "Action": [ "hbr:CreateRestore", "hbr:CreateRestoreJob", "hbr:CreateHanaRestore", "hbr:CreateUniRestorePlan", "hbr:CreateSqlServerRestore" ], "Resource": [ "acs:hbr:*:1178******531:vault/v-000******blx06", "acs:hbr:*:1178******531:vault/v-000******blx06/client/*" ] } ] }'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], + ], + 'description' => '', ], ], + ], + 'title' => 'GenerateRamPolicy', + 'summary' => 'Generates a Resource Access Management (RAM) policy.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GenerateRamPolicy'], + ], + ], + 'ramActions' => [ [ - 'name' => 'Schedule', - 'in' => 'query', - 'schema' => [ - 'description' => 'The backup policy. Format: `I|{startTime}|{interval}`. The system runs the first backup job at a point in time that is specified in the {startTime} parameter and the subsequent backup jobs at an interval that is specified in the {interval} parameter. The system does not run a backup job before the specified point in time. Each backup job, except the first one, starts only after the previous backup job is completed. For example, `I|1631685600|P1D` indicates that the system runs the first backup job at 14:00:00 on September 15, 2021 and the subsequent backup jobs once a day.'."\n" - ."\n" - .'* startTime: the time at which the system starts to run a backup job. The time follows the UNIX time format. Unit: seconds.'."\n" - .'* interval: the interval at which the system runs a backup job. The interval follows the ISO 8601 standard. For example, PT1H indicates an interval of 1 hour. P1D indicates an interval of one day.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'I|1602673264|P1D', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'hbr:GenerateRamPolicy', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PolicyDocument\\": \\"{ \\\\\\"Version\\\\\\": \\\\\\"1\\\\\\", \\\\\\"Statement\\\\\\": [ { \\\\\\"Effect\\\\\\": \\\\\\"Deny\\\\\\", \\\\\\"Action\\\\\\": [ \\\\\\"hbr:CreateRestore\\\\\\", \\\\\\"hbr:CreateRestoreJob\\\\\\", \\\\\\"hbr:CreateHanaRestore\\\\\\", \\\\\\"hbr:CreateUniRestorePlan\\\\\\", \\\\\\"hbr:CreateSqlServerRestore\\\\\\" ], \\\\\\"Resource\\\\\\": [ \\\\\\"acs:hbr:*:1178******531:vault/v-000******blx06\\\\\\", \\\\\\"acs:hbr:*:1178******531:vault/v-000******blx06/client/*\\\\\\" ] } ] }\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GenerateRamPolicyResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <PolicyDocument>{ \\"Version\\": \\"1\\", \\"Statement\\": [ { \\"Effect\\": \\"Deny\\", \\"Action\\": [ \\"hbr:CreateRestore\\", \\"hbr:CreateRestoreJob\\", \\"hbr:CreateHanaRestore\\", \\"hbr:CreateUniRestorePlan\\", \\"hbr:CreateSqlServerRestore\\" ], \\"Resource\\": [ \\"acs:hbr:*:1178******531:vault/v-000******blx06\\", \\"acs:hbr:*:1178******531:vault/v-000******blx06/client/*\\" ] } ] }</PolicyDocument>\\n <Success>true</Success>\\n</GenerateRamPolicyResponse>","errorExample":""}]', + ], + 'GetBasicStatistics' => [ + 'summary' => 'Retrieves basic statistics for Backup.', + 'path' => '', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'BackupPrefix', - 'in' => 'query', - 'schema' => [ - 'description' => 'The backup prefix.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'COMPLETE_DATA_BACKUP', - ], + 'AK' => [], ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREhbr3BJQCT'], + ], + 'parameters' => [ [ - 'name' => 'ResourceGroupId', + 'name' => 'SourceType', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the resource group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rg-acfmze36euddwjq', - ], + 'schema' => ['description' => 'The data source type. The valid value is:'."\n" + ."\n" + .'- **ECS\\_FILE**: ECS File Backup.', 'type' => 'string', 'required' => true, 'example' => 'ECS_FILE', 'title' => ''], ], ], 'responses' => [ @@ -12579,100 +9779,87 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => 'F23BCC67-09B4-582C-AE70-C813C8548DCC', + 'RequestId' => ['description' => 'The Request ID.', 'type' => 'string', 'title' => '', 'example' => 'EB526A5D-1FE2-51C1-B790-1732C1DBA969'], + 'Code' => ['description' => 'The HTTP status code. A value of 200 indicates that the request was successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The response message. If the request is successful, `successful` is returned. If the request fails, an error message is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'RegionStatistics' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'RegionId' => ['description' => 'The Region ID.', 'type' => 'string', 'example' => 'cn-shenzhen', 'title' => ''], + 'ProtectedDataSize' => ['description' => 'The backed-up data size, in bytes.'."\n" + ."\n" + .'- When `SourceType` is set to `ECS_FILE`, this parameter represents the total capacity of backed-up Cloud Disks.', 'type' => 'integer', 'format' => 'int64', 'example' => '42949672960', 'title' => ''], + 'ProtectedResourceCount' => ['description' => 'The number of backed-up resources.'."\n" + ."\n" + .'- When `SourceType` is set to `ECS_FILE`, this parameter represents the number of backed-up ECS instances.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], + ], + 'description' => 'The Backup statistics for each region.', + 'title' => '', + 'example' => '', + ], + 'description' => 'The Backup statistics for each region.', + 'title' => '', + 'example' => '', ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', + 'SourceType' => ['description' => 'The data source type. The valid value is:'."\n" + ."\n" + .'- **ECS\\_FILE**: ECS File Backup.', 'type' => 'string', 'example' => 'ECS_FILE', 'title' => ''], + 'GlobalStatistics' => [ + 'type' => 'object', + 'properties' => [ + 'ProtectedDataSize' => ['description' => 'The backed-up data size, in bytes.'."\n" + ."\n" + .'- When `SourceType` is set to `ECS_FILE`, this parameter represents the total capacity of backed-up Cloud Disks.', 'type' => 'integer', 'format' => 'int64', 'example' => '42949672960', 'title' => ''], + 'ProtectedResourceCount' => ['description' => 'The number of backed-up resources.'."\n" + ."\n" + .'- When `SourceType` is set to `ECS_FILE`, this parameter represents the number of backed-up ECS instances.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], + ], + 'description' => 'The Backup statistics for all regions.', + 'title' => '', + 'example' => '', ], ], - 'description' => '', + 'title' => '', + 'description' => 'Schema of Response', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"F23BCC67-09B4-582C-AE70-C813C8548DCC\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateHanaBackupPlanResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>F23BCC67-09B4-582C-AE70-C813C8548DCC</RequestId>\\n <Success>true</Success>\\n</UpdateHanaBackupPlanResponse>","errorExample":""}]', - 'title' => 'UpdateHanaBackupPlan', - 'summary' => 'Updates an SAP HANA backup plan.', - 'description' => '* A backup plan defines the data source, backup policy, and other configurations. After you execute a backup plan, a backup job is generated to record the backup progress and the backup result. If a backup job is completed, a backup snapshot is generated. You can use a backup snapshot to create a restore job.'."\n" - .'* You can specify only one type of data source in a backup plan.'."\n" - .'* You can specify only one interval as a backup cycle in a backup plan.'."\n" - .'* Each backup plan allows you to back up data to only one backup vault.'."\n", - ], - 'EnableHanaBackupPlan' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'GetBasicStatistics', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], + 'ramActions' => [], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EB526A5D-1FE2-51C1-B790-1732C1DBA969\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"Success\\": true,\\n \\"RegionStatistics\\": [\\n {\\n \\"RegionId\\": \\"cn-shenzhen\\",\\n \\"ProtectedDataSize\\": 42949672960,\\n \\"ProtectedResourceCount\\": 5\\n }\\n ],\\n \\"SourceType\\": \\"ECS_FILE\\",\\n \\"GlobalStatistics\\": {\\n \\"ProtectedDataSize\\": 42949672960,\\n \\"ProtectedResourceCount\\": 5\\n }\\n}","type":"json"}]', + ], + 'GetTempFileDownloadLink' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'read', 'systemTags' => [ - 'operationType' => 'update', + 'operationType' => 'get', + 'abilityTreeCode' => '146984', + 'abilityTreeNodes' => ['FEATUREhbr56LH1C', 'FEATUREhbrFWIWBG', 'FEATUREhbrAW9I1R', 'FEATUREhbrB1KQ9G', 'FEATUREhbr3BJQCT', 'FEATUREhbrAL60OZ', 'FEATUREhbr9ZUQY7'], ], 'parameters' => [ [ - 'name' => 'VaultId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'v-00030j3c******sn', - ], - ], - [ - 'name' => 'ClusterId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the SAP HANA instance.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cl-0001zfcn******0pr3', - ], - ], - [ - 'name' => 'PlanId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup plan.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'plan-*********************', - ], - ], - [ - 'name' => 'ResourceGroupId', + 'name' => 'TempFileKey', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the resource group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rg-acfm4ebtpkzx7zy', - ], + 'schema' => ['description' => 'The key that is used to download a file.'."\n", 'type' => 'string', 'required' => true, 'example' => 'temp/1797733170015112/report/r-000jdzknbp39cnf9hs99/r-000jdzknbp39cnf9hs99-total.csv'], ], ], 'responses' => [ @@ -12680,97 +9867,83 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The HTTP status code. The status code 200 indicates that the request is successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Url' => ['description' => 'The download URL of the file.'."\n", 'type' => 'string', 'example' => 'https://a-hbr-temp-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/job-0007yg2i0m6705wdhgb6_0.csv?Expires=1649406469&OSSAccessKeyId=LTAI************&Signature=26%2BgjegCrRmMDCpS5jzyG4ivKU8%3D'], + 'Message' => ['description' => 'The message that is returned. If the request is successful, a value of successful is returned. If the request fails, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], + 'Success' => ['description' => 'Indicates whether the request is successful.'."\n" + ."\n" + .'* true: The request is successful.'."\n" + .'* false: The request fails.'."\n", 'type' => 'boolean', 'example' => 'true'], ], - 'description' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<EnableHanaBackupPlanResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <Success>true</Success>\\n</EnableHanaBackupPlanResponse>","errorExample":""}]', - 'title' => 'EnableHanaBackupPlan', - 'summary' => 'Enables an SAP HANA backup plan.', - 'description' => 'To disable the backup plan again, call the DisableHanaBackupPlan operation.'."\n", - ], - 'DisableHanaBackupPlan' => [ - 'methods' => [ - 'post', - 'get', + 'title' => 'GetTempFileDownloadLink', + 'summary' => 'Obtains download links of files such as job reports.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetTempFileDownloadLink'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:GetTempFileDownloadLink', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Url\\": \\"https://a-hbr-temp-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/job-0007yg2i0m6705wdhgb6_0.csv?Expires=1649406469&OSSAccessKeyId=LTAI************&Signature=26%2BgjegCrRmMDCpS5jzyG4ivKU8%3D\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","type":"json"}]', + ], + 'InstallBackupClients' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', + 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '95625', + 'abilityTreeNodes' => ['FEATUREhbrS7MI6C'], ], 'parameters' => [ [ - 'name' => 'VaultId', + 'name' => 'InstanceIds', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'v-000f9z******vilrr', - ], + 'style' => 'json', + 'schema' => ['description' => 'The IDs of the ECS instances. You can specify a maximum of 20 instance IDs.', 'type' => 'object', 'required' => true, 'docRequired' => true, 'title' => '', 'example' => '["i-0xi5wj5*****v3j3bh2gj5"]'], ], [ - 'name' => 'ClusterId', + 'name' => 'CrossAccountType', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the SAP HANA instance.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cl-0003tu******y5oc', - ], + 'schema' => ['description' => 'The type of cross-account backup. Valid values:'."\n" + ."\n" + .'- SELF\\_ACCOUNT: Backs up data within the current account.'."\n" + ."\n" + .'- CROSS\\_ACCOUNT: Backs up data across accounts.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'CROSS_ACCOUNT'], ], [ - 'name' => 'PlanId', + 'name' => 'CrossAccountUserId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup plan.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'pl-0006o11ectqr650ceoct', - ], + 'schema' => ['description' => 'The ID of the source account that is used for cross-account backup.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'title' => '', 'example' => '16392782xxxxxx'], ], [ - 'name' => 'ResourceGroupId', + 'name' => 'CrossAccountRoleName', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the resource group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rg-acfm3erpwweavki', - ], + 'schema' => ['description' => 'The name of the RAM role that is created in the source account for cross-account backup.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'BackupRole'], ], ], 'responses' => [ @@ -12778,176 +9951,318 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => 'FFC87EC8-8126-5967-9C4D-82715F8DFC97', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', + 'Code' => ['description' => 'The return code. A value of 200 indicates that the operation is successful.', 'type' => 'string', 'title' => '', 'example' => '200'], + 'Message' => ['description' => 'The message that is returned. If the request is successful, successful is returned. If the request fails, an error message is returned.', 'type' => 'string', 'title' => '', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], + 'TaskId' => ['description' => 'The ID of the asynchronous task. Call the DescribeTask operation to query the task result.', 'type' => 'string', 'title' => '', 'example' => 't-*********************'], + 'Success' => ['description' => 'Indicates whether the request is successful.'."\n" + ."\n" + .'- true: The request is successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'title' => '', 'example' => 'true'], + 'InstanceStatuses' => [ + 'description' => 'The status of the ECS instances.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ValidInstance' => ['description' => 'Indicates whether a backup client can be installed on the ECS instance.'."\n" + ."\n" + .'- true: The backup client can be installed.'."\n" + ."\n" + .'- false: The backup client cannot be installed.', 'type' => 'boolean', 'title' => '', 'example' => 'true'], + 'InstanceId' => ['description' => 'The ID of the ECS instance.', 'type' => 'string', 'title' => '', 'example' => 'i-0xi5w***v3j3bh2gj5'], + 'ErrorCode' => ['description' => 'The error code. Valid values:'."\n" + ."\n" + .'- An empty value indicates that the operation is successful.'."\n" + ."\n" + .'- **InstanceNotExists**: The ECS instance does not exist.'."\n" + ."\n" + .'- **InstanceNotRunning**: The ECS instance is not in the Running state.'."\n" + ."\n" + .'- **CloudAssistNotRunningOnInstance**: Cloud Assistant is not available.', 'type' => 'string', 'title' => '', 'example' => 'InstanceNotExists'], + ], + 'description' => '', + 'title' => '', + ], + 'title' => '', ], ], 'description' => '', + 'title' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"FFC87EC8-8126-5967-9C4D-82715F8DFC97\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DisableHanaBackupPlanResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>FFC87EC8-8126-5967-9C4D-82715F8DFC97</RequestId>\\n <Success>true</Success>\\n</DisableHanaBackupPlanResponse>","errorExample":""}]', - 'title' => 'DisableHanaBackupPlan', - 'summary' => 'Disables an SAP HANA backup plan.', - 'description' => 'To enable the backup plan again, call the EnableHanaBackupPlan operation.'."\n", - ], - 'UpdateHanaInstance' => [ - 'methods' => [ - 'post', - 'get', + 'title' => 'InstallBackupClients', + 'summary' => 'Installs backup clients on one or more ECS instances.', + 'description' => '- This operation creates a background asynchronous task. The task uses Cloud Assistant to install backup clients on ECS instances.'."\n" + ."\n" + .'- Call the [DescribeTask](~~431265~~) operation to get the task result.'."\n" + ."\n" + .'- The task timeout is 15 minutes. After the task is created, wait 60 seconds before making the first query. Then, query the result every 30 seconds.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'InstallBackupClients'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:InstallBackupClients', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TaskId\\": \\"t-*********************\\",\\n \\"Success\\": true,\\n \\"InstanceStatuses\\": [\\n {\\n \\"ValidInstance\\": true,\\n \\"InstanceId\\": \\"i-0xi5w***v3j3bh2gj5\\",\\n \\"ErrorCode\\": \\"InstanceNotExists\\"\\n }\\n ]\\n}","type":"json"}]', + ], + 'ListProtectedResources' => [ + 'path' => '', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREhbrIF7VXM'], ], 'parameters' => [ [ - 'name' => 'VaultId', + 'name' => 'NextToken', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'v-0003v4ah******9xp', - ], + 'schema' => ['description' => 'The token to retrieve the next page of results. An empty value indicates that all results have been returned.', 'type' => 'string', 'required' => false, 'example' => 'aWQj********MCMy', 'title' => ''], ], [ - 'name' => 'ClusterId', + 'name' => 'MaxResults', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the SAP HANA instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cl-000axjt******c6j8', - ], + 'schema' => ['description' => 'The maximum number of entries to return per request.'."\n" + ."\n" + .'Valid values: 10 to 100. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'minimum' => '0', 'required' => false, 'example' => '10', 'title' => ''], ], [ - 'name' => 'HanaName', + 'name' => 'CreatedByProduct', 'in' => 'query', 'schema' => [ - 'description' => 'The name of the SAP HANA instance.'."\n", + 'description' => 'The product used to protect the resource. Valid value:'."\n" + ."\n" + .'- **BASIC**: File Backup Essential Edition.', 'type' => 'string', + 'enum' => ['BASIC'], 'required' => false, - 'example' => 'SAP-HANA-DEV', + 'example' => 'BASIC', + 'title' => '', ], ], [ - 'name' => 'Host', + 'name' => 'SourceType', 'in' => 'query', 'schema' => [ - 'description' => 'The private or internal IP address of the host where the primary node of the SAP HANA instance resides.'."\n", + 'description' => 'The data source type. Valid value:'."\n" + ."\n" + .'- **ECS\\_FILE**: ECS File Backup.', 'type' => 'string', + 'enum' => ['ECS_FILE'], 'required' => false, - 'example' => '47.100.XX.XX', + 'example' => 'ECS_FILE', + 'title' => '', ], ], [ - 'name' => 'InstanceNumber', + 'name' => 'ResourceId', 'in' => 'query', - 'schema' => [ - 'description' => 'The instance number of the SAP HANA system.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'docRequired' => true, - 'example' => '00', - ], + 'schema' => ['description' => 'The resource ID.'."\n" + ."\n" + .'- If `SourceType` is set to **ECS\\_FILE**, this parameter specifies the ECS instance ID.', 'type' => 'string', 'required' => false, 'example' => 'i-wz95************7zrd', 'title' => ''], ], [ - 'name' => 'UserName', + 'name' => 'Skip', 'in' => 'query', - 'schema' => [ - 'description' => 'The username of the SYSTEMDB database.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'admin', - ], + 'schema' => ['description' => 'The number of entries to skip in a paged query. If this value exceeds the total number of results, an empty list is returned. The value must be a multiple of `MaxResults`.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ - 'name' => 'Password', + 'name' => 'HasSnapshot', 'in' => 'query', + 'schema' => ['type' => 'boolean', 'description' => '', 'title' => '', 'example' => ''], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The password that is used to connect with the SAP HANA database.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '**********', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => 'EB09****-****-****-****-********6C38'], + 'Code' => ['description' => 'The HTTP status code. A value of `200` indicates that the request was successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The response message. Returns `successful` if the request succeeds, or an error message if it fails.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- `true`: The request was successful.'."\n" + ."\n" + .'- `false`: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'TotalCount' => ['description' => 'The total number of protected resources.', 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''], + 'ProtectedResources' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'SourceType' => ['description' => 'The type of the data source.'."\n" + ."\n" + .'- **SourceType=ECS\\_FILE**: The data source is an ECS instance.', 'type' => 'string', 'example' => 'ECS_FILE', 'title' => ''], + 'ResourceId' => ['description' => 'The resource ID.'."\n" + ."\n" + .'- **SourceType=ECS\\_FILE**: The ID of the ECS instance.', 'type' => 'string', 'example' => 'i-wz95************7zrd', 'title' => ''], + 'ResourceOwnerId' => ['description' => 'The user UID of the resource\'s owner.', 'type' => 'integer', 'format' => 'int64', 'example' => '1024********0703', 'title' => ''], + 'CreatedByProduct' => ['description' => 'The product that protects the resource. Valid value:'."\n" + ."\n" + .'- **BASIC**: ECS File Backup Essential Edition.', 'type' => 'string', 'example' => 'BASIC', 'title' => ''], + 'SnapshotCount' => ['description' => 'The number of backups.', 'type' => 'integer', 'format' => 'int64', 'example' => '30', 'title' => ''], + 'ProtectedResourceId' => ['description' => 'The ID of the protected resource.', 'type' => 'string', 'example' => 'pr-0004************gs61', 'title' => ''], + 'ProtectedDataSize' => ['description' => 'The size of the protected data, in bytes.'."\n" + ."\n" + .'- **SourceType=ECS\\_FILE**: The size of the backed-up block storage.', 'type' => 'integer', 'format' => 'int64', 'example' => '107374182400', 'title' => ''], + 'ResourceRegionId' => ['description' => 'The region ID of the resource.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], + 'BackupPlanCount' => ['description' => 'The number of backup plans.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'description' => 'The list of protected resources.', + 'title' => '', + 'example' => '', + ], + 'MaxResults' => ['description' => 'The number of entries to return on each page.'."\n" + ."\n" + .'Valid values: 10 to 100. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], + 'NextToken' => ['description' => 'The token to retrieve the next page of results. An empty value for this parameter indicates that all results have been returned.', 'type' => 'string', 'example' => 'eyJJ************MX0=', 'title' => ''], + ], + 'title' => '', + 'description' => 'The response body.', + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'ListProtectedResources', + 'summary' => 'Queries protected resources', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'ramActions' => [ [ - 'name' => 'UseSsl', - 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to connect with the SAP HANA database over Secure Sockets Layer (SSL). Valid values:'."\n" - ."\n" - .'* true: The SAP HANA database is connected over SSL.'."\n" - .'* false: The SAP HANA database is not connected over SSL.'."\n", - 'type' => 'boolean', - 'required' => true, - 'docRequired' => true, - 'example' => 'true', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'hbr:ListProtectedResources', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EB09****-****-****-****-********6C38\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"Success\\": true,\\n \\"TotalCount\\": 3,\\n \\"ProtectedResources\\": [\\n {\\n \\"SourceType\\": \\"ECS_FILE\\",\\n \\"ResourceId\\": \\"i-wz95************7zrd\\",\\n \\"ResourceOwnerId\\": 0,\\n \\"CreatedByProduct\\": \\"BASIC\\",\\n \\"SnapshotCount\\": 30,\\n \\"ProtectedResourceId\\": \\"pr-0004************gs61\\",\\n \\"ProtectedDataSize\\": 107374182400,\\n \\"ResourceRegionId\\": \\"cn-hangzhou\\",\\n \\"BackupPlanCount\\": 1\\n }\\n ],\\n \\"MaxResults\\": 10,\\n \\"NextToken\\": \\"eyJJ************MX0=\\"\\n}","type":"json"}]', + ], + 'OpenHbrService' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'ValidateCertificate', - 'in' => 'query', + 'AK' => [], + ], + [ + 'APP' => [], + ], + [ + 'PrivateKey' => [], + ], + [ + 'BearerToken' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '95631', + 'abilityTreeNodes' => ['FEATUREhbr3BJQCT'], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'Specifies whether to verify the SSL certificate of the SAP HANA database. Valid values:'."\n" - ."\n" - .'* true: The SSL certificate of the SAP HANA database is verified.'."\n" - .'* false: The SSL certificate of the SAP HANA database is not verified.'."\n", - 'type' => 'boolean', - 'required' => true, - 'docRequired' => true, - 'example' => 'false', + 'type' => 'object', + 'properties' => [ + 'OrderId' => ['description' => 'The ID of the order.', 'type' => 'string', 'example' => '215463686160696', 'title' => ''], + 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'F4A1D5F4-5055-549A-8B25-6DD23311E299', 'title' => ''], + ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], + ], + 'title' => 'OpenHbrService', + 'summary' => 'Activates Cloud Backup.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'OpenHbrService'], + ], + ], + 'ramActions' => [ [ - 'name' => 'AlertSetting', - 'in' => 'query', - 'schema' => [ - 'description' => 'The alert settings. Valid value: INHERITED, which indicates that the Cloud Backup client sends alert notifications by using the same method configured for the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'INHERITED', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:OpenHbrService', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"OrderId\\": \\"215463686160696\\",\\n \\"RequestId\\": \\"F4A1D5F4-5055-549A-8B25-6DD23311E299\\"\\n}","type":"json"}]', + ], + 'RemoveDataSource' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'ResourceGroupId', + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'abilityTreeCode' => '95636', + 'abilityTreeNodes' => ['FEATUREhbr9ZUQY7'], + ], + 'parameters' => [ + [ + 'name' => 'DataSourceId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the resource group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rg-aekzvx7d3c4kpny', - ], + 'schema' => ['description' => 'The ID of the data source.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'ds-000bz3***myv90r', 'title' => ''], ], ], 'responses' => [ @@ -12955,95 +10270,226 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => 'A6AB6D5A-9D21-5529-9335-A894FB045ED6', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The HTTP status code. A value of 200 indicates that the request was successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The message returned. If the request was successful, `successful` is returned. Otherwise, an error message is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'ED2BDBAC-***-***-***-495C96A63964', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true'."\n" + ."\n" + .'- false', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"A6AB6D5A-9D21-5529-9335-A894FB045ED6\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateHanaInstanceResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>A6AB6D5A-9D21-5529-9335-A894FB045ED6</RequestId>\\n <Success>true</Success>\\n</UpdateHanaInstanceResponse>","errorExample":""}]', - 'title' => 'UpdateHanaInstance', - 'summary' => 'Updates an SAP HANA instance.', - ], - 'UpgradeClient' => [ - 'summary' => 'Upgrades the Cloud Backup client.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', + 'title' => 'RemoveDataSource', + 'summary' => 'Deletes a data source.', + 'description' => '><warning>'."\n" + ."\n" + .'Deleting a data source can cause data loss or render related data unqueryable. Before you delete the data source, ensure that you have removed all associated backup data and backup plans.'."\n" + ."\n" + .'></warning>', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], + 'ramActions' => [], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"ED2BDBAC-***-***-***-495C96A63964\\",\\n \\"Success\\": true\\n}","type":"json"}]', + ], + 'SearchHistoricalSnapshots' => [ + 'summary' => 'Retrieves one or more historical backup snapshots that meet the specified criteria.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', + 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREhbrI97IXK', - 'FEATUREhbr3BJQCT', - 'FEATUREhbrTH4MM4', - ], + 'abilityTreeCode' => '95649', + 'abilityTreeNodes' => ['FEATUREhbr56LH1C', 'FEATUREhbrS7MI6C', 'FEATUREhbrFWIWBG', 'FEATUREhbrAW9I1R', 'FEATUREhbrB1KQ9G', 'FEATUREhbrQ3MV3B', 'FEATUREhbr3BJQCT'], ], 'parameters' => [ [ - 'name' => 'VaultId', + 'name' => 'SourceType', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'v-000djw8ci******3ic', - 'docRequired' => true, - ], + 'schema' => ['description' => 'The type of the data source. Valid values:'."\n" + ."\n" + .'- **ECS\\_FILE**: a backup snapshot of ECS files.'."\n" + ."\n" + .'- **OSS**: a backup snapshot of Alibaba Cloud OSS.'."\n" + ."\n" + .'- **NAS**: a backup snapshot of Alibaba Cloud NAS.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'title' => '', 'example' => 'ECS_FILE'], ], [ - 'name' => 'ClientId', + 'name' => 'Query', 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'description' => 'The ID of the Cloud Backup client.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'c-000boklw******63a9', + 'description' => 'The query conditions. For example:'."\n" + ."\n" + .'```'."\n" + .'['."\n" + .' {'."\n" + .' "field": "VaultId",'."\n" + .' "value": "v-0003rf9m*****qx5",'."\n" + .' "operation": "MATCH_TERM"'."\n" + .' },'."\n" + .' {'."\n" + .' "field": "InstanceId",'."\n" + .' "value": "i-bp1i20zq2*****e9368m",'."\n" + .' "operation": "MATCH_TERM"'."\n" + .' },'."\n" + .' {'."\n" + .' "field": "PlanId",'."\n" + .' "value": "plan-0005vk*****gkd1iu4f",'."\n" + .' "operation": "MATCH_TERM"'."\n" + .' },'."\n" + .' {'."\n" + .' "field": "CompleteTime",'."\n" + .' "value": "1626769913",'."\n" + .' "operation": "GREATER_THAN_OR_EQUAL"'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + ."\n" + .'- Supported fields:'."\n" + ."\n" + .' - VaultId: This parameter is required. The ID of the backup vault.'."\n" + ."\n" + .' - InstanceId: This parameter is required only when SourceType is set to ECS\\_FILE. The ID of the ECS instance.'."\n" + ."\n" + .' - Bucket: This parameter is required only when SourceType is set to OSS. The name of the OSS bucket.'."\n" + ."\n" + .' - FileSystemId: This parameter is required only when SourceType is set to NAS. The ID of the NAS file system.'."\n" + ."\n" + .' - CreateTime: This parameter is required only when SourceType is set to NAS. The time when the NAS file system was created.'."\n" + ."\n" + .' - CompleteTime: The time when the snapshot was completed.'."\n" + ."\n" + .' - PlanId: The ID of the backup plan.'."\n" + ."\n" + .'- Supported operations:'."\n" + ."\n" + .' - MATCH\\_TERM: exact match.'."\n" + ."\n" + .' - GREATER\\_THAN: greater than.'."\n" + ."\n" + .' - GREATER\\_THAN\\_OR\\_EQUAL: greater than or equal to.'."\n" + ."\n" + .' - LESS\\_THAN: less than.'."\n" + ."\n" + .' - LESS\\_THAN\\_OR\\_EQUAL: less than or equal to.'."\n" + ."\n" + .' - BETWEEN: a range. The value is a JSON array in the `[lower bound,upper bound]` format.'."\n" + ."\n" + .' - IN: in a collection. The value is an array.'."\n" + ."\n" + .' - NOT\\_IN: not in a collection. The value is an array.', + 'type' => 'array', + 'items' => ['description' => 'The query conditions. For example:'."\n" + ."\n" + .'```'."\n" + .'['."\n" + .' {'."\n" + .' "field": "VaultId",'."\n" + .' "value": "v-0003rf9m*****qx5",'."\n" + .' "operation": "MATCH_TERM"'."\n" + .' },'."\n" + .' {'."\n" + .' "field": "InstanceId",'."\n" + .' "value": "i-bp1i20zq2*****e9368m",'."\n" + .' "operation": "MATCH_TERM"'."\n" + .' },'."\n" + .' {'."\n" + .' "field": "PlanId",'."\n" + .' "value": "plan-0005vk*****gkd1iu4f",'."\n" + .' "operation": "MATCH_TERM"'."\n" + .' },'."\n" + .' {'."\n" + .' "field": "CompleteTime",'."\n" + .' "value": "1626769913",'."\n" + .' "operation": "GREATER_THAN_OR_EQUAL"'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + ."\n" + .'- Supported fields:'."\n" + ."\n" + .' - VaultId: This parameter is required. The ID of the backup vault.'."\n" + ."\n" + .' - InstanceId: This parameter is required only when SourceType is set to ECS\\_FILE. The ID of the ECS instance.'."\n" + ."\n" + .' - Bucket: This parameter is required only when SourceType is set to OSS. The name of the OSS bucket.'."\n" + ."\n" + .' - FileSystemId: This parameter is required only when SourceType is set to NAS. The ID of the NAS file system.'."\n" + ."\n" + .' - CreateTime: This parameter is required only when SourceType is set to NAS. The time when the NAS file system was created.'."\n" + ."\n" + .' - CompleteTime: The time when the snapshot was completed.'."\n" + ."\n" + .' - PlanId: The ID of the backup plan.'."\n" + ."\n" + .'- Supported operations:'."\n" + ."\n" + .' - MATCH\\_TERM: exact match.'."\n" + ."\n" + .' - GREATER\\_THAN: greater than.'."\n" + ."\n" + .' - GREATER\\_THAN\\_OR\\_EQUAL: greater than or equal to.'."\n" + ."\n" + .' - LESS\\_THAN: less than.'."\n" + ."\n" + .' - LESS\\_THAN\\_OR\\_EQUAL: less than or equal to.'."\n" + ."\n" + .' - BETWEEN: a range. The value is a JSON array in the `[lower bound,upper bound]` format.'."\n" + ."\n" + .' - IN: in a collection. The value is an array.'."\n" + ."\n" + .' - NOT\\_IN: not in a collection. The value is an array.', 'type' => 'any', 'required' => false, 'title' => '', 'example' => '[ { "field": "VaultId", "value": "v-0003rf9m17pap3ltpqx5", "operation": "MATCH_TERM" }, { "field": "InstanceId", "value": "i-bp1i20zq2wuzdie9368m", "operation": "MATCH_TERM" }, { "field": "PlanId", "value": "plan-0005vkqhpesqgkd1iu4f", "operation": "MATCH_TERM" }, { "field": "CompleteTime", "value": 1626769913, "operation": "GREATER_THAN_OR_EQUAL" } ]'], + 'required' => true, 'docRequired' => true, + 'example' => '[ { "field": "VaultId", "value": "v-0003rf9m17pap3ltpqx5", "operation": "MATCH_TERM" }, { "field": "InstanceId", "value": "i-bp1i20zq2wuzdie9368m", "operation": "MATCH_TERM" }, { "field": "PlanId", "value": "plan-0005vkqhpesqgkd1iu4f", "operation": "MATCH_TERM" }, { "field": "CompleteTime", "value": 1626769913, "operation": "GREATER_THAN_OR_EQUAL" } ]', + 'title' => '', ], ], [ - 'name' => 'ResourceGroupId', + 'name' => 'Limit', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the resource group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rg-acfmy6uja5wyc2i', - ], + 'schema' => ['description' => 'The maximum number of results to return.'."\n" + .'To retrieve only the number of rows without any data, set Limit to `0`.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'title' => '', 'example' => '10'], + ], + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => ['description' => 'The token that is required to obtain the next page of snapshots.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'caeba0bbb2be03f84eb48b699f0a****'], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => ['description' => 'The field to sort by.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'CreatedTime'], + ], + [ + 'name' => 'Order', + 'in' => 'query', + 'schema' => ['description' => 'The sort order. The default value is ASC.'."\n" + ."\n" + .'- ASC: ascending'."\n" + ."\n" + .'- DESC: descending', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'ASC'], + ], + [ + 'name' => 'Edition', + 'in' => 'query', + 'schema' => ['type' => 'string', 'title' => '', 'description' => 'The edition. Valid values are BASIC and STANDARD. The default value is STANDARD.', 'required' => false, 'example' => 'BASIC'], ], ], 'responses' => [ @@ -13051,52 +10497,155 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '22D97921-16BD-547C-B175-1DC25B1DCD73', - ], - 'TaskId' => [ - 'description' => 'The ID of the asynchronous job. You can call the DescribeTask operation to query the execution result of an asynchronous job.'."\n", - 'type' => 'string', - 'example' => 't-000i97jujk0z58a2ignf', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', + 'NextToken' => ['description' => 'The token that is required to obtain the next page of snapshots.', 'type' => 'string', 'title' => '', 'example' => 'BE'], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'title' => '', 'example' => 'true'], + 'Limit' => ['description' => 'The number of historical snapshots displayed on the current page.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '10'], + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request was successful.', 'type' => 'string', 'title' => '', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request is successful, \\`successful\\` is returned. If the request fails, an error message is returned.', 'type' => 'string', 'title' => '', 'example' => 'successful'], + 'TotalCount' => ['description' => 'The total number of snapshots that meet the specified criteria.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '20'], + 'Snapshots' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Snapshot' => [ + 'description' => 'The list of historical snapshots.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => ['description' => 'The status of the backup snapshot job. Valid values:'."\n" + ."\n" + .'- **COMPLETE**: The job is successful.'."\n" + ."\n" + .'- **PARTIAL\\_COMPLETE**: The job is partially successful.'."\n" + ."\n" + .'- **FAILED**: The job failed.', 'type' => 'string', 'title' => '', 'example' => 'COMPLETE'], + 'SnapshotHash' => ['description' => 'The hash value of the snapshot.', 'type' => 'string', 'title' => '', 'example' => 'f2fe...'], + 'VaultId' => ['description' => 'The ID of the backup vault that stores the backup snapshot.', 'type' => 'string', 'title' => '', 'example' => 'v-0003rf9m17pap3ltpqx5'], + 'ActualItems' => ['description' => 'The actual number of items in the snapshot.'."\n" + ."\n" + .'> This parameter is available only for file backups.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '6'], + 'BackupType' => ['description' => 'The backup type. The value is **COMPLETE**, which indicates a full backup.', 'type' => 'string', 'title' => '', 'example' => 'COMPLETE'], + 'CreateTime' => ['description' => 'This parameter is valid only when **SourceType** is set to **NAS**. This parameter indicates the time when the file system was created. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1607436917'], + 'ActualBytes' => ['description' => 'The actual data volume of the snapshot after deduplication. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '600'], + 'SourceType' => ['description' => 'The type of the data source. Valid values:'."\n" + ."\n" + .'- **ECS\\_FILE**: a backup snapshot of ECS files.'."\n" + ."\n" + .'- **OSS**: a backup snapshot of Alibaba Cloud OSS.'."\n" + ."\n" + .'- **NAS**: a backup snapshot of Alibaba Cloud NAS.', 'type' => 'string', 'title' => '', 'example' => 'ECS_FILE'], + 'Prefix' => ['description' => 'This parameter is valid only when **SourceType** is set to **OSS**. This parameter indicates the backup prefix.', 'type' => 'string', 'title' => '', 'example' => 'example/'], + 'ClientId' => ['description' => 'This parameter is valid only when **SourceType** is set to **ECS\\_FILE**. This parameter indicates the ID of the backup client.', 'type' => 'string', 'title' => '', 'example' => 'c-*********************'], + 'BytesTotal' => ['description' => 'The total volume of the data source. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1000'], + 'ItemsDone' => ['description' => 'The number of backed up items.'."\n" + ."\n" + .'> This parameter is available only for file backups.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '8'], + 'CompleteTime' => ['description' => 'The time when the backup snapshot was completed. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1554347313'], + 'Retention' => ['description' => 'The retention period of the backup snapshot in days.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '7'], + 'CreatedTime' => ['description' => 'The time when the backup snapshot was created. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1554347313'], + 'Bucket' => ['description' => 'This parameter is valid only when **SourceType** is set to **OSS**. This parameter indicates the name of the OSS bucket.', 'type' => 'string', 'title' => '', 'example' => 'hbr-backup-oss'], + 'ParentSnapshotHash' => ['description' => 'The hash value of the parent backup snapshot.', 'type' => 'string', 'title' => '', 'example' => 'f2fe..'], + 'InstanceId' => ['description' => 'This parameter is valid only when **SourceType** is set to **ECS\\_FILE**. This parameter indicates the ID of the ECS instance.', 'type' => 'string', 'title' => '', 'example' => 'i-*********************'], + 'FileSystemId' => ['description' => 'This parameter is valid only when **SourceType** is set to **NAS**. This parameter indicates the ID of the file system.', 'type' => 'string', 'title' => '', 'example' => '005494'], + 'ErrorFile' => ['description' => 'The file that records information about backup failures. This includes information about partially completed backups.', 'type' => 'string', 'title' => '', 'example' => 'Item Error Message C:\\Program Files (x86)\\Symantec\\Symantec Endpoint Protection\\14.3.558.0000.105\\Bin\\service.dat Open: open \\\\?\\C:\\Program Files (x86)\\Symantec\\Symantec Endpoint Protection\\14.3.558.0000.105\\Bin\\service.dat: The process cannot access the file because it is being used by another process. C:\\ProgramData\\McAfee\\Agent\\data\\InstallerFiles\\172e8a3b04b7ab0fd0215f4fb7707e3744b37d83b6743b3eacb94447c74dc9af_contrib.ini Open: open \\\\?\\C:\\ProgramData\\McAfee\\Agent\\data\\InstallerFiles\\172e8a3b04b7ab0fd0215f4fb7707e3744b37d83b6743b3eacb94447c74dc9af_contrib.ini: Access is denied.'], + 'StartTime' => ['description' => 'The time when the snapshot started. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1554347313'], + 'UpdatedTime' => ['description' => 'The time when the backup snapshot was updated. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1554347313'], + 'SnapshotId' => ['description' => 'The ID of the backup snapshot.', 'type' => 'string', 'title' => '', 'example' => 's-*********************'], + 'JobId' => ['description' => 'The ID of the backup job.', 'type' => 'string', 'title' => '', 'example' => 'v-*********************'], + 'Path' => ['description' => 'This parameter is valid only when **SourceType** is set to **ECS\\_FILE**. This parameter indicates the path of the backed up files.', 'type' => 'string', 'title' => '', 'example' => '["/home"]'], + 'ItemsTotal' => ['description' => 'The total number of items in the data source.'."\n" + ."\n" + .'> This parameter is available only for file backups.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '10'], + 'BytesDone' => ['description' => 'The data volume of the incremental backup. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '800'], + 'Paths' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Path' => [ + 'description' => 'The list of paths to the backed up files.', + 'example' => '"/home"', + 'type' => 'array', + 'items' => ['description' => 'This parameter is valid only when **SourceType** is set to **NAS**. This parameter indicates the path of the backed up files.', 'type' => 'string', 'title' => '', 'example' => '"/home"'], + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'InstanceName' => ['description' => 'The name of the Tablestore instance.', 'type' => 'string', 'title' => '', 'example' => 'instancename'], + 'TableName' => ['description' => 'The name of the data table in the Tablestore instance.', 'type' => 'string', 'title' => '', 'example' => 'table2'], + 'RangeStart' => ['description' => 'The time when the backup job started. This value is a UNIX timestamp. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1642492553038'], + 'RangeEnd' => ['description' => 'The time when the backup job ended. This value is a UNIX timestamp. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1642521709966'], + 'ExpireTime' => ['description' => 'The expiration time of the snapshot. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1640334062'], + 'SourceSnapshotHash' => ['description' => 'The hash value of the snapshot before it was archived.', 'type' => 'string', 'title' => '', 'example' => 'qwer***'], + 'SourceParentSnapshotHash' => ['description' => 'The hash value of the parent snapshot before it was archived.', 'type' => 'string', 'title' => '', 'example' => 'qwer***'], + 'StorageClass' => ['description' => 'The storage class. Valid values:'."\n" + ."\n" + .'- **Standard**: Standard.'."\n" + ."\n" + .'- **Archive**: Archive.'."\n" + ."\n" + .'- **ColdArchive**: Cold Archive.', 'type' => 'string', 'title' => '', 'example' => 'STANDARD'], + 'ArchiveTime' => ['description' => 'The time when the snapshot was archived.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1640334062'], + 'UseCommonNas' => ['description' => 'Indicates whether a local NAS file system is used.', 'type' => 'boolean', 'title' => '', 'example' => 'false'], + 'Include' => ['description' => 'The backup paths that are included in the backup job.', 'type' => 'string', 'title' => '', 'example' => '[\\"/test/example_cn-huhehaote_3.txt\\", \\"/test/example_cn-huhehaote_9.txt\\", \\"/test/example_cn-huhehaote_5.txt\\", \\"/test/example_cn-huhehaote_1.txt\\", \\"/test/example_cn-huhehaote_7.txt\\"]'], + 'Exclude' => ['description' => 'The backup paths that are excluded from the backup job.', 'type' => 'string', 'title' => '', 'example' => '[\\"/test/example_cn-hangzhou_7.txt\\", \\"/test/example_cn-hangzhou_1.txt\\", \\"/test/example_cn-hangzhou_3.txt\\", \\"/test/example_cn-hangzhou_9.txt\\", \\"/test/example_cn-hangzhou_6.txt\\"]'], + 'ProtectedDataSize' => ['type' => 'integer', 'format' => 'int64', 'title' => '', 'description' => 'The amount of data on the source side that is protected. Unit: bytes. If SourceType is set to ECS\\_FILE, this parameter indicates the capacity of the protected disk.', 'example' => '42949672960'], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"22D97921-16BD-547C-B175-1DC25B1DCD73\\",\\n \\"TaskId\\": \\"t-000i97jujk0z58a2ignf\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpgradeClientResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>22D97921-16BD-547C-B175-1DC25B1DCD73</RequestId>\\n <TaskId>t-000i97jujk0z58a2ignf</TaskId>\\n <Success>true</Success>\\n</UpgradeClientResponse>","errorExample":""}]', - 'title' => 'UpgradeClient', - 'description' => 'You can call this operation to upgrade a Cloud Backup client to the latest version. After the Cloud Backup client is upgraded, the version of the client cannot be rolled back.'."\n", - ], - 'StartHanaDatabaseAsync' => [ - 'methods' => [ - 'post', - 'get', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"BE\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true,\\n \\"Limit\\": 10,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"TotalCount\\": 20,\\n \\"Snapshots\\": {\\n \\"Snapshot\\": [\\n {\\n \\"Status\\": \\"COMPLETE\\",\\n \\"SnapshotHash\\": \\"f2fe...\\",\\n \\"VaultId\\": \\"v-0003rf9m17pap3ltpqx5\\",\\n \\"ActualItems\\": 6,\\n \\"BackupType\\": \\"COMPLETE\\",\\n \\"CreateTime\\": 1607436917,\\n \\"ActualBytes\\": 600,\\n \\"SourceType\\": \\"ECS_FILE\\",\\n \\"Prefix\\": \\"example/\\",\\n \\"ClientId\\": \\"c-*********************\\",\\n \\"BytesTotal\\": 1000,\\n \\"ItemsDone\\": 8,\\n \\"CompleteTime\\": 1554347313,\\n \\"Retention\\": 7,\\n \\"CreatedTime\\": 1554347313,\\n \\"Bucket\\": \\"hbr-backup-oss\\",\\n \\"ParentSnapshotHash\\": \\"f2fe..\\",\\n \\"InstanceId\\": \\"i-*********************\\",\\n \\"FileSystemId\\": \\"005494\\",\\n \\"ErrorFile\\": \\"Item\\\\tError Message C:\\\\\\\\Program Files (x86)\\\\\\\\Symantec\\\\\\\\Symantec Endpoint Protection\\\\\\\\14.3.558.0000.105\\\\\\\\Bin\\\\\\\\service.dat\\\\tOpen: open \\\\\\\\\\\\\\\\?\\\\\\\\C:\\\\\\\\Program Files (x86)\\\\\\\\Symantec\\\\\\\\Symantec Endpoint Protection\\\\\\\\14.3.558.0000.105\\\\\\\\Bin\\\\\\\\service.dat: The process cannot access the file because it is being used by another process. C:\\\\\\\\ProgramData\\\\\\\\McAfee\\\\\\\\Agent\\\\\\\\data\\\\\\\\InstallerFiles\\\\\\\\172e8a3b04b7ab0fd0215f4fb7707e3744b37d83b6743b3eacb94447c74dc9af_contrib.ini\\\\tOpen: open \\\\\\\\\\\\\\\\?\\\\\\\\C:\\\\\\\\ProgramData\\\\\\\\McAfee\\\\\\\\Agent\\\\\\\\data\\\\\\\\InstallerFiles\\\\\\\\172e8a3b04b7ab0fd0215f4fb7707e3744b37d83b6743b3eacb94447c74dc9af_contrib.ini: Access is denied.\\",\\n \\"StartTime\\": 1554347313,\\n \\"UpdatedTime\\": 1554347313,\\n \\"SnapshotId\\": \\"s-*********************\\",\\n \\"JobId\\": \\"v-*********************\\",\\n \\"Path\\": \\"[\\\\\\"/home\\\\\\"]\\",\\n \\"ItemsTotal\\": 10,\\n \\"BytesDone\\": 800,\\n \\"Paths\\": {\\n \\"Path\\": [\\n \\"\\\\\\"/home\\\\\\"\\"\\n ]\\n },\\n \\"InstanceName\\": \\"instancename\\",\\n \\"TableName\\": \\"table2\\",\\n \\"RangeStart\\": 1642492553038,\\n \\"RangeEnd\\": 1642521709966,\\n \\"ExpireTime\\": 1640334062,\\n \\"SourceSnapshotHash\\": \\"qwer***\\",\\n \\"SourceParentSnapshotHash\\": \\"qwer***\\",\\n \\"StorageClass\\": \\"STANDARD\\",\\n \\"ArchiveTime\\": 1640334062,\\n \\"UseCommonNas\\": false,\\n \\"Include\\": \\"[\\\\\\\\\\\\\\"/test/example_cn-huhehaote_3.txt\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"/test/example_cn-huhehaote_9.txt\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"/test/example_cn-huhehaote_5.txt\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"/test/example_cn-huhehaote_1.txt\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"/test/example_cn-huhehaote_7.txt\\\\\\\\\\\\\\"]\\",\\n \\"Exclude\\": \\"[\\\\\\\\\\\\\\"/test/example_cn-hangzhou_7.txt\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"/test/example_cn-hangzhou_1.txt\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"/test/example_cn-hangzhou_3.txt\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"/test/example_cn-hangzhou_9.txt\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"/test/example_cn-hangzhou_6.txt\\\\\\\\\\\\\\"]\\",\\n \\"ProtectedDataSize\\": 42949672960\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'SearchHistoricalSnapshots', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'SearchHistoricalSnapshots'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:SearchHistoricalSnapshots', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'StartHanaDatabaseAsync' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -13106,41 +10655,23 @@ 'systemTags' => [ 'operationType' => 'update', 'abilityTreeCode' => '95654', - 'abilityTreeNodes' => [ - 'FEATUREhbrI97IXK', - ], + 'abilityTreeNodes' => ['FEATUREhbrI97IXK'], ], 'parameters' => [ [ 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'v-0000hrh******vhr3i', - ], + 'schema' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'required' => true, 'example' => 'v-0000hrh******vhr3i'], ], [ 'name' => 'ClusterId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the SAP HANA instance.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cl-000a9ipe******sme', - ], + 'schema' => ['description' => 'The ID of the SAP HANA instance.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cl-000a9ipe******sme'], ], [ 'name' => 'DatabaseName', 'in' => 'query', - 'schema' => [ - 'description' => 'The database name.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'HXE', - ], + 'schema' => ['description' => 'The database name.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'HXE'], ], ], 'responses' => [ @@ -13148,53 +10679,34 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'TaskId' => [ - 'description' => 'The ID of the job that is used to initialize the backup vault. You can call the DescribeTask operation to query the job status.'."\n", - 'type' => 'string', - 'example' => 't-000bjt479yefheij1o0x', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], + 'TaskId' => ['description' => 'The ID of the job that is used to initialize the backup vault. You can call the DescribeTask operation to query the job status.'."\n", 'type' => 'string', 'example' => 't-000bjt479yefheij1o0x'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], ], 'description' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TaskId\\": \\"t-000bjt479yefheij1o0x\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<StartHanaDatabaseAsyncResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <TaskId>t-000bjt479yefheij1o0x</TaskId>\\n <Success>true</Success>\\n</StartHanaDatabaseAsyncResponse>","errorExample":""}]', 'title' => 'StartHanaDatabaseAsync', 'summary' => 'Starts an SAP HANA database.', 'description' => 'To stop the database again, call the StopHanaDatabaseAsync operation.'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'StartHanaDatabaseAsync'], + ], + ], + 'ramActions' => [], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TaskId\\": \\"t-000bjt479yefheij1o0x\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<StartHanaDatabaseAsyncResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <TaskId>t-000bjt479yefheij1o0x</TaskId>\\n <Success>true</Success>\\n</StartHanaDatabaseAsyncResponse>","errorExample":""}]', ], 'StopHanaDatabaseAsync' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -13204,41 +10716,23 @@ 'systemTags' => [ 'operationType' => 'update', 'abilityTreeCode' => '95656', - 'abilityTreeNodes' => [ - 'FEATUREhbrI97IXK', - ], + 'abilityTreeNodes' => ['FEATUREhbrI97IXK'], ], 'parameters' => [ [ 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'v-0006wkn******gzkn', - ], + 'schema' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'required' => true, 'example' => 'v-0006wkn******gzkn'], ], [ 'name' => 'ClusterId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the SAP HANA instance.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cl-000dw******45ijer', - ], + 'schema' => ['description' => 'The ID of the SAP HANA instance.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cl-000dw******45ijer'], ], [ 'name' => 'DatabaseName', 'in' => 'query', - 'schema' => [ - 'description' => 'The database name.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'BWP', - ], + 'schema' => ['description' => 'The database name.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'BWP'], ], ], 'responses' => [ @@ -13246,135 +10740,76 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => 'CD8B903B-DE8F-5969-9414-B2C634D504D9', - ], - 'TaskId' => [ - 'description' => 'The ID of the asynchronous job. You can call the DescribeTask operation to query the execution result of an asynchronous job.'."\n", - 'type' => 'string', - 'example' => 't-0007o3vqfukgd3y5bxxr', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'CD8B903B-DE8F-5969-9414-B2C634D504D9'], + 'TaskId' => ['description' => 'The ID of the asynchronous job. You can call the DescribeTask operation to query the execution result of an asynchronous job.'."\n", 'type' => 'string', 'example' => 't-0007o3vqfukgd3y5bxxr'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], ], 'description' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"CD8B903B-DE8F-5969-9414-B2C634D504D9\\",\\n \\"TaskId\\": \\"t-0007o3vqfukgd3y5bxxr\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<StopHanaDatabaseAsyncResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>CD8B903B-DE8F-5969-9414-B2C634D504D9</RequestId>\\n <TaskId>t-0007o3vqfukgd3y5bxxr</TaskId>\\n <Success>true</Success>\\n</StopHanaDatabaseAsyncResponse>","errorExample":""}]', 'title' => 'StopHanaDatabaseAsync', 'summary' => 'Stops an SAP HANA database.', 'description' => 'To start the database again, call the StartHanaDatabaseAsync operation.'."\n", - ], - 'UpdateHanaRetentionSetting' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'StopHanaDatabaseAsync'], + ], ], + 'ramActions' => [], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"CD8B903B-DE8F-5969-9414-B2C634D504D9\\",\\n \\"TaskId\\": \\"t-0007o3vqfukgd3y5bxxr\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<StopHanaDatabaseAsyncResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>CD8B903B-DE8F-5969-9414-B2C634D504D9</RequestId>\\n <TaskId>t-0007o3vqfukgd3y5bxxr</TaskId>\\n <Success>true</Success>\\n</StopHanaDatabaseAsyncResponse>","errorExample":""}]', + ], + 'UninstallBackupClients' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', + 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', - 'abilityTreeCode' => '95682', - 'abilityTreeNodes' => [ - 'FEATUREhbrI97IXK', - ], + 'abilityTreeCode' => '95660', + 'abilityTreeNodes' => ['FEATUREhbrS7MI6C'], ], 'parameters' => [ [ - 'name' => 'VaultId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'v-000fb0v2ly******k6', - ], - ], - [ - 'name' => 'ClusterId', + 'name' => 'InstanceIds', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the SAP HANA instance.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cl-00024vyjj******srrq', - ], + 'style' => 'json', + 'schema' => ['description' => 'The IDs of Elastic Compute Service (ECS) instances. You can specify a maximum of 20 ECS instances.'."\n", 'type' => 'object', 'required' => false, 'docRequired' => true, 'example' => '["i-0xi5wj5*****v3j3bh2gj5"]', 'default' => '[]'], ], [ - 'name' => 'Schedule', + 'name' => 'ClientIds', 'in' => 'query', - 'schema' => [ - 'description' => 'The policy to update the retention period. Format: `I|{startTime}|{interval}`. The retention period is updated at an interval of {interval} starting from {startTime}.'."\n" - ."\n" - .'* startTime: the time at which the system starts to run a backup job. The time follows the UNIX time format. Unit: seconds.'."\n" - .'* interval: the interval at which the system runs a backup job. The interval follows the ISO 8601 standard. For example, PT1H indicates an interval of 1 hour, and P1D indicates an interval of one day.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'I|0|P1D', - ], + 'style' => 'json', + 'schema' => ['description' => 'The IDs of Cloud Backup clients. The sum of the number of Cloud Backup client IDs and the number of ECS instance IDs cannot exceed 20. Otherwise, an error occurs.'."\n", 'type' => 'object', 'required' => false, 'example' => '["c-*********************"]', 'default' => '[]'], ], [ - 'name' => 'RetentionDays', + 'name' => 'CrossAccountType', 'in' => 'query', - 'schema' => [ - 'description' => 'The retention period of the backup data. Unit: days. If you set the Disabled parameter to false, the backup is retained for the number of days specified by this parameter.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'docRequired' => true, - 'example' => '90', - ], + 'schema' => ['description' => 'Specifies whether data is backed up and restored within the same Alibaba Cloud account or across Alibaba Cloud accounts. Valid values:'."\n" + ."\n" + .'* SELF_ACCOUNT: Data is backed up and restored within the same Alibaba Cloud account.'."\n" + .'* CROSS_ACCOUNT: Data is backed up and restored across Alibaba Cloud accounts.'."\n", 'type' => 'string', 'required' => false, 'example' => 'CROSS_ACCOUNT'], ], [ - 'name' => 'Disabled', + 'name' => 'CrossAccountUserId', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to permanently retain the backup. Valid values:'."\n" - ."\n" - .'* true: The backup is permanently retained.'."\n" - .'* false: The backup is retained for the specified number of days.'."\n", - 'type' => 'boolean', - 'required' => true, - 'docRequired' => true, - 'example' => 'false', - ], + 'schema' => ['description' => 'The ID of the source Alibaba Cloud account that authorizes the current Alibaba Cloud account to back up and restore data across Alibaba Cloud accounts.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '129349237xxxxx'], ], [ - 'name' => 'DatabaseName', + 'name' => 'CrossAccountRoleName', 'in' => 'query', - 'schema' => [ - 'description' => 'The database name.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'SYSTEMDB', - ], + 'schema' => ['description' => 'The name of the RAM role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up and restore data across Alibaba Cloud accounts.'."\n", 'type' => 'string', 'required' => false, 'example' => 'BackupRole'], ], ], 'responses' => [ @@ -13382,171 +10817,93 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '7BEE26EB-8EE3-57A0-A9DE-5FD700165DE5', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', + 'Code' => ['description' => 'The HTTP status code. The status code 200 indicates that the request is successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The message that is returned. If the request is successful, a value of successful is returned. If the request fails, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], + 'TaskId' => ['description' => 'The ID of the asynchronous job. You can call the DescribeTask operation to query the execution result of the asynchronous job.'."\n", 'type' => 'string', 'example' => 't-*********************'], + 'Success' => ['description' => 'Indicates whether the request is successful.'."\n" + ."\n" + .'* true: The request is successful.'."\n" + .'* false: The request fails.'."\n", 'type' => 'boolean', 'example' => 'true'], + 'InstanceStatuses' => [ + 'description' => 'The status of the ECS instance.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ValidInstance' => ['description' => 'Indicates whether a backup client can be installed on the ECS instance.'."\n" + ."\n" + .'* true: A backup client can be installed on the ECS instance.'."\n" + .'* false: A backup client cannot be installed on the ECS instance.'."\n", 'type' => 'boolean', 'example' => 'true'], + 'InstanceId' => ['description' => 'The ID of the ECS instance.'."\n", 'type' => 'string', 'example' => 'i-0xi5w***v3j3bh2gj5'], + 'ErrorCode' => ['description' => 'The error code. Valid values:'."\n" + ."\n" + .'* If the value is empty, the request is successful.'."\n" + .'* **InstanceNotExists**: The ECS instance does not exist.'."\n" + .'* **InstanceNotRunning**: The ECS instance is not running.'."\n" + .'* **CloudAssistNotRunningOnInstance**: Cloud Assistant is unavailable.'."\n", 'type' => 'string', 'example' => 'InstanceNotExists'], + ], + ], ], ], - 'description' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"7BEE26EB-8EE3-57A0-A9DE-5FD700165DE5\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateHanaRetentionSettingResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>7BEE26EB-8EE3-57A0-A9DE-5FD700165DE5</RequestId>\\n <Success>true</Success>\\n</UpdateHanaRetentionSettingResponse>","errorExample":""}]', - 'title' => 'UpdateHanaRetentionSetting', - 'summary' => 'Updates the backup retention period of an SAP HANA database.', - 'description' => '* If you want to update the backup parameters of a database, you can call the UpdateHanaBackupSetting operation.'."\n" - .'* Cloud Backup deletes the expired catalogs and data that are related to Backint and file backup. The deleted catalogs and data cannot be restored. We recommend that you set the retention period based on your business requirements.'."\n", - ], - 'UpdateHanaBackupSetting' => [ - 'methods' => [ - 'post', - 'get', + 'title' => 'UninstallBackupClients', + 'summary' => 'Uninstalls a Cloud Backup client from one or more Elastic Compute Service (ECS) instance.', + 'description' => '* This operation creates an asynchronous job at the backend and calls Cloud Assistant to uninstall a backup client from an ECS instance.'."\n" + .'* You can call the DescribeTask operation to query the execution result of an asynchronous job.'."\n" + .'* The timeout period of an asynchronous job is 15 minutes. We recommend that you call the DescribeTask operation to run the first query 30 seconds after you call the UninstallBackupClients operation to uninstall backup clients. Then, run the next queries at an interval of 30 seconds.'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UninstallBackupClients'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:UninstallBackupClients', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TaskId\\": \\"t-*********************\\",\\n \\"Success\\": true,\\n \\"InstanceStatuses\\": [\\n {\\n \\"ValidInstance\\": true,\\n \\"InstanceId\\": \\"i-0xi5w***v3j3bh2gj5\\",\\n \\"ErrorCode\\": \\"InstanceNotExists\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<UninstallBackupClientsResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <TaskId>t-*********************</TaskId>\\n <Success>true</Success>\\n <InstanceStatuses>\\n <ValidInstance>true</ValidInstance>\\n <InstanceId>i-0xi5w***v3j3bh2gj5</InstanceId>\\n <ErrorCode>InstanceNotExists</ErrorCode>\\n </InstanceStatuses>\\n</UninstallBackupClientsResponse>","errorExample":""}]', + ], + 'UninstallClient' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'systemTags' => [ - 'operationType' => 'update', + 'operationType' => 'delete', + 'abilityTreeCode' => '95661', + 'abilityTreeNodes' => ['FEATUREhbrI97IXK'], ], 'parameters' => [ [ 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'v-0005n******rluw5', - ], - ], - [ - 'name' => 'ClusterId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the SAP HANA instance.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cl-000ezvg******8znz', - ], - ], - [ - 'name' => 'DatabaseName', - 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the database.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'SYSTEMDB', - ], - ], - [ - 'name' => 'EnableAutoLogBackup', - 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to enable automatic log backup. Valid values:'."\n" - ."\n" - .'* **true**: enables automatic log backup.'."\n" - .'* **false**: disables automatic log backup.'."\n", - 'type' => 'boolean', - 'required' => true, - 'docRequired' => true, - 'example' => 'true', - ], + 'schema' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'v-0008n2q******ax3'], ], [ - 'name' => 'DataBackupParameterFile', - 'in' => 'query', - 'schema' => [ - 'description' => 'The configuration file for data backup.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '/usr/sap/SID/SYS/global/hdb/opt/hdbconfig/param', - ], - ], - [ - 'name' => 'LogBackupParameterFile', - 'in' => 'query', - 'schema' => [ - 'description' => 'The configuration file for log backup.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '/usr/sap/SID/SYS/global/hdb/opt/hdbconfig/param', - ], - ], - [ - 'name' => 'LogBackupUsingBackint', - 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to use Backint to back up logs. Valid values:'."\n" - ."\n" - .'* true: Backint is used to back up logs.'."\n" - .'* false: Backint is not used to back up logs.'."\n", - 'type' => 'boolean', - 'required' => true, - 'docRequired' => true, - 'example' => 'true', - ], - ], - [ - 'name' => 'LogBackupTimeout', + 'name' => 'ClientId', 'in' => 'query', - 'schema' => [ - 'description' => 'The interval at which logs are backed up. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '900', - ], + 'schema' => ['description' => 'The ID of the HBR client.'."\n", 'type' => 'string', 'required' => true, 'example' => 'c-000iuqo******zi3rn'], ], [ - 'name' => 'CatalogBackupUsingBackint', + 'name' => 'ResourceGroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to use Backint to back up catalogs. Valid values:'."\n" - ."\n" - .'* true: Backint is used to back up catalogs.'."\n" - .'* false: Backint is not used to back up catalogs.'."\n", - 'type' => 'boolean', - 'required' => true, - 'docRequired' => true, - 'example' => 'true', - ], - ], - [ - 'name' => 'CatalogBackupParameterFile', - 'in' => 'query', - 'schema' => [ - 'description' => 'The configuration file for catalog backup.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '/usr/sap/SID/SYS/global/hdb/opt/hdbconfig/param', - ], + 'schema' => ['description' => 'The ID of the resource group.'."\n", 'type' => 'string', 'required' => false, 'example' => 'rg-acfm3erpwweavki'], ], ], 'responses' => [ @@ -13554,369 +10911,234 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '4892D474-9A4A-5298-BCD3-E46112A1EFD0', - ], - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => '048A2164-3732-5DF5-88B5-F97FA56DAEB1'], + 'TaskId' => ['description' => 'The ID of the asynchronous job. You can call the DescribeTask operation to query the execution result of an asynchronous job.'."\n", 'type' => 'string', 'example' => 't-0009qs5qcnvuvqrl2mxl'], + 'Success' => ['description' => 'Indicates whether the call is successful. Valid values:'."\n" + ."\n" + .'* true: The call is successful.'."\n" + .'* false: The call fails.'."\n", 'type' => 'boolean', 'example' => 'true'], ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"4892D474-9A4A-5298-BCD3-E46112A1EFD0\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateHanaBackupSettingResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>4892D474-9A4A-5298-BCD3-E46112A1EFD0</RequestId>\\n <Success>true</Success>\\n</UpdateHanaBackupSettingResponse>","errorExample":""}]', - 'title' => 'UpdateHanaBackupSetting', - 'summary' => 'Updates the backup parameters of an SAP HANA database.', - 'description' => 'You can call the UpdateHanaRetentionSetting operation to update the backup retention period of a database.'."\n", - ], - 'DescribeHanaBackupPlans' => [ - 'summary' => 'Queries one or more SAP HANA backup plans that meet the specified conditions.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', + 'title' => 'UninstallClient', + 'summary' => 'Uninstalls an HBR client.', + 'description' => 'If you call this operation, the specified HBR client is uninstalled. To reinstall the HBR client, call the CreateClients operation.'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UninstallClient'], + ], ], + 'ramActions' => [], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"048A2164-3732-5DF5-88B5-F97FA56DAEB1\\",\\n \\"TaskId\\": \\"t-0009qs5qcnvuvqrl2mxl\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UninstallClientResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>048A2164-3732-5DF5-88B5-F97FA56DAEB1</RequestId>\\n <TaskId>t-0009qs5qcnvuvqrl2mxl</TaskId>\\n <Success>true</Success>\\n</UninstallClientResponse>","errorExample":""}]', + ], + 'UpdateBackupPlan' => [ + 'summary' => 'Updates a backup plan.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'write', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', + 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeCode' => '95518', - 'abilityTreeNodes' => [ - 'FEATUREhbrI97IXK', - ], + 'abilityTreeCode' => '95667', + 'abilityTreeNodes' => ['FEATUREhbr9ZUQY7'], ], 'parameters' => [ [ - 'name' => 'VaultId', + 'name' => 'PlanId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'v-000i4lg4kz******ahl', - ], + 'schema' => ['description' => 'The ID of the backup plan.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'title' => '', 'example' => 'plan-20211***735'], ], [ - 'name' => 'ClusterId', + 'name' => 'PlanName', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the SAP HANA instance.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cl-000chxz******lz7bk', - ], + 'schema' => ['description' => 'The name of the backup plan.', 'type' => 'string', 'required' => false, 'maxLength' => 64, 'minLength' => 1, 'title' => '', 'example' => 'planname'], ], [ - 'name' => 'PageNumber', + 'name' => 'Schedule', 'in' => 'query', - 'schema' => [ - 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '1', - 'example' => '1', - 'default' => '1', - ], + 'schema' => ['description' => 'The backup policy. Use the `I|{startTime}|{interval}` format. This specifies that a backup job runs at a recurring interval. The `{startTime}` is when the backup starts. The `{interval}` is the time between jobs. HBR does not run overdue backup jobs. If the previous backup job is not finished, the next one does not start. For example, `I|1631685600|P1D` means the backup runs once a day, starting at 14:00:00 on September 15, 2021.'."\n" + ."\n" + .'- **startTime**: The start time of the backup. This is a UNIX timestamp in seconds.'."\n" + ."\n" + .'- **interval**: The time interval. Use the ISO 8601 standard. For example, PT1H specifies an interval of one hour. P1D specifies an interval of one day.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'I|1602673264|P1D'], ], [ - 'name' => 'PageSize', + 'name' => 'Retention', 'in' => 'query', - 'schema' => [ - 'description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '100', - 'minimum' => '1', - 'example' => '10', - 'default' => '10', - ], + 'schema' => ['description' => 'The number of days to retain backups. The minimum value is 1.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => true, 'title' => '', 'example' => '7'], ], [ - 'name' => 'DatabaseName', + 'name' => 'Prefix', 'in' => 'query', - 'schema' => [ - 'description' => 'The database name.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'SYSTEMDB', - ], + 'schema' => ['description' => 'This parameter is required only when **SourceType** is set to **OSS**. This parameter specifies the prefix of objects to back up. After you specify a prefix, only objects that match the prefix are backed up.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'oss-prefix'], ], [ - 'name' => 'ResourceGroupId', + 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the resource group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rg-acfmvywqfey5njq', - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => 'F029C1C7-26B6-5ADD-A73E-D85CCD7C73A9', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'PageNumber' => [ - 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'PageSize' => [ - 'description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'TotalCount' => [ - 'description' => 'The total number of entries returned.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '6', - ], - 'HanaBackupPlans' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'HanaBackupPlan' => [ - 'description' => 'The details of the backup plan.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The details of the backup plan.', - 'type' => 'object', - 'properties' => [ - 'VaultId' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'example' => 'v-000csihw82pqkd7hcjws', - ], - 'BackupPrefix' => [ - 'description' => 'The backup prefix.'."\n", - 'type' => 'string', - 'example' => 'COMPLETE_DATA_BACKUP', - ], - 'Schedule' => [ - 'description' => 'The backup policy. Format: `I|{startTime}|{interval}`. The system runs the first backup job at a point in time that is specified in the {startTime} parameter and the subsequent backup jobs at an interval that is specified in the {interval} parameter. The system does not run a backup job before the specified point in time. Each backup job, except the first one, starts only after the previous backup job is completed. For example, `I|1631685600|P1D` indicates that the system runs the first backup job at 14:00:00 on September 15, 2021 and the subsequent backup jobs once a day.'."\n" - ."\n" - .'* startTime: the time at which the system starts to run a backup job. The time follows the UNIX time format. Unit: seconds.'."\n" - .'* interval: the interval at which the system runs a backup job. The interval follows the ISO 8601 standard. For example, PT1H indicates an interval of 1 hour. P1D indicates an interval of one day.'."\n", - 'type' => 'string', - 'example' => 'I|1602673264|P1D', - ], - 'DatabaseName' => [ - 'description' => 'The database name.'."\n", - 'type' => 'string', - 'example' => 'SYSTEMDB', - ], - 'BackupType' => [ - 'description' => 'The backup type. Valid values:'."\n" - ."\n" - .'* COMPLETE: full backup'."\n" - .'* INCREMENTAL: incremental backup'."\n" - .'* DIFFERENTIAL: differential backup'."\n", - 'type' => 'string', - 'example' => 'COMPLETE', - ], - 'Disabled' => [ - 'description' => 'Indicates whether the backup plan is disabled. Valid values:'."\n" - ."\n" - .'* true: The backup plan is disabled.'."\n" - .'* false: The backup plan is enabled.'."\n", - 'type' => 'boolean', - 'example' => 'false', - ], - 'PlanId' => [ - 'description' => 'The ID of the backup plan.'."\n", - 'type' => 'string', - 'example' => 'pl-0000tnyndg3ne5m4ubeu', - ], - 'ClusterId' => [ - 'description' => 'The ID of the SAP HANA instance.'."\n", - 'type' => 'string', - 'example' => 'cl-0002scknka*****', - ], - 'PlanName' => [ - 'description' => 'The name of the backup plan.'."\n", - 'type' => 'string', - 'example' => 'plan-20220118-141153', - ], - 'BusinessStatus' => [ - 'title' => '业务状态', - 'type' => 'string', - ], - ], - ], - ], - ], - ], - ], - 'description' => '', - ], + 'schema' => ['description' => 'The ID of the backup repository.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'title' => '', 'example' => 'v-0006******q'], ], - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"F029C1C7-26B6-5ADD-A73E-D85CCD7C73A9\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 6,\\n \\"HanaBackupPlans\\": {\\n \\"HanaBackupPlan\\": [\\n {\\n \\"VaultId\\": \\"v-000csihw82pqkd7hcjws\\",\\n \\"BackupPrefix\\": \\"COMPLETE_DATA_BACKUP\\",\\n \\"Schedule\\": \\"I|1602673264|P1D\\",\\n \\"DatabaseName\\": \\"SYSTEMDB\\",\\n \\"BackupType\\": \\"COMPLETE\\",\\n \\"Disabled\\": false,\\n \\"PlanId\\": \\"pl-0000tnyndg3ne5m4ubeu\\",\\n \\"ClusterId\\": \\"cl-0002scknka*****\\",\\n \\"PlanName\\": \\"plan-20220118-141153\\",\\n \\"BusinessStatus\\": \\"ACTIVE\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeHanaBackupPlansResponse>\\n <RequestId>F029C1C7-26B6-5ADD-A73E-D85CCD7C73A9</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>6</TotalCount>\\n <HanaBackupPlans>\\n <VaultId>v-000csihw82pqkd7hcjws</VaultId>\\n <BackupPrefix>COMPLETE_DATA_BACKUP</BackupPrefix>\\n <Schedule>I|1602673264|P1D</Schedule>\\n <DatabaseName>SYSTEMDB</DatabaseName>\\n <BackupType>COMPLETE</BackupType>\\n <Disabled>false</Disabled>\\n <PlanId>pl-0000tnyndg3ne5m4ubeu</PlanId>\\n <ClusterId>cl-0002scknka*****</ClusterId>\\n <PlanName>plan-20220118-141153</PlanName>\\n </HanaBackupPlans>\\n</DescribeHanaBackupPlansResponse>","errorExample":""}]', - 'title' => 'DescribeHanaBackupPlans', - ], - 'DescribeHanaInstances' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ [ - 'AK' => [], - ], - ], - 'operationType' => 'read', - 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '95523', - 'abilityTreeNodes' => [ - 'FEATUREhbrI97IXK', + 'name' => 'Detail', + 'in' => 'query', + 'style' => 'json', + 'schema' => ['description' => 'The details of the ECS instance backup. This is a JSON string.'."\n" + ."\n" + .'- snapshotGroup: Specifies whether to use a snapshot-consistent group. This feature is available only when all disks of the instance are Enhanced Solid-State Drives (ESSDs).'."\n" + ."\n" + .'- appConsistent: Specifies whether to enable application consistency. You must also configure the preScriptPath and postScriptPath parameters.'."\n" + ."\n" + .'- preScriptPath: The path to the pre-freeze script.'."\n" + ."\n" + .'- postScriptPath: The path to the post-thaw script.', 'type' => 'object', 'required' => false, 'title' => '', 'example' => '{\\"EnableFsFreeze\\":true,\\"appConsistent\\":false,\\"postScriptPath\\":\\"\\",\\"preScriptPath\\":\\"\\",\\"snapshotGroup\\":true,\\"timeoutInSeconds\\":60}'], ], - ], - 'parameters' => [ [ - 'name' => 'VaultId', + 'name' => 'SourceType', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'v-000b0ov******6zs', - ], + 'schema' => ['description' => 'The type of the data source. Valid values:'."\n" + ."\n" + .'- **ECS\\_FILE**: Backs up ECS files.'."\n" + ."\n" + .'- **OSS**: Backs up Alibaba Cloud OSS.'."\n" + ."\n" + .'- **NAS**: Backs up Alibaba Cloud NAS.'."\n" + ."\n" + .'- **OTS**: Backs up Alibaba Cloud Tablestore.'."\n" + ."\n" + .'- **UDM\\_ECS**: Backs up an entire ECS instance.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'ECS_FILE'], ], [ - 'name' => 'ClusterId', + 'name' => 'SpeedLimit', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the SAP HANA instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cl-0001zfc******50pr3', - ], + 'schema' => ['description' => 'This parameter is required only when **SourceType** is set to **ECS\\_FILE**. This parameter specifies traffic shaping for backups. Traffic shaping helps you control backup traffic during peak business hours to avoid affecting your services. The format is `{start}|{end}|{bandwidth}`. You can specify multiple traffic shaping rules. Separate them with vertical bars (|). The time ranges of the rules cannot overlap.'."\n" + ."\n" + .'- **start**: The start hour.'."\n" + ."\n" + .'- **end**: The end hour.'."\n" + ."\n" + .'- **bandwidth**: The maximum speed. Unit: KB/s.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => '0:24:5120'], ], [ - 'name' => 'PageNumber', + 'name' => 'Include', + 'in' => 'formData', + 'schema' => ['description' => 'This parameter is required only when **SourceType** is set to **ECS\\_FILE**. This parameter specifies the paths to the files to back up. All files in the specified paths are backed up. The value can be up to 255 characters in length.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => '["/home/alice/*.pdf", "/home/bob/*.txt"]'], + ], + [ + 'name' => 'Exclude', + 'in' => 'formData', + 'schema' => ['description' => 'This parameter is required only when **SourceType** is set to **ECS\\_FILE**. This parameter specifies the paths to the files to exclude from the backup. All files in the specified paths are not backed up. The value can be up to 255 characters in length.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => '["/var", "/proc"]'], + ], + [ + 'name' => 'Options', + 'in' => 'formData', + 'schema' => ['description' => 'This parameter is required only when **SourceType** is set to **ECS\\_FILE**. This parameter specifies whether to use Volume Shadow Copy Service (VSS) to define the backup path.'."\n" + ."\n" + .'- This feature is available only for Windows ECS instances.'."\n" + ."\n" + .'- If data changes occur in the backup source, set this parameter to `["UseVSS":true]` to ensure data consistency.'."\n" + ."\n" + .'- If you enable VSS, you cannot back up multiple file directories at the same time.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => '{"UseVSS":false}'], + ], + [ + 'name' => 'UpdatePaths', 'in' => 'query', - 'schema' => [ - 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '1', - 'example' => '1', - 'default' => '1', - ], + 'schema' => ['description' => 'Specifies whether to update the backup paths if the Path parameter is empty.'."\n" + ."\n" + .'- true: Updates the backup paths based on the paths specified in this call.'."\n" + ."\n" + .'- false: Does not update the backup paths. The backup paths that were configured when the backup plan was created are used.', 'type' => 'boolean', 'required' => false, 'title' => '', 'example' => 'false'], ], [ - 'name' => 'PageSize', + 'name' => 'Path', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', + 'description' => 'The backup paths.', + 'type' => 'array', + 'items' => ['description' => 'The backup path. The value can be up to 65,536 characters in length.'."\n" + .'The following rules apply:'."\n" + ."\n" + .'- If you do not use wildcard characters (\\*), you can enter up to 20 paths.'."\n" + ."\n" + .'- If you use wildcard characters (\\*), you can enter only one path. Wildcard characters such as `/*/*` are supported.'."\n" + ."\n" + .'- Each path must be an absolute path.'."\n" + ."\n" + .'- If you use VSS, you cannot specify multiple paths, UNC paths, wildcard characters, or excluded files.'."\n" + ."\n" + .'- If you use a UNC path, you cannot use VSS, wildcard characters, or excluded files. If the backup source contains a UNC path, Windows Access Control Lists (ACLs) are not backed up.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => '["/home"]'], 'required' => false, - 'maximum' => '100', - 'minimum' => '1', - 'example' => '10', - 'default' => '10', + 'maxItems' => 20, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'Tag', + 'name' => 'Rule', 'in' => 'formData', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The tags of the SAP HANA instance.'."\n", + 'description' => 'The rules of the backup plan.', 'type' => 'array', 'items' => [ - 'description' => 'The tags of SAP HANA instance.', 'type' => 'object', 'properties' => [ - 'Key' => [ - 'description' => 'The tag key.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'ace:rm:rgld', - ], - 'Value' => [ - 'description' => 'The tag value.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rg-acfmwutpyat2kwy', - ], + 'DestinationRetention' => ['description' => 'The number of days to retain the geo-redundant backup.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'title' => '', 'example' => '7'], + 'Schedule' => ['description' => 'The backup policy. Use the I|{startTime}|{interval} format. This specifies that a backup job runs at a recurring interval. The {startTime} is when the backup starts. The {interval} is the time between jobs. HBR does not run overdue backup jobs. If the previous backup job is not finished, the next one does not start. For example, I|1631685600|P1D means the backup runs once a day, starting at 14:00:00 on September 15, 2021.'."\n" + ."\n" + .'startTime: The start time of the backup. This is a UNIX timestamp in seconds. interval: The time interval. Use the ISO 8601 standard. For example, PT1H specifies an interval of one hour. P1D specifies an interval of one day.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'I|1631685600|P1D'], + 'Disabled' => ['description' => 'Specifies whether to disable the policy.', 'type' => 'boolean', 'required' => false, 'title' => '', 'example' => 'false'], + 'Retention' => ['description' => 'The number of days to retain backups. The minimum value is 1.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'title' => '', 'example' => '7'], + 'DoCopy' => ['description' => 'Specifies whether to enable geo-redundant replication.', 'type' => 'boolean', 'required' => false, 'title' => '', 'example' => 'false'], + 'DestinationRegionId' => ['description' => 'The ID of the destination region for the geo-redundant backup.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'cn-shanghai'], + 'RuleName' => ['description' => 'The name of the policy.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'rule-test-name'], + 'BackupType' => ['description' => 'The backup type. Set the value to **COMPLETE**. This indicates a full backup.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'COMPLETE'], ], 'required' => false, + 'description' => '', + 'title' => '', + 'example' => '', ], 'required' => false, - 'maxItems' => 21, + 'maxItems' => 64, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'ResourceGroupId', + 'name' => 'OtsDetail', + 'in' => 'formData', + 'style' => 'json', + 'schema' => ['description' => 'The details of the Tablestore instance.', 'required' => false, '$ref' => '#/components/schemas/OtsDetail', 'title' => '', 'example' => ''], + ], + [ + 'name' => 'KeepLatestSnapshots', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the resource group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rg-aekz24ikcjyqjkq', - ], + 'schema' => ['description' => 'Specifies whether to permanently retain the latest backup version.'."\n" + ."\n" + .'- 0: No'."\n" + ."\n" + .'- 1: Yes', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'title' => '', 'example' => '1'], + ], + [ + 'name' => 'ChangeListPath', + 'in' => 'query', + 'schema' => ['description' => 'The configuration for the incremental file synchronization list. (This parameter is required only for file synchronization.)', 'type' => 'string', 'required' => false, 'title' => '', 'example' => '{"dataSourceId": "ds-123456789", "path": "/changelist"}'], + ], + [ + 'name' => 'Edition', + 'in' => 'query', + 'schema' => ['type' => 'string', 'title' => '', 'description' => 'The edition. Valid values are BASIC and STANDARD. The default value is STANDARD.', 'required' => false, 'example' => 'STANDARD'], ], ], 'responses' => [ @@ -13924,297 +11146,151 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '4003DD68-3C3C-5071-B4FC-631A6C1BAC1C', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'PageNumber' => [ - 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'PageSize' => [ - 'description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'TotalCount' => [ - 'description' => 'The total number of entries returned.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '21', - ], - 'Hanas' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'Hana' => [ - 'description' => 'The information about the SAP HANA instances.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The SAP HANA instance.'."\n", - 'type' => 'object', - 'properties' => [ - 'Status' => [ - 'description' => 'The status of the SAP HANA instance. Valid values:'."\n" - ."\n" - .'* INITIALIZING: The instance is being initialized.'."\n" - .'* INITIALIZED: The instance is registered.'."\n" - .'* INVALID_HANA_NODE: The instance is invalid.'."\n" - .'* INITIALIZE_FAILED: The client fails to be installed on the instance.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => 'INITIALIZED', - ], - 'Host' => [ - 'description' => 'The private or internal IP address of the host where the primary node of the SAP HANA instance resides.'."\n", - 'type' => 'string', - 'example' => '47.100.XX.XX', - ], - 'VaultId' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'example' => 'v-0000s974******1hl', - ], - 'UseSsl' => [ - 'description' => 'Indicates whether the SAP HANA instance is connected over Secure Sockets Layer (SSL). Valid values:'."\n" - ."\n" - .'* true: The SAP HANA instance is connected over SSL.'."\n" - .'* false: The SAP HANA instance is not connected over SSL.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'HanaName' => [ - 'description' => 'The name of the SAP HANA instance.'."\n", - 'type' => 'string', - 'example' => 'HANA-DEV', - ], - 'InstanceNumber' => [ - 'description' => 'The instance number of the SAP HANA system.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '00', - ], - 'ValidateCertificate' => [ - 'description' => 'Indicates whether the SSL certificate of the SAP HANA instance is verified.'."\n", - 'type' => 'boolean', - 'example' => 'false', - ], - 'AlertSetting' => [ - 'description' => 'The alert settings. Valid value: INHERITED, which indicates that the Cloud Backup client sends alert notifications by using the same method configured for the backup vault.'."\n", - 'type' => 'string', - 'example' => 'INHERITED', - ], - 'UserName' => [ - 'description' => 'The username of the SYSTEMDB database.'."\n", - 'type' => 'string', - 'example' => 'admin', - ], - 'StatusMessage' => [ - 'description' => 'The status information.'."\n", - 'type' => 'string', - 'example' => 'INSTALL_CLIENT_FAILED', - ], - 'ClusterId' => [ - 'description' => 'The ID of the SAP HANA instance.'."\n", - 'type' => 'string', - 'example' => 'cl-0004cf6g6******0yd7y', - ], - 'Tags' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'Tag' => [ - 'description' => 'The tags of the SAP HANA instance.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The tags of SAP HANA instance.', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => 'The tag key.'."\n", - 'type' => 'string', - 'example' => 'ace:rm:rgld', - ], - 'Value' => [ - 'description' => 'The tag value.'."\n", - 'type' => 'string', - 'example' => 'rg-acfmwutpyat2kwy', - ], - ], - ], - ], - ], - ], - 'ResourceGroupId' => [ - 'description' => 'The resource group ID.'."\n", - 'type' => 'string', - 'example' => 'rg-acfmvnf22m7itha', - ], - 'CrossAccountType' => [ - 'description' => 'Specifies whether data is backed up within the same Alibaba Cloud account or across Alibaba Cloud accounts. Valid values:'."\n" - ."\n" - .'* **SELF_ACCOUNT**: Data is backed up within the same Alibaba Cloud account.'."\n" - .'* **CROSS_ACCOUNT**: Data is backed up across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'example' => 'CROSS_ACCOUNT', - ], - 'CrossAccountUserId' => [ - 'description' => 'The ID of the source Alibaba Cloud account that authorizes the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '158975xxxxx4625'."\n", - ], - 'CrossAccountRoleName' => [ - 'description' => 'The name of the Resource Access Management (RAM) role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'example' => 'hbrcrossrole', - ], - ], - ], - ], - ], - ], + 'Code' => ['description' => 'The return code. A value of 200 indicates that the request was successful.', 'type' => 'string', 'title' => '', 'example' => '200'], + 'Message' => ['description' => 'The message returned. If the request is successful, \\`successful\\` is returned. If the request fails, an error message is returned.', 'type' => 'string', 'title' => '', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'title' => '', 'example' => 'true'], ], 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"4003DD68-3C3C-5071-B4FC-631A6C1BAC1C\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 21,\\n \\"Hanas\\": {\\n \\"Hana\\": [\\n {\\n \\"Status\\": 0,\\n \\"Host\\": \\"47.100.XX.XX\\",\\n \\"VaultId\\": \\"v-0000s974******1hl\\",\\n \\"UseSsl\\": true,\\n \\"HanaName\\": \\"HANA-DEV\\",\\n \\"InstanceNumber\\": 0,\\n \\"ValidateCertificate\\": false,\\n \\"AlertSetting\\": \\"INHERITED\\",\\n \\"UserName\\": \\"admin\\",\\n \\"StatusMessage\\": \\"INSTALL_CLIENT_FAILED\\",\\n \\"ClusterId\\": \\"cl-0004cf6g6******0yd7y\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"Key\\": \\"ace:rm:rgld\\",\\n \\"Value\\": \\"rg-acfmwutpyat2kwy\\"\\n }\\n ]\\n },\\n \\"ResourceGroupId\\": \\"rg-acfmvnf22m7itha\\",\\n \\"CrossAccountType\\": \\"CROSS_ACCOUNT\\",\\n \\"CrossAccountUserId\\": 0,\\n \\"CrossAccountRoleName\\": \\"hbrcrossrole\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeHanaInstancesResponse>\\n <RequestId>4003DD68-3C3C-5071-B4FC-631A6C1BAC1C</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>21</TotalCount>\\n <Hanas>\\n <Host>47.100.XX.XX</Host>\\n <VaultId>v-0000s974******1hl</VaultId>\\n <UseSsl>true</UseSsl>\\n <HanaName>HANA-DEV</HanaName>\\n <InstanceNumber>0</InstanceNumber>\\n <ValidateCertificate>false</ValidateCertificate>\\n <AlertSetting>INHERITED</AlertSetting>\\n <UserName>admin</UserName>\\n <StatusMessage>INSTALL_CLIENT_FAILED</StatusMessage>\\n <ClusterId>cl-0004cf6g6******0yd7y</ClusterId>\\n <Tags>\\n <Key>ace:rm:rgld</Key>\\n <Value>rg-acfmwutpyat2kwy</Value>\\n </Tags>\\n <ResourceGroupId>rg-acfmvnf22m7itha</ResourceGroupId>\\n </Hanas>\\n</DescribeHanaInstancesResponse>","errorExample":""}]', - 'title' => 'DescribeHanaInstances', - 'summary' => 'Queries one or more SAP HANA instances that meet the specified conditions.', - ], - 'DescribeClients' => [ - 'methods' => [ - 'post', - 'get', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","type":"json"}]', + 'title' => 'UpdateBackupPlan', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateBackupPlan'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:UpdateBackupPlan', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'UpdateClientSettings' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'write', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '95507', - 'abilityTreeNodes' => [ - 'FEATUREhbrI97IXK', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '95671', + 'abilityTreeNodes' => ['FEATUREhbr9ZUQY7'], ], 'parameters' => [ [ + 'name' => 'UseHttps', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to transmit the data on the data plane over HTTPS. Valid values:'."\n" + ."\n" + .'- true: Data is transmitted over HTTPS.'."\n" + ."\n" + .'- false: Data is transmitted over HTTP.', 'type' => 'boolean', 'required' => false, 'docRequired' => true, 'example' => 'false', 'title' => ''], + ], + [ 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 'v-0001vk0z******xdyr', - ], + 'schema' => ['description' => 'The ID of the backup vault. This parameter is required for the old HBR client.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'v-*********************', 'title' => ''], ], [ 'name' => 'ClientId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the Cloud Backup client.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'c-000ed600******6b0', - ], + 'schema' => ['description' => 'The ID of the HBR client.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'c-*********************', 'title' => ''], ], [ - 'name' => 'PageNumber', + 'name' => 'DataNetworkType', 'in' => 'query', - 'schema' => [ - 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '1', - 'example' => '1', - 'default' => '1', - ], + 'schema' => ['description' => 'The type of the endpoint on the data plane. Valid values:'."\n" + ."\n" + .'- **PUBLIC**: Internet'."\n" + ."\n" + .'- **VPC**: virtual private cloud (VPC)'."\n" + ."\n" + .'- **CLASSIC**: classic network', 'type' => 'string', 'required' => false, 'example' => 'VPC', 'title' => ''], ], [ - 'name' => 'PageSize', + 'name' => 'MaxCpuCore', 'in' => 'query', - 'schema' => [ - 'description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '100', - 'minimum' => '1', - 'example' => '10', - 'default' => '10', - ], + 'schema' => ['description' => 'The number of CPU cores used by a single backup job. The value 0 indicates that the number is unlimited.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '999', 'minimum' => '0', 'example' => '1', 'title' => ''], ], [ - 'name' => 'ClientType', + 'name' => 'MaxWorker', 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the Cloud Backup client. Valid value: **ECS_AGENT**, which indicates an SAP HANA backup client.'."\n", - 'type' => 'string', - 'required' => false, - 'docRequired' => true, - 'example' => 'ECS_AGENT', - ], + 'schema' => ['description' => 'The number of concurrent backup jobs. The value 0 indicates that the number is unlimited.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '999', 'minimum' => '0', 'example' => '1', 'title' => ''], ], [ - 'name' => 'SourceType', + 'name' => 'DataProxySetting', 'in' => 'query', 'schema' => [ - 'description' => 'The type of the data source. Valid value:**HANA**, which indicates SAP HANA backup.'."\n", + 'description' => 'The proxy configuration on the data plane. Valid values:'."\n" + ."\n" + .'- **DISABLE**: The proxy is not used.'."\n" + ."\n" + .'- **USE\\_CONTROL\\_PROXY** (default): The configuration is the same as that on the control plane.'."\n" + ."\n" + .'- **CUSTOM**: The configuration is customized (HTTP).', 'type' => 'string', 'required' => false, - 'example' => 'HANA', + 'enum' => ['DISABLE', 'USE_CONTROL_PROXY', 'CUSTOM'], + 'example' => 'USE_CONTROL_PROXY', + 'title' => '', ], ], [ - 'name' => 'ClusterId', + 'name' => 'ProxyHost', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the SAP HANA instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cl-0005ni1******2l87', - ], + 'schema' => ['description' => 'The custom host IP address of the proxy server on the data plane.', 'type' => 'string', 'required' => false, 'example' => '192.168.11.100', 'title' => ''], + ], + [ + 'name' => 'ProxyPort', + 'in' => 'query', + 'schema' => ['description' => 'The custom host port of the proxy server on the data plane.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '65536', 'minimum' => '1', 'example' => '3128', 'title' => ''], + ], + [ + 'name' => 'ProxyUser', + 'in' => 'query', + 'schema' => ['description' => 'The custom username of the proxy server on the data plane.', 'type' => 'string', 'required' => false, 'example' => 'user', 'title' => ''], + ], + [ + 'name' => 'ProxyPassword', + 'in' => 'query', + 'schema' => ['description' => 'The custom password of the proxy server on the data plane.', 'type' => 'string', 'required' => false, 'example' => '******', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the resource group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rg-acfmw6bxl7o5qyq', - ], + 'schema' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'required' => false, 'example' => 'rg-*********************', 'title' => ''], + ], + [ + 'name' => 'MaxMemory', + 'in' => 'query', + 'schema' => ['description' => 'The maximum memory that can be used by the client. Unit: bytes. Only V2.13.0 and later are supported.', 'type' => 'integer', 'format' => 'int64', 'maximum' => '1099511627776', 'exclusiveMaximum' => false, 'minimum' => '0', 'required' => false, 'example' => '4096', 'title' => ''], + ], + [ + 'name' => 'AlertOnPartialComplete', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to generate alert for partially completed jobs. This parameter is valid only for on-premises file backup and ECS file backup.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], ], 'responses' => [ @@ -14222,255 +11298,86 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '17189276-465D-5EF3-8FFD-0FF51B5A41A0', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'PageNumber' => [ - 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'PageSize' => [ - 'description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'TotalCount' => [ - 'description' => 'The total number of entries returned.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '12', - ], - 'Clients' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'Client' => [ - 'description' => 'The Cloud Backup clients.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The client information.'."\n", - 'type' => 'object', - 'properties' => [ - 'Status' => [ - 'description' => 'The status of the Cloud Backup client. Valid values:'."\n" - ."\n" - .'* **REGISTERED**: The backup client is registered.'."\n" - .'* **ACTIVATED**: The backup client is activated.'."\n" - .'* **DEACTIVATED**: The backup client fails to be activated.'."\n" - .'* **INSTALLING**: The backup client is being installed.'."\n" - .'* **INSTALL_FAILED**: The backup client fails to be installed.'."\n" - .'* **NOT_INSTALLED**: The backup client is not installed.'."\n" - .'* **UPGRADING**: The backup client is being upgraded.'."\n" - .'* **UPGRADE_FAILED**: The backup client fails to be upgraded.'."\n" - .'* **UNINSTALLING**: The backup client is being uninstalled.'."\n" - .'* **UNINSTALL_FAILED**: The backup client fails to be uninstalled.'."\n" - .'* **STOPPED**: The backup client is out of service.'."\n" - .'* **UNKNOWN**: The backup client is disconnected.'."\n", - 'type' => 'string', - 'example' => 'ACTIVATED', - ], - 'VaultId' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'example' => 'v-00029mx6o******n85lg', - ], - 'UseHttps' => [ - 'description' => 'Indicates whether data is transmitted over HTTPS. Valid values:'."\n" - ."\n" - .'* true: Data is transmitted over HTTPS.'."\n" - .'* false: Data is transmitted over HTTP.'."\n", - 'type' => 'boolean', - 'example' => 'false', - ], - 'NetworkType' => [ - 'description' => 'The network type. Valid values:'."\n" - ."\n" - .'* **CLASSIC**: the classic network'."\n" - .'* **VPC**: the virtual private cloud (VPC)'."\n", - 'type' => 'string', - 'example' => 'VPC', - ], - 'ClientName' => [ - 'description' => 'The client name.'."\n", - 'type' => 'string', - 'example' => 'client-20211224-101226', - ], - 'ClientId' => [ - 'description' => 'The ID of the Cloud Backup client.'."\n", - 'type' => 'string', - 'example' => 'c-00062uu******2fgj', - ], - 'AlertSetting' => [ - 'description' => 'The alert settings. Valid value: INHERITED, which indicates that the Cloud Backup client sends alert notifications by using the same method configured for the backup vault.'."\n", - 'type' => 'string', - 'example' => 'INHERITED', - ], - 'InstanceName' => [ - 'description' => 'The name of the ECS instance.'."\n", - 'type' => 'string', - 'example' => 'swh-hbr', - ], - 'MaxVersion' => [ - 'description' => 'The maximum version number of the Cloud Backup client.'."\n", - 'type' => 'string', - 'example' => '1.11.23', - ], - 'CreatedTime' => [ - 'description' => 'The time when the Cloud Backup client was created.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1554347313', - ], - 'StatusMessage' => [ - 'description' => 'The status information.'."\n", - 'type' => 'string', - 'example' => 'HANA_NOT_SUPPORT', - ], - 'ClientType' => [ - 'description' => 'The type of the Cloud Backup client. Valid value: **ECS_AGENT**, which indicates an SAP HANA backup client.'."\n", - 'type' => 'string', - 'example' => 'ECS_AGENT', - ], - 'InstanceId' => [ - 'description' => 'The instance ID.'."\n", - 'type' => 'string', - 'example' => 'i-wz9b6wya******n8yo', - ], - 'UpdatedTime' => [ - 'description' => 'The time when the Cloud Backup client was updated. This value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1554347313', - ], - 'ClientVersion' => [ - 'description' => 'The version number of the Cloud Backup client.'."\n", - 'type' => 'string', - 'example' => '1.11.16', - ], - 'ClusterId' => [ - 'description' => 'The ID of the SAP HANA instance.'."\n", - 'type' => 'string', - 'example' => 'cl-0008c48frr******ncpk', - ], - 'HeartBeatTime' => [ - 'description' => 'The latest heartbeat time of the Cloud Backup client. This value is a UNIX timestamp. Unit: seconds.', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1554347313', - ], - ], - ], - ], - ], - ], + 'Code' => ['description' => 'The HTTP status code. The status code 200 indicates that the request was successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'- true'."\n" + ."\n" + .'- false', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"17189276-465D-5EF3-8FFD-0FF51B5A41A0\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 12,\\n \\"Clients\\": {\\n \\"Client\\": [\\n {\\n \\"Status\\": \\"ACTIVATED\\",\\n \\"VaultId\\": \\"v-00029mx6o******n85lg\\",\\n \\"UseHttps\\": false,\\n \\"NetworkType\\": \\"VPC\\",\\n \\"ClientName\\": \\"client-20211224-101226\\",\\n \\"ClientId\\": \\"c-00062uu******2fgj\\",\\n \\"AlertSetting\\": \\"INHERITED\\",\\n \\"InstanceName\\": \\"swh-hbr\\",\\n \\"MaxVersion\\": \\"1.11.23\\",\\n \\"CreatedTime\\": 1554347313,\\n \\"StatusMessage\\": \\"HANA_NOT_SUPPORT\\",\\n \\"ClientType\\": \\"ECS_AGENT\\",\\n \\"InstanceId\\": \\"i-wz9b6wya******n8yo\\",\\n \\"UpdatedTime\\": 1554347313,\\n \\"ClientVersion\\": \\"1.11.16\\",\\n \\"ClusterId\\": \\"cl-0008c48frr******ncpk\\",\\n \\"HeartBeatTime\\": 1554347313\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeClientsResponse>\\n <RequestId>17189276-465D-5EF3-8FFD-0FF51B5A41A0</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>12</TotalCount>\\n <Clients>\\n <Status>ACTIVATED</Status>\\n <VaultId>v-00029mx6o******n85lg</VaultId>\\n <UseHttps>false</UseHttps>\\n <NetworkType>VPC</NetworkType>\\n <ClientName>client-20211224-101226</ClientName>\\n <ClientId>c-00062uu******2fgj</ClientId>\\n <AlertSetting>INHERITED</AlertSetting>\\n <InstanceName>swh-hbr</InstanceName>\\n <MaxVersion>1.11.23</MaxVersion>\\n <CreatedTime>1554347313</CreatedTime>\\n <StatusMessage>HANA_NOT_SUPPORT</StatusMessage>\\n <ClientType>ECS_AGENT</ClientType>\\n <InstanceId>i-wz9b6wya******n8yo</InstanceId>\\n <UpdatedTime>1554347313</UpdatedTime>\\n <ClientVersion>1.11.16</ClientVersion>\\n <ClusterId>cl-0008c48frr******ncpk</ClusterId>\\n </Clients>\\n</DescribeClientsResponse>","errorExample":""}]', - 'title' => 'DescribeClients', - 'summary' => 'Queries one or more Cloud Backup clients that meet the specified conditions.', - 'description' => 'This operation is applicable only to SAP HANA backup. For Cloud Backup clients of other data sources, call the DescribeBackupClients operation.'."\n", - ], - 'DescribeHanaDatabases' => [ - 'methods' => [ - 'post', - 'get', + 'title' => 'UpdateClientSettings', + 'summary' => 'Updates the settings of a Cloud Backup client.', + 'description' => 'This operation applies to both legacy and new Cloud Backup clients.', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateClientSettings'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:UpdateClientSettings', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","type":"json"}]', + ], + 'UpdateContainerCluster' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', - 'systemTags' => [ - 'operationType' => 'get', - ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ - 'name' => 'VaultId', + 'name' => 'ClusterId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'v-00063fq******8xjr', - ], + 'schema' => ['description' => 'Cluster ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cc-000**************134'], ], [ - 'name' => 'ClusterId', + 'name' => 'Name', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the SAP HANA instance.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cl-000hpc******uv14x', - ], + 'schema' => ['description' => 'Cluster name.', 'type' => 'string', 'required' => false, 'example' => 'ack_pv_backup_location'], ], [ - 'name' => 'PageNumber', + 'name' => 'Description', 'in' => 'query', - 'schema' => [ - 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '1', - 'example' => '1', - 'default' => '1', - ], + 'schema' => ['description' => 'Cluster description.', 'type' => 'string', 'required' => false, 'example' => 'description ack pv backup'], ], [ - 'name' => 'PageSize', + 'name' => 'NetworkType', 'in' => 'query', - 'schema' => [ - 'description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '100', - 'minimum' => '1', - 'example' => '10', - 'default' => '10', - ], + 'schema' => ['description' => 'Network type, with possible values including:'."\n" + .'* **CLASSIC**: Classic Network.'."\n" + .'* **VPC**: Virtual Private Cloud.', 'type' => 'string', 'required' => false, 'example' => 'VPC'], ], [ - 'name' => 'ResourceGroupId', + 'name' => 'RenewToken', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the resource group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rg-acfmw2azsegupmi', - ], + 'schema' => ['description' => 'Whether to regenerate the token.', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], ], 'responses' => [ @@ -14478,281 +11385,179 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => 'DAAB6A29-34EB-5F56-962F-D5BDBFE8A5C2', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'PageNumber' => [ - 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'PageSize' => [ - 'description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'TotalCount' => [ - 'description' => 'The total number of entries returned.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '10', - ], - 'HanaDatabases' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'HanaDatabase' => [ - 'description' => 'The information about SAP HANA databases.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The information about SAP HANA databases.', - 'type' => 'object', - 'properties' => [ - 'Host' => [ - 'description' => 'The hostname.'."\n", - 'type' => 'string', - 'example' => 'izbp1jbf3zy******antqmz', - ], - 'SqlPort' => [ - 'description' => 'The port number.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '30013', - ], - 'DatabaseName' => [ - 'description' => 'The database name.'."\n", - 'type' => 'string', - 'example' => 'SYSTEMDB', - ], - 'ServiceName' => [ - 'description' => 'The service name.'."\n", - 'type' => 'string', - 'example' => 'indexserver', - ], - 'ActiveStatus' => [ - 'description' => 'Indicates whether the database is started. Valid values:'."\n" - ."\n" - .'* **YES**: The database is started.'."\n" - .'* **NO**: The database is not started.'."\n", - 'type' => 'string', - 'example' => 'YES', - ], - 'Detail' => [ - 'description' => 'The detailed information.'."\n", - 'type' => 'string', - 'example' => 'master', - ], - ], - ], - ], - ], - ], + 'TokenUpdated' => ['description' => 'Indicates whether the cluster token has been updated.', 'type' => 'boolean', 'example' => 'false'], + 'RequestId' => ['description' => 'Request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], + 'Token' => ['description' => 'Cluster token, used for registering HBR clients within the cluster.', 'type' => 'string', 'example' => 'eyJhY2NvdW*****VnZpgXQC5A=='], + 'Success' => ['description' => 'Indicates if the request was successful.'."\n" + ."\n" + .'- true: Success'."\n" + .'- false: Failure', 'type' => 'boolean', 'example' => 'true'], + 'Code' => ['description' => 'Return code, 200 indicates success.', 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'Return information.', 'type' => 'string', 'example' => 'successful'], ], - 'description' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"DAAB6A29-34EB-5F56-962F-D5BDBFE8A5C2\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 10,\\n \\"HanaDatabases\\": {\\n \\"HanaDatabase\\": [\\n {\\n \\"Host\\": \\"izbp1jbf3zy******antqmz\\",\\n \\"SqlPort\\": 30013,\\n \\"DatabaseName\\": \\"SYSTEMDB\\",\\n \\"ServiceName\\": \\"indexserver\\",\\n \\"ActiveStatus\\": \\"YES\\",\\n \\"Detail\\": \\"master\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeHanaDatabasesResponse>\\n <RequestId>DAAB6A29-34EB-5F56-962F-D5BDBFE8A5C2</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>10</TotalCount>\\n <HanaDatabases>\\n <Host>izbp1jbf3zy******antqmz</Host>\\n <SqlPort>30013</SqlPort>\\n <DatabaseName>SYSTEMDB</DatabaseName>\\n <ServiceName>indexserver</ServiceName>\\n <ActiveStatus>YES</ActiveStatus>\\n <Detail>master</Detail>\\n </HanaDatabases>\\n</DescribeHanaDatabasesResponse>","errorExample":""}]', - 'title' => 'DescribeHanaDatabases', - 'summary' => 'Queries the information about SAP HANA databases.', - 'description' => 'After you register an SAP HANA instance and install a Cloud Backup client on the instance, you can call this operation to query the information about SAP HANA databases. You can call the StartHanaDatabaseAsync operation to start a database and call the StopHanaDatabaseAsync operation to stop a database.'."\n", - ], - 'DescribeHanaRetentionSetting' => [ - 'methods' => [ - 'post', - 'get', + 'title' => 'Update Container Cluster Information', + 'summary' => 'Update container cluster information, including the container cluster name, network type, etc.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateContainerCluster'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:UpdateContainerCluster', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TokenUpdated\\": false,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Token\\": \\"eyJhY2NvdW*****VnZpgXQC5A==\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\"\\n}","type":"json"}]', + ], + 'UpdateDataSource' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', + 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', + 'operationType' => 'update', + 'abilityTreeCode' => '95676', + 'abilityTreeNodes' => ['FEATUREhbr9ZUQY7'], ], 'parameters' => [ [ - 'name' => 'VaultId', + 'name' => 'DataSourceId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", + 'schema' => ['description' => 'The ID of the data source.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'ds-0006xo****dtle', 'title' => ''], + ], + [ + 'name' => 'DataSourceName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the data source.', 'type' => 'string', 'required' => false, 'example' => 'MyLocalNas', 'title' => ''], + ], + [ + 'name' => 'Credential', + 'in' => 'query', + 'schema' => ['description' => 'The access credentials for the data source. This parameter is used for on-premises NAS data sources that use the SMB protocol, and for OSS and S3 protocol-compatible data sources. Examples:'."\n" + ."\n" + .'- On-premises NAS data source (SMB protocol):'."\n" + .' {'."\n" + .' "mountUsername": "\\*\\*\\*\\*\\*",'."\n" + .' "mountPassword": "\\*\\*\\*\\*\\*"'."\n" + .' }'."\n" + ."\n" + .'- OSS protocol-compatible data source/S3 protocol-compatible data source:'."\n" + .' {'."\n" + .' "accessKeyId": "\\*\\*\\*\\*\\*",'."\n" + .' "accessKeySecret": "\\*\\*\\*\\*\\*"'."\n" + .' }', 'type' => 'string', 'required' => false, 'example' => '{"mountUsername":"***","mountPassword":"***"}', 'title' => ''], + ], + [ + 'name' => 'ConnectionInfo', + 'in' => 'query', + 'schema' => ['description' => 'The connection information for the data source. Examples:'."\n" + ."\n" + .'- On-premises NAS data source:'."\n" + .' {'."\n" + .' "dataServerAddresses": \\['."\n" + .' {'."\n" + .' "host": "123.123.123.123",'."\n" + .' "port": "8080"'."\n" + .' }'."\n" + .' ],'."\n" + .' "sharePath": "/share",'."\n" + .' "mountOptions": "vers=3",'."\n" + .' "fileSystemType": "nfs"'."\n" + .' }'."\n" + ."\n" + .'- Intelligent Computing CPFS data source:'."\n" + .' {"vpcMountTarget":"cpfs-010wn\\*\\*\\*wy-vpc-ta\\*\\*\\*8.cn-shanghai.cpfs.aliyuncs.com","sharePath":"/"}'."\n" + ."\n" + .'- Other large-scale file system data sources:'."\n" + .' {"path":"/mnt"}', 'type' => 'string', 'required' => false, 'example' => '{'."\n" + .' "dataServerAddresses": ['."\n" + .' {'."\n" + .' "host": "123.123.123.123",'."\n" + .' "port": "8080"'."\n" + .' }'."\n" + .' ],'."\n" + .' "sharePath": "/share",'."\n" + .' "mountOptions": "vers=3",'."\n" + .' "fileSystemType": "nfs"'."\n" + .'}', 'title' => ''], + ], + [ + 'name' => 'IndexLevel', + 'in' => 'query', + 'schema' => [ + 'description' => 'The index level for data source analysis. This parameter applies only to the archive feature.'."\n" + ."\n" + .'- OFF: No index is created.'."\n" + ."\n" + .'- META: A metadata index is created.'."\n" + ."\n" + .'- ALL: A full-text index is created. (Deprecated)', + 'enumValueTitles' => ['META' => 'META', 'OFF' => 'OFF'], 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'v-000ii8t******ntrt2', + 'required' => false, + 'example' => 'META', + 'title' => '', ], ], [ 'name' => 'ClusterId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the SAP HANA instance.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cl-0002ys1i******wwtf', - ], + 'schema' => ['description' => 'The ID of the client group used to access the data source.', 'type' => 'string', 'required' => false, 'example' => 'cl-000**************hg9', 'title' => ''], ], [ - 'name' => 'DatabaseName', + 'name' => 'Schedule', 'in' => 'query', - 'schema' => [ - 'description' => 'The database name.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'C4P', - ], + 'schema' => ['description' => 'The schedule for data source analysis. This parameter applies only to the archive feature. The format is `I|{startTime}|{interval}`. This specifies a task that starts at `{startTime}` and repeats at the specified `{interval}`. `startTime` is a Unix time value in seconds. `interval` is an ISO 8601 time interval. For example, `PT1H` indicates a one-hour interval, and `P1D` indicates a one-day interval.', 'type' => 'string', 'required' => false, 'example' => 'I|1729493847|P1D', 'title' => ''], ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '280DD872-EE25-52E8-9CB4-491067173DD0', - ], - 'VaultId' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'example' => 'v-0006wkn7******zkn', - ], - 'Schedule' => [ - 'description' => 'The policy to update the retention period. Format: `I|{startTime}|{interval}`, which indicates that the retention period is updated at an interval of {interval} starting from {startTime}.'."\n" - ."\n" - .'* startTime: the time at which the system starts to run a backup job. The time follows the UNIX time format. Unit: seconds.'."\n" - .'* interval: the interval at which the system runs a backup job. The interval follows the ISO 8601 standard. For example, PT1H indicates an interval of 1 hour. P1D indicates an interval of one day.'."\n", - 'type' => 'string', - 'example' => 'I|0|P1D', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'DatabaseName' => [ - 'description' => 'The database name.'."\n", - 'type' => 'string', - 'example' => 'Q01', - ], - 'Disabled' => [ - 'description' => 'Indicates whether the backup is permanently retained. Valid values:'."\n" - ."\n" - .'* true: The backup is permanently retained.'."\n" - .'* false: The backup is retained for the specified number of days.'."\n", - 'type' => 'boolean', - 'example' => 'false', - ], - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'RetentionDays' => [ - 'description' => 'The number of days for which the backup is retained. If the value of the Disabled parameter is false, the backup is retained for the number of days specified by this parameter.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '3650', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'ClusterId' => [ - 'description' => 'The ID of the SAP HANA instance.'."\n", - 'type' => 'string', - 'example' => 'cl-0003jyv******fsku5m', - ], - ], - 'description' => '', - ], + [ + 'name' => 'SpeedLimit', + 'in' => 'query', + 'schema' => ['description' => 'The rate limiting configuration for data source analysis. This parameter applies only to the archive feature.', 'type' => 'string', 'required' => false, 'example' => '0:24:102400', 'title' => ''], ], - ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"280DD872-EE25-52E8-9CB4-491067173DD0\\",\\n \\"VaultId\\": \\"v-0006wkn7******zkn\\",\\n \\"Schedule\\": \\"I|0|P1D\\",\\n \\"Success\\": true,\\n \\"DatabaseName\\": \\"Q01\\",\\n \\"Disabled\\": false,\\n \\"Code\\": \\"200\\",\\n \\"RetentionDays\\": 3650,\\n \\"Message\\": \\"successful\\",\\n \\"ClusterId\\": \\"cl-0003jyv******fsku5m\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeHanaRetentionSettingResponse>\\n <RequestId>280DD872-EE25-52E8-9CB4-491067173DD0</RequestId>\\n <VaultId>v-0006wkn7******zkn</VaultId>\\n <Schedule>I|0|P1D</Schedule>\\n <Success>true</Success>\\n <DatabaseName>Q01</DatabaseName>\\n <Disabled>false</Disabled>\\n <Code>200</Code>\\n <RetentionDays>3650</RetentionDays>\\n <Message>successful</Message>\\n <ClusterId>cl-0003jyv******fsku5m</ClusterId>\\n</DescribeHanaRetentionSettingResponse>","errorExample":""}]', - 'title' => 'DescribeHanaRetentionSetting', - 'summary' => 'Queries the backup retention period of an SAP HANA database.', - 'description' => '* If you want to query the backup parameters of a database, you can call the DescribeHanaBackupSetting operation.'."\n" - .'* Cloud Backup deletes the expired catalogs and data that are related to Backint and file backup. The deleted catalogs and data cannot be restored. We recommend that you set the retention period based on your business requirements.'."\n", - ], - 'DescribeHanaBackupSetting' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'Options', + 'in' => 'query', + 'schema' => ['description' => 'The options for data source analysis. This parameter applies only to the archive feature.', 'type' => 'string', 'required' => false, 'example' => '{}', 'title' => ''], ], - ], - 'operationType' => 'read', - 'systemTags' => [ - 'operationType' => 'get', - ], - 'parameters' => [ [ - 'name' => 'VaultId', + 'name' => 'Include', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'v-000css******za5uyqr', - ], + 'schema' => ['description' => 'A filter to specify which files to include. This parameter applies only to the archive feature.', 'type' => 'string', 'required' => false, 'example' => '["/home/alice/", "/home/bob/"]', 'title' => ''], ], [ - 'name' => 'ClusterId', + 'name' => 'Exclude', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the SAP HANA instance.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cl-00068btz******oku', - ], + 'schema' => ['description' => 'A filter to specify which files to exclude. This parameter applies only to the archive feature.', 'type' => 'string', 'required' => false, 'example' => '["/home/alice/log/"]', 'title' => ''], ], [ - 'name' => 'DatabaseName', + 'name' => 'Path', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The name of the database.'."\n", - 'type' => 'string', + 'type' => 'array', + 'items' => ['description' => 'A path for data source analysis. This parameter applies only to the archive feature.', 'type' => 'string', 'required' => false, 'example' => '/home', 'title' => ''], 'required' => false, - 'example' => 'SYSTEMDB', + 'maxItems' => 8, + 'description' => 'A list of paths for data source analysis. This parameter applies only to the archive feature.', + 'title' => '', + 'example' => '', ], ], ], @@ -14761,318 +11566,193 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '9D0DB5BC-5071-5ADF-BCD1-14EBB0C17C54', - ], - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'HanaBackupSetting' => [ - 'description' => 'The backup settings.'."\n", - 'type' => 'object', - 'properties' => [ - 'DatabaseName' => [ - 'description' => 'The name of the database.'."\n", - 'type' => 'string', - 'example' => 'SYSTEMDB', - ], - 'LogBackupUsingBackint' => [ - 'description' => 'Indicates whether Backint is used to back up logs. Valid values:'."\n" - ."\n" - .'* true: Backint is used to back up logs.'."\n" - .'* false: Backint is not used to back up logs.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'CatalogBackupParameterFile' => [ - 'description' => 'The configuration file for catalog backup.'."\n", - 'type' => 'string', - 'example' => '/usr/sap/SID/SYS/global/hdb/opt/hdbconfig/param', - ], - 'CatalogBackupUsingBackint' => [ - 'description' => 'Indicates whether Backint is used to back up catalogs. Valid values:'."\n" - ."\n" - .'* true: Backint is used to back up catalogs.'."\n" - .'* false: Backint is not used to back up catalogs.'."\n", - 'type' => 'boolean', - 'example' => 'false', - ], - 'DataBackupParameterFile' => [ - 'description' => 'The configuration file for data backup.'."\n", - 'type' => 'string', - 'example' => '/usr/sap/SID/SYS/global/hdb/opt/hdbconfig/param', - ], - 'LogBackupTimeout' => [ - 'description' => 'The interval at which logs are backed up. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '900', - ], - 'EnableAutoLogBackup' => [ - 'description' => 'Indicates whether automatic log backup is enabled. Valid values:'."\n" - ."\n" - .'* **true**: Automatic log backup is enabled.'."\n" - .'* **false**: Automatic log backup is disabled.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'LogBackupParameterFile' => [ - 'description' => 'The configuration file for log backup.'."\n", - 'type' => 'string', - 'example' => '/usr/sap/SID/SYS/global/hdb/opt/hdbconfig/param', - ], - ], - ], + 'Code' => ['description' => 'The response code. A value of 200 indicates success.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The response message. If the request is successful, `successful` is returned. Otherwise, an error message is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '1F22A695-***-***-***-DDC66F5E5ACB', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], + 'description' => 'The response object.', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"9D0DB5BC-5071-5ADF-BCD1-14EBB0C17C54\\",\\n \\"Success\\": true,\\n \\"HanaBackupSetting\\": {\\n \\"DatabaseName\\": \\"SYSTEMDB\\",\\n \\"LogBackupUsingBackint\\": true,\\n \\"CatalogBackupParameterFile\\": \\"/usr/sap/SID/SYS/global/hdb/opt/hdbconfig/param\\",\\n \\"CatalogBackupUsingBackint\\": false,\\n \\"DataBackupParameterFile\\": \\"/usr/sap/SID/SYS/global/hdb/opt/hdbconfig/param\\",\\n \\"LogBackupTimeout\\": 900,\\n \\"EnableAutoLogBackup\\": true,\\n \\"LogBackupParameterFile\\": \\"/usr/sap/SID/SYS/global/hdb/opt/hdbconfig/param\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeHanaBackupSettingResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>9D0DB5BC-5071-5ADF-BCD1-14EBB0C17C54</RequestId>\\n <Success>true</Success>\\n <HanaBackupSetting>\\n <DatabaseName>SYSTEMDB</DatabaseName>\\n <LogBackupUsingBackint>true</LogBackupUsingBackint>\\n <CatalogBackupParameterFile>/usr/sap/SID/SYS/global/hdb/opt/hdbconfig/param</CatalogBackupParameterFile>\\n <CatalogBackupUsingBackint>false</CatalogBackupUsingBackint>\\n <DataBackupParameterFile>/usr/sap/SID/SYS/global/hdb/opt/hdbconfig/param</DataBackupParameterFile>\\n <LogBackupTimeout>900</LogBackupTimeout>\\n <EnableAutoLogBackup>true</EnableAutoLogBackup>\\n <LogBackupParameterFile>/usr/sap/SID/SYS/global/hdb/opt/hdbconfig/param</LogBackupParameterFile>\\n </HanaBackupSetting>\\n</DescribeHanaBackupSettingResponse>","errorExample":""}]', - 'title' => 'DescribeHanaBackupSetting', - 'summary' => 'Queries the backup parameters of an SAP HANA database.', - 'description' => 'If you want to query the backup retention period of a database, you can call the DescribeHanaRetentionSetting operation.'."\n", - ], - 'DescribeHanaBackupsAsync' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => 'UpdateDataSource', + 'summary' => 'Updates the data source configuration.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], + 'ramActions' => [], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"1F22A695-***-***-***-DDC66F5E5ACB\\",\\n \\"Success\\": true\\n}","type":"json"}]', + ], + 'UpdateHanaBackupPlan' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', - 'systemTags' => [ - 'operationType' => 'get', - ], + 'operationType' => 'write', + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'v-000270c******pi81', - ], + 'schema' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'required' => true, 'example' => 'v-0000rcw******5c6'], ], [ 'name' => 'ClusterId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the SAP HANA instance.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cl-00098******yuqvu', - ], + 'schema' => ['description' => 'The ID of the SAP HANA instance.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cl-0005dhe******f38'], ], [ - 'name' => 'PageNumber', + 'name' => 'PlanId', 'in' => 'query', - 'schema' => [ - 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '1', - 'example' => '1', - 'default' => '1', - ], + 'schema' => ['description' => 'The ID of the backup plan.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'pl-000br3cm4dqvmtph7cul'], ], [ - 'name' => 'PageSize', + 'name' => 'PlanName', 'in' => 'query', - 'schema' => [ - 'description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '100', - 'minimum' => '1', - 'example' => '10', - 'default' => '1', - ], + 'schema' => ['description' => 'The name of the backup plan.'."\n", 'type' => 'string', 'required' => false, 'example' => 'plan-20211109-162411'], ], [ - 'name' => 'DatabaseName', + 'name' => 'Schedule', 'in' => 'query', - 'schema' => [ - 'description' => 'The database name.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'BPD', - ], + 'schema' => ['description' => 'The backup policy. Format: `I|{startTime}|{interval}`. The system runs the first backup job at a point in time that is specified in the {startTime} parameter and the subsequent backup jobs at an interval that is specified in the {interval} parameter. The system does not run a backup job before the specified point in time. Each backup job, except the first one, starts only after the previous backup job is completed. For example, `I|1631685600|P1D` indicates that the system runs the first backup job at 14:00:00 on September 15, 2021 and the subsequent backup jobs once a day.'."\n" + ."\n" + .'* startTime: the time at which the system starts to run a backup job. The time follows the UNIX time format. Unit: seconds.'."\n" + .'* interval: the interval at which the system runs a backup job. The interval follows the ISO 8601 standard. For example, PT1H indicates an interval of 1 hour. P1D indicates an interval of one day.'."\n", 'type' => 'string', 'required' => false, 'example' => 'I|1602673264|P1D'], ], [ - 'name' => 'Mode', + 'name' => 'BackupPrefix', 'in' => 'query', - 'schema' => [ - 'description' => 'The recovery mode. Valid values:'."\n" - ."\n" - .'* **RECOVERY_TO_MOST_RECENT**: restores the database to the recently available state to which the database has been backed up.'."\n" - .'* **RECOVERY_TO_POINT_IN_TIME**: restores the database to a specified point in time.'."\n" - .'* **RECOVERY_TO_SPECIFIC_BACKUP**: restores the database to a specified backup.'."\n" - .'* **RECOVERY_TO_LOG_POSITION**: restores the database to a specified log position.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'RECOVERY_TO_SPECIFIC_BACKUP', - 'default' => 'RECOVERY_TO_MOST_RECENT', - ], + 'schema' => ['description' => 'The backup prefix.'."\n", 'type' => 'string', 'required' => false, 'example' => 'COMPLETE_DATA_BACKUP'], ], [ - 'name' => 'RecoveryPointInTime', + 'name' => 'ResourceGroupId', 'in' => 'query', + 'schema' => ['description' => 'The ID of the resource group.'."\n", 'type' => 'string', 'required' => false, 'example' => 'rg-acfmze36euddwjq'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The point in time to which you want to restore the database. This parameter is valid only if you set the Mode parameter to **RECOVERY_TO_POINT_IN_TIME**. Cloud Backup restores the database to a state closest to the specified point in time.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1649851200', + 'type' => 'object', + 'properties' => [ + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'F23BCC67-09B4-582C-AE70-C813C8548DCC'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], + ], + 'description' => '', ], ], + ], + 'title' => 'UpdateHanaBackupPlan', + 'summary' => 'Updates an SAP HANA backup plan.', + 'description' => '* A backup plan defines the data source, backup policy, and other configurations. After you execute a backup plan, a backup job is generated to record the backup progress and the backup result. If a backup job is completed, a backup snapshot is generated. You can use a backup snapshot to create a restore job.'."\n" + .'* You can specify only one type of data source in a backup plan.'."\n" + .'* You can specify only one interval as a backup cycle in a backup plan.'."\n" + .'* Each backup plan allows you to back up data to only one backup vault.'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateHanaBackupPlan'], + ], + ], + 'ramActions' => [ [ - 'name' => 'LogPosition', - 'in' => 'query', - 'schema' => [ - 'description' => 'The log position to which you want to restore the database. This parameter is valid only if you set the Mode parameter to **RECOVERY_TO_LOG_POSITION**.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '0', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:UpdateHanaBackupPlan', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"F23BCC67-09B4-582C-AE70-C813C8548DCC\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateHanaBackupPlanResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>F23BCC67-09B4-582C-AE70-C813C8548DCC</RequestId>\\n <Success>true</Success>\\n</UpdateHanaBackupPlanResponse>","errorExample":""}]', + ], + 'UpdateHanaBackupSetting' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'VolumeId', + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => ['operationType' => 'update'], + 'parameters' => [ + [ + 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the volume that you want to restore. This parameter is valid only if you set the Mode parameter to **RECOVERY_TO_LOG_POSITION**.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '0', - ], + 'schema' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'required' => false, 'example' => 'v-0005n******rluw5'], ], [ - 'name' => 'SystemCopy', + 'name' => 'ClusterId', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to restore the database to a different instance.'."\n" - ."\n" - .'* true: restores the database to a different instance.'."\n" - .'* false: restores the database within the same instance.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['description' => 'The ID of the SAP HANA instance.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cl-000ezvg******8znz'], ], [ - 'name' => 'Source', + 'name' => 'DatabaseName', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the source system. This parameter specifies the name of the source database that you want to restore. You must set the parameter in the `<Source database name>@SID` format.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'P01@HP1', - ], + 'schema' => ['description' => 'The name of the database.'."\n", 'type' => 'string', 'required' => true, 'example' => 'SYSTEMDB'], ], [ - 'name' => 'SourceClusterId', + 'name' => 'EnableAutoLogBackup', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the source SAP HANA instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cl-0000g3m******5cj', - ], + 'schema' => ['description' => 'Specifies whether to enable automatic log backup. Valid values:'."\n" + ."\n" + .'* **true**: enables automatic log backup.'."\n" + .'* **false**: disables automatic log backup.'."\n", 'type' => 'boolean', 'required' => true, 'docRequired' => true, 'example' => 'true'], ], [ - 'name' => 'IncludeDifferential', + 'name' => 'DataBackupParameterFile', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to include differential backups in the query results. Valid values:'."\n" - ."\n" - .'* true: includes differential backups.'."\n" - .'* false: excludes differential backups.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - 'default' => 'false', - ], + 'schema' => ['description' => 'The configuration file for data backup.'."\n", 'type' => 'string', 'required' => false, 'example' => '/usr/sap/SID/SYS/global/hdb/opt/hdbconfig/param'], ], [ - 'name' => 'IncludeIncremental', + 'name' => 'LogBackupParameterFile', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to include incremental backups in the query results. Valid values:'."\n" - ."\n" - .'* true: includes incremental backups.'."\n" - .'* false: excludes incremental backups.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - 'default' => 'false', - ], + 'schema' => ['description' => 'The configuration file for log backup.'."\n", 'type' => 'string', 'required' => false, 'example' => '/usr/sap/SID/SYS/global/hdb/opt/hdbconfig/param'], ], [ - 'name' => 'IncludeLog', + 'name' => 'LogBackupUsingBackint', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to include log backups in the query results. Valid values:'."\n" - ."\n" - .'* true: includes log backups.'."\n" - .'* false: excludes log backups.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - 'default' => 'false', - ], + 'schema' => ['description' => 'Specifies whether to use Backint to back up logs. Valid values:'."\n" + ."\n" + .'* true: Backint is used to back up logs.'."\n" + .'* false: Backint is not used to back up logs.'."\n", 'type' => 'boolean', 'required' => true, 'docRequired' => true, 'example' => 'true'], ], [ - 'name' => 'UseBackint', + 'name' => 'LogBackupTimeout', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether Backint is used. Valid values:'."\n" - ."\n" - .'* true: Backint is used.'."\n" - .'* false: Backint is not used.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', - 'default' => 'false', - ], + 'schema' => ['description' => 'The interval at which logs are backed up. Unit: seconds.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '900'], ], [ - 'name' => 'ResourceGroupId', + 'name' => 'CatalogBackupUsingBackint', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the resource group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rg-acfmz7mced2ldhy', - ], + 'schema' => ['description' => 'Specifies whether to use Backint to back up catalogs. Valid values:'."\n" + ."\n" + .'* true: Backint is used to back up catalogs.'."\n" + .'* false: Backint is not used to back up catalogs.'."\n", 'type' => 'boolean', 'required' => true, 'docRequired' => true, 'example' => 'true'], + ], + [ + 'name' => 'CatalogBackupParameterFile', + 'in' => 'query', + 'schema' => ['description' => 'The configuration file for catalog backup.'."\n", 'type' => 'string', 'required' => false, 'example' => '/usr/sap/SID/SYS/global/hdb/opt/hdbconfig/param'], ], ], 'responses' => [ @@ -15080,167 +11760,112 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '31F97233-8563-563D-8880-914B00EEA928', - ], - 'TaskId' => [ - 'description' => 'The ID of the asynchronous job. You can call the DescribeTask operation to query the execution result of an asynchronous job.'."\n", - 'type' => 'string', - 'example' => 't-0006xmbplrqebt9dhkth', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => '4892D474-9A4A-5298-BCD3-E46112A1EFD0'], + 'Success' => ['description' => 'Indicates whether the call is successful. Valid values:'."\n" + ."\n" + .'* true: The call is successful.'."\n" + .'* false: The call fails.'."\n", 'type' => 'boolean', 'example' => 'true'], ], - 'description' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"31F97233-8563-563D-8880-914B00EEA928\\",\\n \\"TaskId\\": \\"t-0006xmbplrqebt9dhkth\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeHanaBackupsAsyncResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>31F97233-8563-563D-8880-914B00EEA928</RequestId>\\n <TaskId>t-0006xmbplrqebt9dhkth</TaskId>\\n <Success>true</Success>\\n</DescribeHanaBackupsAsyncResponse>","errorExample":""}]', - 'title' => 'DescribeHanaBackupsAsync', - 'summary' => 'Queries one or more SAP HANA backups that meet the specified conditions.', - 'description' => 'After you call the DescribeHanaBackupsAsync operation to query the SAP HANA backups that meet the specified conditions, call the DescribeTask operation to query the final result.'."\n", - ], - 'DescribeHanaRestores' => [ - 'methods' => [ - 'post', - 'get', + 'title' => 'UpdateHanaBackupSetting', + 'summary' => 'Updates the backup parameters of an SAP HANA database.', + 'description' => 'You can call the UpdateHanaRetentionSetting operation to update the backup retention period of a database.'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateHanaBackupSetting'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:UpdateHanaBackupSetting', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"4892D474-9A4A-5298-BCD3-E46112A1EFD0\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateHanaBackupSettingResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>4892D474-9A4A-5298-BCD3-E46112A1EFD0</RequestId>\\n <Success>true</Success>\\n</UpdateHanaBackupSettingResponse>","errorExample":""}]', + ], + 'UpdateHanaInstance' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', - 'systemTags' => [ - 'operationType' => 'get', - ], + 'operationType' => 'readAndWrite', + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'v-000au6bq******mpu', - ], + 'schema' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'required' => false, 'example' => 'v-0003v4ah******9xp'], ], [ 'name' => 'ClusterId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the SAP HANA instance.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cl-000b******soejg', - ], + 'schema' => ['description' => 'The ID of the SAP HANA instance.'."\n", 'type' => 'string', 'required' => false, 'example' => 'cl-000axjt******c6j8'], ], [ - 'name' => 'PageNumber', + 'name' => 'HanaName', 'in' => 'query', - 'schema' => [ - 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '1', - 'example' => '1', - 'default' => '1', - ], + 'schema' => ['description' => 'The name of the SAP HANA instance.'."\n", 'type' => 'string', 'required' => false, 'example' => 'SAP-HANA-DEV'], ], [ - 'name' => 'PageSize', + 'name' => 'Host', 'in' => 'query', - 'schema' => [ - 'description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.\\`'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '100', - 'minimum' => '1', - 'example' => '10', - 'default' => '1', - ], + 'schema' => ['description' => 'The private or internal IP address of the host where the primary node of the SAP HANA instance resides.'."\n", 'type' => 'string', 'required' => false, 'example' => '47.100.XX.XX'], ], [ - 'name' => 'RestoreId', + 'name' => 'InstanceNumber', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the restore job.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'r-0007o3vqfukfe92hvf13', - ], + 'schema' => ['description' => 'The instance number of the SAP HANA system.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => true, 'docRequired' => true, 'example' => '00'], ], [ - 'name' => 'DatabaseName', + 'name' => 'UserName', 'in' => 'query', - 'schema' => [ - 'description' => 'The database name.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'SYSTEMDB', - ], + 'schema' => ['description' => 'The username of the SYSTEMDB database.'."\n", 'type' => 'string', 'required' => false, 'example' => 'admin'], ], [ - 'name' => 'BackupId', + 'name' => 'Password', 'in' => 'query', - 'schema' => [ - 'description' => 'The backup ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1632754800158', - ], + 'schema' => ['description' => 'The password that is used to connect with the SAP HANA database.'."\n", 'type' => 'string', 'required' => false, 'example' => '**********'], ], [ - 'name' => 'RestoreStatus', + 'name' => 'UseSsl', 'in' => 'query', - 'schema' => [ - 'description' => 'The status of the restore job. Valid values:'."\n" - ."\n" - .'* **RUNNING**: The job is running.'."\n" - .'* **COMPLETE**: The job is completed.'."\n" - .'* **PARTIAL_COMPLETE**: The job is partially completed.'."\n" - .'* **FAILED**: The job failed.'."\n" - .'* **CANCELED**: The job is canceled.'."\n" - .'* **EXPIRED**: The job timed out.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'COMPLETE', - ], + 'schema' => ['description' => 'Specifies whether to connect with the SAP HANA database over Secure Sockets Layer (SSL). Valid values:'."\n" + ."\n" + .'* true: The SAP HANA database is connected over SSL.'."\n" + .'* false: The SAP HANA database is not connected over SSL.'."\n", 'type' => 'boolean', 'required' => true, 'docRequired' => true, 'example' => 'true'], + ], + [ + 'name' => 'ValidateCertificate', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to verify the SSL certificate of the SAP HANA database. Valid values:'."\n" + ."\n" + .'* true: The SSL certificate of the SAP HANA database is verified.'."\n" + .'* false: The SSL certificate of the SAP HANA database is not verified.'."\n", 'type' => 'boolean', 'required' => true, 'docRequired' => true, 'example' => 'false'], + ], + [ + 'name' => 'AlertSetting', + 'in' => 'query', + 'schema' => ['description' => 'The alert settings. Valid value: INHERITED, which indicates that the Cloud Backup client sends alert notifications by using the same method configured for the backup vault.'."\n", 'type' => 'string', 'required' => false, 'example' => 'INHERITED'], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the resource group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rg-acfm4ebtpkzx7zy', - ], + 'schema' => ['description' => 'The ID of the resource group.'."\n", 'type' => 'string', 'required' => false, 'example' => 'rg-aekzvx7d3c4kpny'], ], ], 'responses' => [ @@ -15248,527 +11873,323 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '7DEFC897-8F05-5C05-912C-C9A9510FBFF1', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'PageNumber' => [ - 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'PageSize' => [ - 'description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'TotalCount' => [ - 'description' => 'The total number of entries returned.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '19', - ], - 'HanaRestore' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'HanaRestores' => [ - 'description' => 'The information about restore jobs.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The restore job.'."\n", - 'type' => 'object', - 'properties' => [ - 'Status' => [ - 'description' => 'The status of the restore job. Valid values:'."\n" - ."\n" - .'* **RUNNING**: The job is running.'."\n" - .'* **COMPLETE**: The job is completed.'."\n" - .'* **PARTIAL_COMPLETE**: The job is partially completed.'."\n" - .'* **FAILED**: The job failed.'."\n" - .'* **CANCELED**: The job is canceled.'."\n" - .'* **EXPIRED**: The job timed out.'."\n", - 'type' => 'string', - 'example' => 'COMPLETE', - ], - 'ReachedTime' => [ - 'description' => 'The point in time at which the database is restored.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1635315505', - ], - 'VaultId' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'example' => 'v-000g9acf******gta', - ], - 'CurrentPhase' => [ - 'description' => 'The current recovery phase. This value is obtained from SAP HANA.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'ClearLog' => [ - 'description' => 'Indicates whether all log entries are deleted from the log area after the log entries are restored. Valid values: true and false. If the return value is false, all log entries are deleted from the log area after the log entries are restored.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Message' => [ - 'description' => 'The details of the recovery phase.'."\n", - 'type' => 'string', - 'example' => 'SQL Error 448 - recovery could not be completed:', - ], - 'CheckAccess' => [ - 'description' => 'Indicates whether the differential backup and log backup are validated. Valid values:'."\n" - ."\n" - .'* true: Cloud Backup checks whether the required differential backup and log backup are available before the restore job starts. If the differential backup or log backup is unavailable, Cloud Backup does not start the restore job.'."\n" - .'* false: Cloud Backup does not check whether the required differential backup and log backup are available before the restore job starts.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Mode' => [ - 'description' => 'The recovery mode. Valid values:'."\n" - ."\n" - .'* **RECOVERY_TO_MOST_RECENT**: The database is restored to the recently available state to which the database has been backed up.'."\n" - .'* **RECOVERY_TO_POINT_IN_TIME**: The database is restored to a specified point in time.'."\n" - .'* **RECOVERY_TO_SPECIFIC_BACKUP**: The database is restored to a specified backup.'."\n" - .'* **RECOVERY_TO_LOG_POSITION**: The database is restored to a specified log position.'."\n", - 'type' => 'string', - 'example' => 'RECOVERY_TO_SPECIFIC_BACKUP', - ], - 'SystemCopy' => [ - 'description' => 'Indicates whether the database is restored to a different instance. Valid values:'."\n" - ."\n" - .'* true: The database is restored to a different instance.'."\n" - .'* false: The database is restored within the same instance.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'CurrentProgress' => [ - 'description' => 'The current progress. This value is obtained from SAP HANA.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'UseDelta' => [ - 'description' => 'Indicates whether a differential backup or an incremental backup is used to restore the database. Valid values: true and false. If the return value is true, Cloud Backup uses a differential backup or an incremental backup to restore the database. If the return value is false, Cloud Backup uses a log backup to restore the database.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'BackupID' => [ - 'description' => 'The backup ID.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1635315505', - ], - 'SourceClusterId' => [ - 'description' => 'The ID of the source SAP HANA instance.'."\n", - 'type' => 'string', - 'example' => 'cl-0000g3mvy******5cj', - ], - 'VolumeId' => [ - 'description' => 'The ID of the volume that is restored. This parameter is returned only if the value of the Mode parameter is **RECOVERY_TO_LOG_POSITION**.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'DatabaseName' => [ - 'description' => 'The database name.'."\n", - 'type' => 'string', - 'example' => 'BWD', - ], - 'Phase' => [ - 'description' => 'The recovery phase.'."\n", - 'type' => 'string', - 'example' => 'restart', - ], - 'ClusterId' => [ - 'description' => 'The ID of the SAP HANA instance that is restored.'."\n", - 'type' => 'string', - 'example' => 'cl-000923yu******p00j4', - ], - 'DatabaseRestoreId' => [ - 'description' => 'The ID of the database recovery.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1644038961030', - ], - 'State' => [ - 'description' => 'The recovery status. This value is obtained from SAP HANA.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'Source' => [ - 'description' => 'The name of the source system. This parameter indicates the name of the source database that is restored. Format: `<Source database name>@SID`.'."\n", - 'type' => 'string', - 'example' => 'PRD@H4P', - ], - 'MaxPhase' => [ - 'description' => 'The maximum recovery phase. This value is obtained from SAP HANA.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '4', - ], - 'EndTime' => [ - 'description' => 'The time when the restore job ends. This value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1634356382', - ], - 'StartTime' => [ - 'description' => 'The time when the restore job starts. This value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1636970413', - ], - 'BackupPrefix' => [ - 'description' => 'The backup prefix.'."\n", - 'type' => 'string', - 'example' => 'INC_DATA_BACKUP', - ], - 'RestoreId' => [ - 'description' => 'The ID of the restore job.'."\n", - 'type' => 'string', - 'example' => 'r-000c1en183ayn9sesgqh', - ], - 'LogPosition' => [ - 'description' => 'The log position to which the database is restored. This parameter is returned only if the value of the Mode parameter is **RECOVERY_TO_LOG_POSITION**.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '0', - ], - 'RecoveryPointInTime' => [ - 'description' => 'The point in time to which the database is restored. This parameter is returned only if the value of the Mode parameter is **RECOVERY_TO_POINT_IN_TIME**. Cloud Backup restores the database to a state closest to the specified point in time.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1649851200', - ], - 'MaxProgress' => [ - 'description' => 'The maximum progress. This value is obtained from SAP HANA.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'UseCatalog' => [ - 'description' => 'Indicates whether a catalog backup is used to restore the database. This parameter is returned only if the value of the Mode parameter is **RECOVERY_TO_SPECIFIC_BACKUP**. If the return value is false, Cloud Backup finds the backup file based on the specified prefix and then restores the backup file.'."\n", - 'type' => 'boolean', - 'example' => 'false', - ], - ], - ], - ], - ], - ], + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'A6AB6D5A-9D21-5529-9335-A894FB045ED6'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], ], 'description' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"7DEFC897-8F05-5C05-912C-C9A9510FBFF1\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 19,\\n \\"HanaRestore\\": {\\n \\"HanaRestores\\": [\\n {\\n \\"Status\\": \\"COMPLETE\\",\\n \\"ReachedTime\\": 1635315505,\\n \\"VaultId\\": \\"v-000g9acf******gta\\",\\n \\"CurrentPhase\\": 2,\\n \\"ClearLog\\": true,\\n \\"Message\\": \\"SQL Error 448 - recovery could not be completed:\\",\\n \\"CheckAccess\\": true,\\n \\"Mode\\": \\"RECOVERY_TO_SPECIFIC_BACKUP\\",\\n \\"SystemCopy\\": true,\\n \\"CurrentProgress\\": 1,\\n \\"UseDelta\\": true,\\n \\"BackupID\\": 1635315505,\\n \\"SourceClusterId\\": \\"cl-0000g3mvy******5cj\\",\\n \\"VolumeId\\": 0,\\n \\"DatabaseName\\": \\"BWD\\",\\n \\"Phase\\": \\"restart\\",\\n \\"ClusterId\\": \\"cl-000923yu******p00j4\\",\\n \\"DatabaseRestoreId\\": 1644038961030,\\n \\"State\\": \\"successful\\",\\n \\"Source\\": \\"PRD@H4P\\",\\n \\"MaxPhase\\": 4,\\n \\"EndTime\\": 1634356382,\\n \\"StartTime\\": 1636970413,\\n \\"BackupPrefix\\": \\"INC_DATA_BACKUP\\",\\n \\"RestoreId\\": \\"r-000c1en183ayn9sesgqh\\",\\n \\"LogPosition\\": 0,\\n \\"RecoveryPointInTime\\": 1649851200,\\n \\"MaxProgress\\": 1,\\n \\"UseCatalog\\": false\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeHanaRestoresResponse>\\n <RequestId>7DEFC897-8F05-5C05-912C-C9A9510FBFF1</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>19</TotalCount>\\n <HanaRestore>\\n <Status>COMPLETE</Status>\\n <ReachedTime>1635315505</ReachedTime>\\n <VaultId>v-000g9acf******gta</VaultId>\\n <CurrentPhase>2</CurrentPhase>\\n <ClearLog>true</ClearLog>\\n <Message>SQL Error 448 - recovery could not be completed:</Message>\\n <CheckAccess>true</CheckAccess>\\n <Mode>RECOVERY_TO_SPECIFIC_BACKUP</Mode>\\n <SystemCopy>true</SystemCopy>\\n <CurrentProgress>1</CurrentProgress>\\n <UseDelta>true</UseDelta>\\n <BackupID>1635315505</BackupID>\\n <SourceClusterId>cl-0000g3mvy******5cj</SourceClusterId>\\n <VolumeId>0</VolumeId>\\n <DatabaseName>BWD</DatabaseName>\\n <Phase>restart</Phase>\\n <ClusterId>cl-000923yu******p00j4</ClusterId>\\n <DatabaseRestoreId>1644038961030</DatabaseRestoreId>\\n <State>successful</State>\\n <Source>PRD@H4P</Source>\\n <MaxPhase>4</MaxPhase>\\n <EndTime>1634356382</EndTime>\\n <StartTime>1636970413</StartTime>\\n <BackupPrefix>INC_DATA_BACKUP</BackupPrefix>\\n <RestoreId>r-000c1en183ayn9sesgqh</RestoreId>\\n <LogPosition>0</LogPosition>\\n <RecoveryPointInTime>1649851200</RecoveryPointInTime>\\n <MaxProgress>1</MaxProgress>\\n <UseCatalog>false</UseCatalog>\\n </HanaRestore>\\n</DescribeHanaRestoresResponse>","errorExample":""}]', - 'title' => 'DescribeHanaRestores', - 'summary' => 'Queries one or more SAP HANA restore jobs that meet the specified conditions.', - ], - 'DeleteAirEcsInstance' => [ - 'summary' => 'Removes the Elastic Compute Service (ECS) instance that is used for restoration only in ECS Backup Essential Edition.', - 'methods' => [ - 'post', + 'title' => 'UpdateHanaInstance', + 'summary' => 'Updates an SAP HANA instance.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateHanaInstance'], + ], ], - 'schemes' => [ - 'https', + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:UpdateHanaInstance', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"A6AB6D5A-9D21-5529-9335-A894FB045ED6\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateHanaInstanceResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>A6AB6D5A-9D21-5529-9335-A894FB045ED6</RequestId>\\n <Success>true</Success>\\n</UpdateHanaInstanceResponse>","errorExample":""}]', + ], + 'UpdateHanaRetentionSetting' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, + 'operationType' => 'write', 'systemTags' => [ - 'operationType' => 'delete', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '201610', - 'abilityTreeNodes' => [ - 'FEATUREhbrIF7VXM', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '95682', + 'abilityTreeNodes' => ['FEATUREhbrI97IXK'], ], 'parameters' => [ [ - 'name' => 'EcsInstanceId', + 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the Elastic Compute Service (ECS) instance.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'i-uf6ir9y******hvisj', - ], + 'schema' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'required' => true, 'example' => 'v-000fb0v2ly******k6'], ], [ - 'name' => 'UninstallClientSourceTypes', + 'name' => 'ClusterId', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'description' => 'The data sources for which the client needs to be uninstalled.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The data source for which the client needs to be uninstalled.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'ECS_FILE', - ], - 'required' => false, - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response'."\n", - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'Id of the request'."\n", - 'type' => 'string', - 'example' => '33AA3AAE-89E1-5D3A-A51D-0C0A80850F68', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'TaskId' => [ - 'description' => 'The ID of the asynchronous job. You can call the DescribeTask operation to query the execution result of an asynchronous job.'."\n", - 'type' => 'string', - 'example' => 't-*********************', - ], - ], - ], + 'schema' => ['description' => 'The ID of the SAP HANA instance.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cl-00024vyjj******srrq'], ], - ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"33AA3AAE-89E1-5D3A-A51D-0C0A80850F68\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"TaskId\\": \\"t-*********************\\"\\n}","type":"json"}]', - 'title' => 'DeleteAirEcsInstance', - 'translator' => 'machine', - ], - 'OpenHbrService' => [ - 'summary' => 'Activates Cloud Backup.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'Schedule', + 'in' => 'query', + 'schema' => ['description' => 'The policy to update the retention period. Format: `I|{startTime}|{interval}`. The retention period is updated at an interval of {interval} starting from {startTime}.'."\n" + ."\n" + .'* startTime: the time at which the system starts to run a backup job. The time follows the UNIX time format. Unit: seconds.'."\n" + .'* interval: the interval at which the system runs a backup job. The interval follows the ISO 8601 standard. For example, PT1H indicates an interval of 1 hour, and P1D indicates an interval of one day.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'I|0|P1D'], ], [ - 'APP' => [], + 'name' => 'RetentionDays', + 'in' => 'query', + 'schema' => ['description' => 'The retention period of the backup data. Unit: days. If you set the Disabled parameter to false, the backup is retained for the number of days specified by this parameter.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => true, 'docRequired' => true, 'example' => '90'], ], [ - 'PrivateKey' => [], + 'name' => 'Disabled', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to permanently retain the backup. Valid values:'."\n" + ."\n" + .'* true: The backup is permanently retained.'."\n" + .'* false: The backup is retained for the specified number of days.'."\n", 'type' => 'boolean', 'required' => true, 'docRequired' => true, 'example' => 'false'], ], [ - 'BearerToken' => [], - ], - ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'create', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '95631', - 'abilityTreeNodes' => [ - 'FEATUREhbr3BJQCT', + 'name' => 'DatabaseName', + 'in' => 'query', + 'schema' => ['description' => 'The database name.'."\n", 'type' => 'string', 'required' => true, 'example' => 'SYSTEMDB'], ], - 'tenantRelevance' => 'publicInformation', ], - 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ - 'OrderId' => [ - 'description' => 'The ID of the order.', - 'type' => 'string', - 'example' => '215463686160696', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.', - 'type' => 'string', - 'example' => 'F4A1D5F4-5055-549A-8B25-6DD23311E299', - ], + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '7BEE26EB-8EE3-57A0-A9DE-5FD700165DE5'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], ], + 'description' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"OrderId\\": \\"215463686160696\\",\\n \\"RequestId\\": \\"F4A1D5F4-5055-549A-8B25-6DD23311E299\\"\\n}","type":"json"}]', - 'title' => 'OpenHbrService', - ], - 'AddContainerCluster' => [ - 'methods' => [ - 'post', - 'get', + 'title' => 'UpdateHanaRetentionSetting', + 'summary' => 'Updates the backup retention period of an SAP HANA database.', + 'description' => '* If you want to update the backup parameters of a database, you can call the UpdateHanaBackupSetting operation.'."\n" + .'* Cloud Backup deletes the expired catalogs and data that are related to Backint and file backup. The deleted catalogs and data cannot be restored. We recommend that you set the retention period based on your business requirements.'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateHanaRetentionSetting'], + ], ], - 'schemes' => [ - 'http', - 'https', + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:UpdateHanaRetentionSetting', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"7BEE26EB-8EE3-57A0-A9DE-5FD700165DE5\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateHanaRetentionSettingResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>7BEE26EB-8EE3-57A0-A9DE-5FD700165DE5</RequestId>\\n <Success>true</Success>\\n</UpdateHanaRetentionSettingResponse>","errorExample":""}]', + ], + 'UpdatePolicyBinding' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'create', - 'abilityTreeCode' => '95396', - 'abilityTreeNodes' => [ - 'FEATUREhbrFWIWBG', - ], - 'tenantRelevance' => 'publicInformation', - ], + 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ - 'name' => 'Identifier', + 'name' => 'PolicyId', + 'in' => 'formData', + 'schema' => ['description' => 'The ID of the backup policy.', 'type' => 'string', 'required' => true, 'example' => 'po-000************ky9', 'title' => ''], + ], + [ + 'name' => 'DataSourceId', + 'in' => 'formData', + 'schema' => ['description' => 'The ID of the data source.', 'type' => 'string', 'required' => true, 'example' => 'i-bp1************dtv', 'title' => ''], + ], + [ + 'name' => 'SourceType', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the cluster that you want to register.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cca8f35f0e0d84540b49d994511c2c87a', - ], + 'schema' => ['description' => 'The type of the data source. Valid value:'."\n" + ."\n" + .'- **UDM\\_ECS**: ECS instance backup', 'type' => 'string', 'required' => true, 'example' => 'UDM_ECS', 'title' => ''], ], [ - 'name' => 'Name', + 'name' => 'PolicyBindingDescription', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the cluster.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'ack_pv_backup_location', - ], + 'schema' => ['description' => 'The description of the policy binding.', 'type' => 'string', 'required' => false, 'example' => 'po-000************5xx-i-2ze************nw4', 'title' => ''], ], [ - 'name' => 'Description', + 'name' => 'Disabled', 'in' => 'query', - 'schema' => [ - 'description' => 'The description of the cluster.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'description ack pv backup', - ], + 'schema' => ['description' => 'Specifies whether to disable the backup policy for the data source.'."\n" + ."\n" + .'- true: The backup policy is disabled.'."\n" + ."\n" + .'- false: The backup policy is not disabled.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ - 'name' => 'ClusterType', + 'name' => 'Source', 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the cluster. Only Container Service for Kubernetes (ACK) clusters are supported.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'ACK', - ], + 'schema' => ['description' => 'This parameter has different meanings based on the value of SourceType.'."\n" + ."\n" + .'- **OSS**: The prefix of the objects that you want to back up. If you do not specify this parameter, the entire bucket is backed up. Only a single prefix is supported. To back up the /backup directory, set this parameter to /backup.'."\n" + ."\n" + .'- **ECS\\_FILE**: The paths to the files that you want to back up. If you do not specify this parameter, all files are backed up. You can specify multiple paths. To back up the files in the /a and /b paths, set this parameter to \\["/a", "/b"].'."\n" + ."\n" + .'- **File**: The paths to the files that you want to back up. If you do not specify this parameter, all files are backed up. You can specify multiple paths. To back up the files in the /a and /b directories, set this parameter to \\["/a", "/b"].'."\n" + ."\n" + .'- **COMMON\\_FILE\\_SYSTEM**: Required. The backup paths. You can specify multiple paths. To back up the /a and /b paths, set this parameter to \\["/a", "/b"]. To back up the root directory, set this parameter to \\["/"].'."\n" + ."\n" + .'- **COMMON\\_NAS**: Required. The backup path. Only a single path is supported. To back up the /a path, set this parameter to \\["/a"]. To back up the root directory, set this parameter to \\["/"].'."\n" + ."\n" + .'- **OTS**: The list of tables that you want to back up. If you do not specify this parameter, all tables are backed up. You can specify multiple tables. To back up Table a and Table b, set this parameter to \\["a", "b"].', 'type' => 'string', 'required' => false, 'example' => 'backup/', 'title' => ''], ], [ - 'name' => 'NetworkType', + 'name' => 'Include', + 'in' => 'query', + 'schema' => ['description' => 'This parameter is available only if you set **SourceType** to **ECS\\_FILE**, **File**, **NAS**, **COMMON\\_NAS**, or **COMMON\\_FILE\\_SYSTEM**. This parameter specifies the file types to be backed up. All files of the specified types are backed up. The value can be up to 255 characters in length.', 'type' => 'string', 'required' => false, 'example' => '[\\"*.doc\\",\\"*.xltm\\"]', 'title' => ''], + ], + [ + 'name' => 'Exclude', + 'in' => 'query', + 'schema' => ['description' => 'This parameter is required when **SourceType** is set to **ECS\\_FILE**, **File**, **NAS**, **COMMON\\_NAS**, or **COMMON\\_FILE\\_SYSTEM**. It specifies the file types to include in the backup. The value can be up to 255 characters in length.', 'type' => 'string', 'required' => false, 'example' => '[\\"*.doc\\",\\"*.xltm\\"]', 'title' => ''], + ], + [ + 'name' => 'SpeedLimit', 'in' => 'query', + 'schema' => ['description' => 'This parameter is required only if you set **SourceType** to **ECS\\_FILE** or **File**. This parameter specifies the throttling rules for backups. The format is `{start}{end}{bandwidth}`. Separate multiple throttling rules with a vertical bar (|). The time periods of the rules cannot overlap.'."\n" + ."\n" + .'- **start**: The start hour.'."\n" + ."\n" + .'- **end**: The end hour.'."\n" + ."\n" + .'- **bandwidth**: The throttling speed. Unit: KB/s.', 'type' => 'string', 'required' => false, 'example' => '0:24:5120', 'title' => ''], + ], + [ + 'name' => 'AdvancedOptions', + 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'description' => 'The network type of the cluster. Valid values:'."\n" - ."\n" - .'* **CLASSIC**: the classic network'."\n" - .'* **VPC**: a virtual private cloud (VPC)'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'VPC', + 'description' => 'The advanced options.', + 'type' => 'object', + 'properties' => [ + 'UdmDetail' => [ + 'description' => 'The details of the ECS instance backup.', + 'type' => 'object', + 'properties' => [ + 'ExcludeDiskIdList' => [ + 'description' => 'The list of cloud disk IDs that do not need to be protected. This parameter is ignored when DiskIdList is not empty.', + 'type' => 'array', + 'items' => ['description' => 'The ID of a cloud disk that does not need to be protected.', 'type' => 'string', 'required' => false, 'example' => 'd-bp1************apo', 'title' => ''], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'DiskIdList' => [ + 'description' => 'The list of cloud disk IDs that need to be protected. If you want to protect all cloud disks, leave this parameter empty.', + 'type' => 'array', + 'items' => ['description' => 'The ID of a cloud disk that needs to be protected.', 'type' => 'string', 'required' => false, 'example' => 'd-bp1************apo', 'title' => ''], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'SnapshotGroup' => ['description' => 'Specifies whether to create a snapshot-consistent group. You can create a snapshot-consistent group only if all disk types are Enhanced SSDs (ESSDs).', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], + 'AppConsistent' => ['description' => 'Specifies whether to enable application consistency. You can enable application consistency only if all disk types are ESSDs.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], + 'RamRoleName' => ['description' => 'This parameter is required only if you set **AppConsistent** to **true**. This parameter specifies the name of the RAM role that is required to create application-consistent snapshots.', 'type' => 'string', 'required' => false, 'example' => 'AliyunECSInstanceForHbrRole', 'title' => ''], + 'PreScriptPath' => ['description' => 'This parameter is required only if you set **AppConsistent** to **true**. This parameter specifies the path to the pre-freeze script that is run before an application-consistent snapshot is created.', 'type' => 'string', 'required' => false, 'example' => '/tmp/prescript.sh', 'title' => ''], + 'PostScriptPath' => ['description' => 'This parameter is required only if you set **AppConsistent** to **true**. This parameter specifies the path to the post-thaw script that is run after an application-consistent snapshot is created.', 'type' => 'string', 'required' => false, 'example' => '/tmp/postscript.sh', 'title' => ''], + 'EnableFsFreeze' => ['description' => 'This parameter is required only if you set **AppConsistent** to **true**. This parameter specifies whether to use the FsFreeze mechanism of Linux to ensure file system read consistency before an application-consistent snapshot is created. The default value is true.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], + 'TimeoutInSeconds' => ['description' => 'This parameter is required only if you set **AppConsistent** to **true**. This parameter specifies the I/O freeze timeout period. The default value is 30 seconds.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '30', 'title' => ''], + 'EnableWriters' => ['description' => 'This parameter is required only if you set **AppConsistent** to **true**. This parameter specifies whether to create an application-consistent snapshot:'."\n" + ."\n" + .'- true: Create an application-consistent snapshot.'."\n" + ."\n" + .'- false: Create a file system-consistent snapshot.'."\n" + ."\n" + .'The default value is true.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'OssDetail' => [ + 'description' => 'The details of the OSS backup.', + 'type' => 'object', + 'properties' => [ + 'InventoryId' => ['description' => 'The name of the OSS inventory. If you specify this parameter, OSS inventory is used for performance tuning.'."\n" + ."\n" + .'- Use an inventory to improve the performance of incremental backups when you back up more than 100 million OSS objects. The storage fees for the inventory files are charged by OSS.'."\n" + ."\n" + .'- It takes time to generate an OSS inventory file. Before the inventory file is generated, the backup job may fail. You can wait for the next backup cycle to run.', 'type' => 'string', 'required' => false, 'example' => '30663060', 'title' => ''], + 'InventoryCleanupPolicy' => ['description' => 'Specifies whether to delete the inventory file after a backup. This parameter is valid only when you use an OSS inventory. Valid values:'."\n" + ."\n" + .'- **NO\\_CLEANUP**: Does not delete the inventory file.'."\n" + ."\n" + .'- **DELETE\\_CURRENT**: Deletes the current file.'."\n" + ."\n" + .'- **DELETE\\_CURRENT\\_AND\\_PREVIOUS**: Deletes all files.', 'type' => 'string', 'required' => false, 'example' => 'NO_CLEANUP', 'title' => ''], + 'IgnoreArchiveObject' => ['title' => '不在任务统计和失败文件列表中提示归档型对象', 'description' => 'Specifies whether to exclude archive objects from task statistics and the list of failed files.', 'type' => 'boolean', 'required' => false, 'example' => 'true'], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'CommonFileSystemDetail' => [ + 'description' => 'The details of the large-scale file system backup.', + 'type' => 'object', + 'properties' => [ + 'FullOnIncrementFail' => ['description' => 'Specifies whether to run a full backup if an incremental backup fails. Valid values:'."\n" + ."\n" + .'- **true**: Runs a full backup.'."\n" + ."\n" + .'- **false**: Does not run a full backup.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], + 'FetchSliceSize' => ['description' => 'The size of the backup shard (the number of files).', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '100000', 'title' => ''], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + ], + 'required' => false, + 'title' => '', + 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => 'UpdatePolicyBindingResponse', + 'description' => 'UpdatePolicyBindingResponse', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '1FCBC078-FFCB-542A-8555-566477679720', - ], - 'Token' => [ - 'description' => 'The token that is used to register the Hybrid Backup Recovery (HBR) client in the cluster.'."\n", - 'type' => 'string', - 'example' => 'eyJhY2NvdW*****VnZpgXQC5A==', - ], - 'Success' => [ - 'description' => 'Indicates whether the request is successful.'."\n" - ."\n" - .'* true: The request is successful.'."\n" - .'* false: The request fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the request is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the request is successful, a value of successful is returned. If the request fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'ClusterId' => [ - 'description' => 'The ID of the cluster.'."\n", - 'type' => 'string', - 'example' => 'cc-00049slr9iuvvv6pp134', - ], + 'Success' => ['description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'- true: The request was successful.'."\n" + ."\n" + .'- false: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Code' => ['description' => 'The return code. The value 200 indicates that the request was successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The message that is returned. If the request was successful, "successful" is returned. If the request failed, an error message is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B6F24C46-54B9-519B-9AB8-A8988D705E67', 'title' => ''], ], + 'example' => '', ], ], ], @@ -15776,290 +12197,283 @@ 'enable' => false, 'eventNames' => [], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"1FCBC078-FFCB-542A-8555-566477679720\\",\\n \\"Token\\": \\"eyJhY2NvdW*****VnZpgXQC5A==\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"ClusterId\\": \\"cc-00049slr9iuvvv6pp134\\"\\n}","errorExample":""},{"type":"xml","example":"<AddContainerClusterResponse>\\n <RequestId>1FCBC078-FFCB-542A-8555-566477679720</RequestId>\\n <Token>eyJhY2NvdW*****VnZpgXQC5A==</Token>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <ClusterId>cc-00049slr9iuvvv6pp134</ClusterId>\\n</AddContainerClusterResponse>","errorExample":""}]', - 'title' => 'AddContainerCluster', - 'summary' => 'Registers a Container Service for Kubernetes (ACK) cluster.', - ], - 'UpdateContainerCluster' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"B6F24C46-54B9-519B-9AB8-A8988D705E67\\"\\n}","type":"json"}]', + 'title' => 'UpdatePolicyBinding', + 'summary' => 'Updates the association between a backup policy and a data source.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdatePolicyBinding'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:UpdatePolicyBinding', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], + ], + 'UpdatePolicyV2' => [ + 'summary' => 'Modifies a backup policy.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', + 'abilityTreeCode' => '162850', + 'abilityTreeNodes' => ['FEATUREhbr56LH1C', 'FEATUREhbrS7MI6C', 'FEATUREhbrFWIWBG', 'FEATUREhbrB1KQ9G', 'FEATUREhbrQ3MV3B', 'FEATUREhbr3BJQCT', 'FEATUREhbrF83GXN'], ], 'parameters' => [ [ - 'name' => 'ClusterId', - 'in' => 'query', - 'schema' => [ - 'description' => 'Cluster ID.', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cc-000**************134', - ], - ], - [ - 'name' => 'Name', - 'in' => 'query', - 'schema' => [ - 'description' => 'Cluster name.', - 'type' => 'string', - 'required' => false, - 'example' => 'ack_pv_backup_location', - ], + 'name' => 'PolicyId', + 'in' => 'formData', + 'schema' => ['title' => 'required parameters', 'description' => 'The ID of the backup policy.'."\n", 'type' => 'string', 'required' => false, 'example' => 'po-000************viy'], ], [ - 'name' => 'Description', - 'in' => 'query', - 'schema' => [ - 'description' => 'Cluster description.', - 'type' => 'string', - 'required' => false, - 'example' => 'description ack pv backup', - ], + 'name' => 'PolicyName', + 'in' => 'formData', + 'schema' => ['description' => 'The name of the backup policy.'."\n", 'type' => 'string', 'required' => false, 'example' => 'Daily backup + offsite backup', 'title' => ''], ], [ - 'name' => 'NetworkType', - 'in' => 'query', - 'schema' => [ - 'description' => 'Network type, with possible values including:'."\n" - .'* **CLASSIC**: Classic Network.'."\n" - .'* **VPC**: Virtual Private Cloud.', - 'type' => 'string', - 'required' => false, - 'example' => 'VPC', - ], + 'name' => 'PolicyDescription', + 'in' => 'formData', + 'schema' => ['description' => 'The description of the backup policy.'."\n", 'type' => 'string', 'required' => false, 'example' => 'Back up once at 10:00 AM every day, with offsite backup to Shanghai.', 'title' => ''], ], [ - 'name' => 'RenewToken', - 'in' => 'query', + 'name' => 'Rules', + 'in' => 'formData', + 'style' => 'json', 'schema' => [ - 'description' => 'Whether to regenerate the token.', - 'type' => 'boolean', + 'description' => 'The rules in the backup policy.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The details of the rule.'."\n", + 'type' => 'object', + 'properties' => [ + 'RuleId' => ['description' => 'The rule ID.'."\n", 'type' => 'string', 'required' => false, 'example' => 'rule-000************rof', 'title' => ''], + 'RuleType' => [ + 'title' => '', + 'description' => 'The type of the rule. Each backup policy must have at least one rule of the **BACKUP** type and only one rule of the **TRANSITION** type. Valid values:'."\n" + ."\n" + .'* **BACKUP**: backup rule'."\n" + .'* **TRANSITION**: lifecycle rule'."\n" + .'* **REPLICATION**: replication rule'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'BACKUP', + 'enum' => [], + ], + 'Schedule' => ['description' => 'This parameter is required only if the **RuleType** parameter is set to **BACKUP**. This parameter specifies the backup schedule settings. Formats:'."\n" + ."\n" + .'* `I|{startTime}|{interval}`: The system runs the first backup job at a point in time that is specified in the {startTime} parameter and the subsequent backup jobs at an interval that is specified in the {interval} parameter. For example, `I|1631685600|P1D` indicates that the system runs the first backup job at 14:00:00 on September 15, 2021 and the subsequent backup jobs once a day.'."\n" + ."\n" + .' * startTime: the time at which the system starts to run a backup job. The time must follow the UNIX time format. Unit: seconds.'."\n" + .' * interval: the interval at which the system runs a backup job. The interval must follow the ISO 8601 standard. For example, `PT1H` specifies an interval of 1 hour. `P1D` specifies an interval of one day.'."\n" + ."\n" + .'* `C|{startTime}|{crontab}`: The system runs backup jobs at a point in time that is specified in the {startTime} parameter based on the {crontab} expression. For example, C|1631685600|0 0 2 ?\\* 3,5,7 indicates that the system runs backup jobs at 02:00:00 every Tuesday, Thursday, and Saturday from14:00:00 on September 15, 2021.``'."\n" + ."\n" + .' * startTime: the time at which the system starts to run a backup job. The time must follow the UNIX time format. Unit: seconds.'."\n" + .' * crontab: the crontab expression. For example, 0 0 2 ?\\* 3,5,7 indicates 02:00:00 every Tuesday, Thursday, and Saturday.``'."\n" + ."\n" + .'The system does not run a backup job before the specified point in time. Each backup job, except the first one, starts only after the previous backup job is completed.'."\n", 'type' => 'string', 'required' => false, 'example' => 'I|1648647166|P1D', 'title' => ''], + 'BackupType' => ['title' => '', 'description' => 'This parameter is required only if the **RuleType** parameter is set to **BACKUP**. This parameter specifies the backup type. Valid value: **COMPLETE**, which indicates full backup.'."\n", 'type' => 'string', 'required' => false, 'example' => 'COMPLETE'], + 'Retention' => ['title' => 'Expiration', 'description' => 'This parameter is required only if the **RuleType** parameter is set to **TRANSITION** or **REPLICATION**.'."\n" + ."\n" + .'* If the **RuleType** parameter is set to **TRANSITION**, this parameter specifies the retention period of the backup data. Minimum value: 1. Unit: days.'."\n" + .'* If the **RuleType** parameter is set to **REPLICATION**, this parameter specifies the retention period of remote backups. Minimum value: 1. Unit: days.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '7', 'default' => '0'], + 'ReplicationRegionId' => ['title' => 'Replication', 'description' => 'This parameter is required only if the **RuleType** parameter is set to **REPLICATION**. This parameter specifies the ID of the destination region.'."\n", 'type' => 'string', 'required' => false, 'example' => 'cn-shanghai'], + 'ArchiveDays' => ['description' => 'This parameter is required only if the **RuleType** parameter is set to **TRANSITION**. This parameter specifies the time when data is dumped from a backup vault to an archive vault. Unit: days.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '90', 'default' => '0', 'title' => ''], + 'ColdArchiveDays' => ['description' => 'This parameter is required only if the **RuleType** parameter is set to **TRANSITION**. This parameter specifies the time when data is dumped from a backup vault to a cold archive vault. Unit: days.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '365', 'default' => '0', 'title' => ''], + 'VaultId' => ['description' => 'This parameter is required only if the RuleType parameter is set to BACKUP. The ID of the backup vault.'."\n", 'type' => 'string', 'required' => false, 'example' => 'v-0001************aseg', 'title' => ''], + 'RetentionRules' => [ + 'description' => 'This parameter is required only if the **RuleType** parameter is set to **TRANSITION**. This parameter specifies the special retention rules.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The special retention rule.'."\n", + 'type' => 'object', + 'properties' => [ + 'AdvancedRetentionType' => ['description' => 'The type of the special retention rule. Valid values:'."\n" + ."\n" + .'* **WEEKLY**: retains weekly backups'."\n" + .'* **MONTHLY**: retains monthly backups'."\n" + .'* **YEARLY**: retains yearly backups'."\n", 'type' => 'string', 'required' => false, 'example' => 'YEARLY', 'title' => ''], + 'WhichSnapshot' => ['description' => 'Specifies which backup is retained based on the special retention rule. Only the first backup can be retained.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], + 'Retention' => ['description' => 'The special retention period of backups. Minimum value: 1. Unit: days.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '365', 'title' => ''], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'required' => false, + 'maxItems' => 99, + 'title' => '', + 'example' => '', + ], + 'KeepLatestSnapshots' => ['description' => 'Specifies whether to enable the feature of keeping at least one backup version. Valid values:'."\n" + ."\n" + .'* 0: The feature is disabled.'."\n" + .'* 1: The feature is enabled.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], + 'DataSourceFilters' => [ + 'description' => 'This parameter is required only if the **RuleType** parameter is set to **TAG**. This parameter specifies the data source filter rule.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'SourceType' => ['description' => 'The type of the data source. Valid values:'."\n" + ."\n" + .'* **UDM_ECS**: Elastic Compute Service (ECS) instance This type of data source is supported only if the **RuleType** parameter is set to **UDM_ECS_ONLY**.'."\n" + .'* **OSS**: Object Storage Service (OSS) bucket This type of data source is supported only if the **RuleType** parameter is set to **STANDARD**.'."\n" + .'* **NAS**: File Storage NAS (NAS) file system This type of data source is supported only if the **RuleType** parameter is set to **STANDARD**.'."\n" + .'* **ECS_FILE**: ECS file This type of data source is supported only if the **RuleType** parameter is set to **STANDARD**.'."\n" + .'* **OTS**: Tablestore instance This type of data source is supported only if the **RuleType** parameter is set to **STANDARD**.'."\n", 'type' => 'string', 'required' => false, 'example' => 'UDM_ECS', 'title' => ''], + 'DataSourceIds' => [ + 'description' => 'This parameter is deprecated.'."\n", + 'type' => 'array', + 'items' => ['description' => 'This parameter is deprecated.'."\n", 'type' => 'string', 'required' => false, 'example' => '已废弃。', 'title' => ''], + 'required' => false, + 'title' => '', + 'example' => '', + ], + ], + 'required' => false, + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'TagFilters' => [ + 'description' => 'This parameter is required only if the **RuleType** parameter is set to **TAG**. This parameter specifies the resource tag filter rule.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => 'The tag key.'."\n", 'type' => 'string', 'required' => false, 'example' => 'env', 'title' => ''], + 'Value' => ['description' => 'The tag value. If you leave this parameter empty, the value is any value.'."\n", 'type' => 'string', 'required' => false, 'example' => 'prod', 'title' => ''], + 'Operator' => ['description' => 'The tag-based matching rule. Valid values:'."\n" + ."\n" + .'* **EQUAL**: Both the tag key and tag value are matched.'."\n" + .'* **NOT**: The tag key is matched and the tag value is not matched.'."\n", 'type' => 'string', 'required' => false, 'example' => 'EQUAL', 'title' => ''], + ], + 'required' => false, + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'Immutable' => ['description' => 'This parameter is required only if the **PolicyType** parameter is set to **UDM_ECS_ONLY**. This parameter specifies whether to enable the immutable backup feature.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], 'required' => false, - 'example' => 'false', + 'maxItems' => 10, + 'minItems' => 1, + 'title' => '', + 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ + 'title' => 'UpdatePolicyResponse', + 'description' => 'UpdatePolicyResponse'."\n", 'type' => 'object', 'properties' => [ - 'TokenUpdated' => [ - 'description' => 'Indicates whether the cluster token has been updated.', - 'type' => 'boolean', - 'example' => 'false', - ], - 'RequestId' => [ - 'description' => 'Request ID.', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Token' => [ - 'description' => 'Cluster token, used for registering HBR clients within the cluster.', - 'type' => 'string', - 'example' => 'eyJhY2NvdW*****VnZpgXQC5A==', - ], - 'Success' => [ - 'description' => 'Indicates if the request was successful.'."\n" - ."\n" - .'- true: Success'."\n" - .'- false: Failure', - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'Return code, 200 indicates success.', - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'Return information.', - 'type' => 'string', - 'example' => 'successful', - ], + 'Success' => ['description' => 'Indicates whether the call is successful. Valid values:'."\n" + ."\n" + .'* true: The call is successful.'."\n" + .'* false: The call fails.'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Code' => ['description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'RequestId' => ['description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TokenUpdated\\": false,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Token\\": \\"eyJhY2NvdW*****VnZpgXQC5A==\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\"\\n}","type":"json"}]', - 'title' => 'Update Container Cluster Information', - 'summary' => 'Update container cluster information, including the container cluster name, network type, etc.', - 'translator' => 'machine', - ], - 'DescribeRegions' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', + 'title' => 'UpdatePolicyV2', + 'description' => 'If you modify a backup policy, the modification takes effect on all data sources that are bound to the backup policy. Proceed with caution.'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdatePolicyV2'], ], ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'none', - 'abilityTreeCode' => '95538', - 'abilityTreeNodes' => [ - 'FEATUREhbrKJCQWH', - 'FEATUREhbr56LH1C', - 'FEATUREhbr5DOJ9F', - 'FEATUREhbrN8YWXB', - 'FEATUREhbr88PDT6', - 'FEATUREhbr461GQI', - 'FEATUREhbrS7MI6C', - 'FEATUREhbrFWIWBG', - 'FEATUREhbrO5EHNR', - 'FEATUREhbr7WEYAR', - 'FEATUREhbrAW9I1R', - 'FEATUREhbrFJ9107', - 'FEATUREhbrB1KQ9G', - 'FEATUREhbrQ3MV3B', - 'FEATUREhbr3BJQCT', - 'FEATUREhbrF83GXN', - 'FEATUREhbrIA0YQI', - 'FEATUREhbrI97IXK', - 'FEATUREhbrTH4MM4', - 'FEATUREhbrAL60OZ', - ], - 'tenantRelevance' => 'publicInformation', - ], - 'parameters' => [], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => 'B3395EC6-7A4A-5282-A9AB-7A442F2CFC90', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Regions' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'Region' => [ - 'description' => 'The regions returned.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'LocalName' => [ - 'description' => 'The region name.'."\n", - 'type' => 'string', - 'example' => 'China (Hangzhou)', - ], - 'RegionId' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - ], - ], - ], - ], - ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:UpdatePolicyV2', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], - 'description' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"B3395EC6-7A4A-5282-A9AB-7A442F2CFC90\\",\\n \\"Success\\": true,\\n \\"Regions\\": {\\n \\"Region\\": [\\n {\\n \\"LocalName\\": \\"China (Hangzhou)\\",\\n \\"RegionId\\": \\"cn-hangzhou\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeRegionsResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>B3395EC6-7A4A-5282-A9AB-7A442F2CFC90</RequestId>\\n <Success>true</Success>\\n <Regions>\\n <VaultCount>11</VaultCount>\\n <LocalName>China (Hangzhou)</LocalName>\\n <RegionId>cn-hangzhou</RegionId>\\n </Regions>\\n</DescribeRegionsResponse>","errorExample":""}]', - 'title' => 'DescribeRegions', - 'summary' => 'Queries available regions.', ], - 'DescribeTask' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'UpdateVault' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'write', 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '95552', - 'abilityTreeNodes' => [ - 'FEATUREhbr3BJQCT', - ], + 'operationType' => 'update', + 'abilityTreeCode' => '95698', + 'abilityTreeNodes' => ['FEATUREhbrKJCQWH', 'FEATUREhbrS7MI6C', 'FEATUREhbr7WEYAR', 'FEATUREhbrQ3MV3B', 'FEATUREhbrF83GXN', 'FEATUREhbr56LH1C', 'FEATUREhbrFWIWBG', 'FEATUREhbrAW9I1R', 'FEATUREhbr3BJQCT', 'FEATUREhbrIA0YQI', 'FEATUREhbrI97IXK', 'FEATUREhbrTH4MM4', 'FEATUREhbr9ZUQY7'], ], 'parameters' => [ [ - 'name' => 'Token', + 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'The access token.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '01W3ZZOQ', - ], + 'schema' => ['description' => 'The ID of the backup vault.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'v-*********************'], ], [ - 'name' => 'TaskId', + 'name' => 'VaultName', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the job.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 't-*********************', - 'docRequired' => true, - ], + 'schema' => ['description' => 'The name of the backup vault. The name must be 1 to 64 characters in length.'."\n", 'type' => 'string', 'required' => false, 'example' => 'vaultname'], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => ['description' => 'The description of the backup vault. The description must be 0 to 255 characters in length.'."\n", 'type' => 'string', 'required' => false, 'example' => 'vault description'], + ], + [ + 'name' => 'WormEnabled', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to enable the immutable backup feature for storage vaults. After the immutable backup feature is enabled, backup vaults and all backup data cannot be deleted until the retention period expires. The immutable backup feature cannot be disabled after it is enabled. Only standard backup vaults and archive vaults support the immutable backup feature.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the resource group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rg-acfmvywqfey5njq', - ], + 'schema' => ['description' => 'The ID of the resource group.'."\n", 'type' => 'string', 'required' => false, 'example' => 'rg-acfm2fa2xeiebyy'], ], ], 'responses' => [ @@ -16067,190 +12481,47 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Progress' => [ - 'description' => 'The progress of the job. Valid values: 0 to 100. Unit: percentage (%). If the job fails, the value -1 is returned.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '100', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'CompletedTime' => [ - 'description' => 'The time when the task was complete. The time is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1615607706', - ], - 'Result' => [ - 'description' => 'The result of the job.'."\n", - 'type' => 'string', - 'example' => '{}', - ], - 'Description' => [ - 'description' => 'The status of the job. Valid values:'."\n" - ."\n" - .'* **created**: The job is created.'."\n" - .'* **expired**: The job expires.'."\n" - .'* **completed**: The job is completed.'."\n" - .'* **cancelled**: The job is canceled.'."\n", - 'type' => 'string', - 'example' => 'completed', - ], - 'UpdatedTime' => [ - 'description' => 'The time when the job was updated. This value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1615607706', - ], - 'Success' => [ - 'description' => 'Indicates whether the call is successful.'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'HttpCode'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'Name' => [ - 'description' => 'The name of the job.'."\n", - 'type' => 'string', - 'example' => 'InstallBackupClientsTask', - ], - 'CreatedTime' => [ - 'description' => 'The time when the job was created. This value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1615607706', - ], + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The returned message. If the request was successful, a success message is returned. If the request failed, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", 'type' => 'boolean', 'example' => 'true'], ], 'description' => '', ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Progress\\": 100,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"CompletedTime\\": 1615607706,\\n \\"Result\\": \\"{}\\",\\n \\"Description\\": \\"completed\\",\\n \\"UpdatedTime\\": 1615607706,\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"Name\\": \\"InstallBackupClientsTask\\",\\n \\"CreatedTime\\": 1615607706\\n}","errorExample":""},{"type":"xml","example":"<DescribeTaskResponse>\\n <Progress>100</Progress>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <CompletedTime>1615607706</CompletedTime>\\n <Result>{}</Result>\\n <Description>completed</Description>\\n <UpdatedTime>1615607706</UpdatedTime>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <Name>InstallBackupClientsTask</Name>\\n <CreatedTime>1615607706</CreatedTime>\\n</DescribeTaskResponse>","errorExample":""}]', - 'title' => 'DescribeTask', - 'summary' => 'Queries an asynchronous job. ', + 'title' => 'UpdateVault', + 'summary' => 'Updates the configuration information about the backup vault.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', - ], - 'DescribeVaultReplicationRegions' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ - [ - 'AK' => [], + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateVault'], ], ], - 'operationType' => 'read', - 'systemTags' => [ - 'operationType' => 'get', - 'abilityTreeCode' => '95568', - 'abilityTreeNodes' => [ - 'FEATUREhbrGSUVI2', - ], - 'tenantRelevance' => 'publicInformation', - ], - 'parameters' => [ + 'ramActions' => [ [ - 'name' => 'Token', - 'in' => 'query', - 'schema' => [ - 'description' => 'This parameter is deprecated.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '01W3ZZOQ', - ], - ], - [ - 'name' => 'VaultId', - 'in' => 'query', - 'schema' => [ - 'description' => 'This parameter is deprecated.'."\n", - 'type' => 'string', - 'deprecated' => true, - 'required' => false, - 'example' => 'v-00030j3c******sn', - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => 'F4EEB401-DD21-588D-AE3B-1E835C7655E1', - ], - 'Success' => [ - 'description' => 'Indicates whether the call is successful.'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Regions' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'RegionId' => [ - 'description' => 'The regions that support cross-region replication.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The regions that support cross-region replication.'."\n", - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - ], - ], - ], + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:UpdateVault', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"F4EEB401-DD21-588D-AE3B-1E835C7655E1\\",\\n \\"Success\\": true,\\n \\"Regions\\": {\\n \\"RegionId\\": [\\n \\"cn-hangzhou\\"\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeVaultReplicationRegionsResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>F4EEB401-DD21-588D-AE3B-1E835C7655E1</RequestId>\\n <Success>true</Success>\\n <Regions>cn-hangzhou</Regions>\\n</DescribeVaultReplicationRegionsResponse>","errorExample":""}]', - 'title' => 'DescribeVaultReplicationRegions', - 'summary' => 'Queries the regions that support cross-region replication. ', + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<UpdateVaultResponse>\\n<Message>successful</Message>\\n<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n<Code>200</Code>\\n<Success>true</Success>\\n</UpdateVaultResponse>","errorExample":""}]', ], - 'DescribeContainerCluster' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'UpgradeBackupClients' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -16259,51 +12530,40 @@ 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', + 'operationType' => 'update', + 'abilityTreeCode' => '95706', + 'abilityTreeNodes' => ['FEATUREhbrS7MI6C'], ], 'parameters' => [ [ - 'name' => 'PageNumber', + 'name' => 'InstanceIds', 'in' => 'query', - 'schema' => [ - 'description' => 'The number of the page to return. Pages start from page 1. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'style' => 'json', + 'schema' => ['description' => 'The IDs of Elastic Compute Service (ECS) instances. The total number of ECS instance IDs and Cloud Backup client IDs cannot exceed 100.'."\n", 'type' => 'object', 'required' => false, 'docRequired' => true, 'example' => '["c-*********************"]', 'default' => '[]'], ], [ - 'name' => 'PageSize', + 'name' => 'ClientIds', 'in' => 'query', - 'schema' => [ - 'description' => 'The number of entries to return on each page. Valid values: 1 to 99. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'style' => 'json', + 'schema' => ['description' => 'The IDs of Cloud Backup clients. The total number of Cloud Backup client IDs and ECS instance IDs cannot exceed 100.'."\n", 'type' => 'object', 'required' => false, 'docRequired' => true, 'example' => '["i-0xi5wj******3j3bh2gj5"]', 'default' => '[]'], ], [ - 'name' => 'ClusterId', + 'name' => 'CrossAccountType', 'in' => 'query', - 'schema' => [ - 'description' => 'The cluster ID.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cc-000*************hg9', - ], + 'schema' => ['description' => 'Specifies whether data is backed up within the same Alibaba Cloud account or across Alibaba Cloud accounts. Valid values:'."\n" + ."\n" + .'* SELF_ACCOUNT: Data is backed up within the same Alibaba Cloud account.'."\n" + .'* CROSS_ACCOUNT: Data is backed up across Alibaba Cloud accounts.'."\n", 'type' => 'string', 'required' => false, 'example' => 'CROSS_ACCOUNT'], ], [ - 'name' => 'Identifier', + 'name' => 'CrossAccountUserId', 'in' => 'query', - 'schema' => [ - 'title' => '容器集群标识符,对于阿里云容器服务Kubernetes集群,该参数指Kubernetes集群ID。', - 'description' => 'The identifier of the container cluster. For a Container Service for Kubernetes (ACK) cluster, specify the cluster ID.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cca*******************************87a', - ], + 'schema' => ['description' => 'The ID of the source Alibaba Cloud account that authorizes the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1283948272xxxxx'], + ], + [ + 'name' => 'CrossAccountRoleName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the RAM role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", 'type' => 'string', 'required' => false, 'example' => 'hbrcrossrole'], ], ], 'responses' => [ @@ -16311,101 +12571,31 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => 'CC94B755-C3C2-5B9D-BD77-E0FE819A4DB2', - ], - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'PageSize' => [ - 'description' => 'The number of entries returned on each page. Valid values: 1 to 99. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '100', - ], - 'PageNumber' => [ - 'description' => 'The page number of the returned page. Pages start from page 1. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'TotalCount' => [ - 'description' => 'The total number of returned entries.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '8', - ], - 'Clusters' => [ - 'description' => 'The information of clusters.'."\n", + 'Code' => ['description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", 'type' => 'string', 'example' => '200'], + 'Message' => ['description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", 'type' => 'string', 'example' => 'successful'], + 'RequestId' => ['description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], + 'TaskId' => ['description' => 'The ID of the asynchronous job. You can call the DescribeTask operation to query the execution result of an asynchronous job.'."\n", 'type' => 'string', 'example' => 't-*********************'], + 'Success' => ['description' => 'Indicates whether the call is successful. Valid values:'."\n" + ."\n" + .'* true: The call is successful.'."\n" + .'* false: The call fails.'."\n", 'type' => 'boolean', 'example' => 'true'], + 'InstanceStatuses' => [ + 'description' => 'The status of the ECS instance. If the status of an ECS instance cannot meet the requirements to install an HBR client and the value of the InstanceIds parameter is greater than 1, an error message is returned based on the value of this parameter.'."\n", 'type' => 'array', 'items' => [ - 'description' => 'The information of clusters.'."\n", 'type' => 'object', 'properties' => [ - 'Token' => [ - 'description' => 'The token that is used to register the Hybrid Backup Recovery (HBR) client in the cluster.'."\n", - 'type' => 'string', - 'example' => 'eyJhY2Nvd******A/VnZpgXQC5A==', - ], - 'Description' => [ - 'description' => 'The description.'."\n", - 'type' => 'string', - 'example' => 'description ack pv backup', - ], - 'ClusterType' => [ - 'description' => 'The type of the cluster. Valid value: ACK, which indicates ACK clusters.'."\n", - 'type' => 'string', - 'example' => 'ACK', - ], - 'Identifier' => [ - 'description' => 'The identifier of the cluster.'."\n", - 'type' => 'string', - 'example' => 'c5bbd0931a30947f4ab85efd19380a72d', - ], - 'NetworkType' => [ - 'description' => 'The network type of the cluster. Valid values:'."\n" - ."\n" - .'* **CLASSIC**: the classic network'."\n" - .'* **VPC**: virtual private cloud (VPC)'."\n", - 'type' => 'string', - 'example' => 'VPC', - ], - 'Name' => [ - 'description' => 'The name of the instance.'."\n", - 'type' => 'string', - 'example' => 'ack_pv_backup_location', - ], - 'AgentStatus' => [ - 'description' => 'The status of the client. Valid values:'."\n" - ."\n" - .'* **MISS**: The client is disconnected.'."\n" - .'* **UNKNOWN**: The client is in an unknown state.'."\n" - .'* **READY**: The client is ready.'."\n", - 'type' => 'string', - 'example' => 'READY', - ], - 'ClusterId' => [ - 'description' => 'The ID of the cluster.'."\n", - 'type' => 'string', - 'example' => 'cl-0006gwppd0jtttpmb0ri', - ], + 'ValidInstance' => ['description' => 'Indicates whether an HBR client can be installed on the ECS instance. Valid values:'."\n" + ."\n" + .'* true: An HBR client can be installed on the ECS instance.'."\n" + .'* false: An HBR client cannot be installed on the ECS instance.'."\n", 'type' => 'boolean', 'example' => 'true'], + 'InstanceId' => ['description' => 'The ID of the ECS instance.'."\n", 'type' => 'string', 'example' => 'i-0xi5w***v3j3bh2gj5'], + 'ErrorCode' => ['description' => 'The error code that is returned. Valid values:'."\n" + ."\n" + .'* If the value is empty, the call is successful.'."\n" + .'* **InstanceNotExists**: The ECS instance does not exist.'."\n" + .'* **InstanceNotRunning**: The ECS instance is not running.'."\n" + .'* **CloudAssistNotRunningOnInstance**: Cloud Assistant is unavailable.'."\n", 'type' => 'string', 'example' => 'InstanceNotExists'], ], ], ], @@ -16413,90 +12603,50 @@ ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CC94B755-C3C2-5B9D-BD77-E0FE819A4DB2\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageSize\\": 100,\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 8,\\n \\"Clusters\\": [\\n {\\n \\"Token\\": \\"eyJhY2Nvd******A/VnZpgXQC5A==\\",\\n \\"Description\\": \\"description ack pv backup\\",\\n \\"ClusterType\\": \\"ACK\\",\\n \\"Identifier\\": \\"c5bbd0931a30947f4ab85efd19380a72d\\",\\n \\"NetworkType\\": \\"VPC\\",\\n \\"Name\\": \\"ack_pv_backup_location\\",\\n \\"AgentStatus\\": \\"READY\\",\\n \\"ClusterId\\": \\"cl-0006gwppd0jtttpmb0ri\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeContainerClusterResponse>\\n <RequestId>CC94B755-C3C2-5B9D-BD77-E0FE819A4DB2</RequestId>\\n <Success>true</Success>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <PageSize>100</PageSize>\\n <PageNumber>1</PageNumber>\\n <TotalCount>8</TotalCount>\\n <Clusters>\\n <Token>eyJhY2Nvd******A/VnZpgXQC5A==</Token>\\n <Description>description ack pv backup</Description>\\n <ClusterType>ACK</ClusterType>\\n <Identifier>c5bbd0931a30947f4ab85efd19380a72d</Identifier>\\n <NetworkType>VPC</NetworkType>\\n <Name>ack_pv_backup_location</Name>\\n <AgentStatus>READY</AgentStatus>\\n <ClusterId>cl-0006gwppd0jtttpmb0ri</ClusterId>\\n </Clusters>\\n</DescribeContainerClusterResponse>","errorExample":""}]', - 'title' => 'DescribeContainerCluster', - 'summary' => 'Queries one or more container clusters that meet the specified conditions.', - 'description' => 'You can call this operation to query only Container Service for Kubernetes (ACK) clusters.'."\n", - ], - 'DetachNasFileSystem' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + 'title' => 'UpgradeBackupClients', + 'summary' => 'Upgrades an HBR client on one or more Elastic Compute Service (ECS) instances.', + 'description' => '* This operation creates an asynchronous job at the backend and calls Cloud Assistant to upgrade an HBR client that is installed on an ECS instance.'."\n" + .'* You can call the DescribeTask operation to query the execution result of an asynchronous job.'."\n" + .'* The timeout period of an asynchronous job is 15 minutes.'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpgradeBackupClients'], + ], ], + 'ramActions' => [], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TaskId\\": \\"t-*********************\\",\\n \\"Success\\": true,\\n \\"InstanceStatuses\\": [\\n {\\n \\"ValidInstance\\": true,\\n \\"InstanceId\\": \\"i-0xi5w***v3j3bh2gj5\\",\\n \\"ErrorCode\\": \\"InstanceNotExists\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<UpgradeBackupClientsResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <TaskId>t-*********************</TaskId>\\n <Success>true</Success>\\n <InstanceStatuses>\\n <ValidInstance>true</ValidInstance>\\n <InstanceId>i-0xi5w***v3j3bh2gj5</InstanceId>\\n <ErrorCode>InstanceNotExists</ErrorCode>\\n </InstanceStatuses>\\n</UpgradeBackupClientsResponse>","errorExample":""}]', + ], + 'UpgradeClient' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'systemTags' => [ 'operationType' => 'update', - 'abilityTreeCode' => '95580', - 'abilityTreeNodes' => [ - 'FEATUREhbrFWIWBG', - ], + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREhbrI97IXK', 'FEATUREhbr3BJQCT', 'FEATUREhbrTH4MM4'], ], 'parameters' => [ [ - 'name' => 'FileSystemId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the file system.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => '005494', - ], - ], - [ - 'name' => 'CreateTime', - 'in' => 'query', - 'schema' => [ - 'description' => 'The time when the file system was created. The value must be a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => '1607436917', - ], - ], - [ - 'name' => 'CrossAccountType', + 'name' => 'VaultId', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether data is backed up and restored within the same Alibaba Cloud account or across Alibaba Cloud accounts. Valid values:'."\n" - ."\n" - .'* SELF_ACCOUNT: Data is backed up and restored within the same Alibaba Cloud account.'."\n" - .'* CROSS_ACCOUNT: Data is backed up and restored across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [], - 'example' => 'SELF_ACCOUNT', - ], + 'schema' => ['description' => 'The ID of the backup vault.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'v-000djw8ci******3ic', 'title' => ''], ], [ - 'name' => 'CrossAccountUserId', + 'name' => 'ClientId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the source Alibaba Cloud account that authorizes the current Alibaba Cloud account to back up and restore data across Alibaba Cloud accounts.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '158975xxxxx4625', - ], + 'schema' => ['description' => 'The ID of the Cloud Backup client.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'c-000boklw******63a9', 'title' => ''], ], [ - 'name' => 'CrossAccountRoleName', + 'name' => 'ResourceGroupId', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the RAM role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up and restore data across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'BackupRole', - ], + 'schema' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmy6uja5wyc2i', 'title' => ''], ], ], 'responses' => [ @@ -16504,1602 +12654,1523 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the request is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the request is successful, a value of successful is returned. If the request fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'TaskId' => [ - 'description' => 'The ID of the asynchronous job. You can call the DescribeTask operation to query the execution result of the asynchronous job.'."\n", - 'type' => 'string', - 'example' => 't-*********************', - ], - 'Success' => [ - 'description' => 'Indicates whether the request is successful.'."\n" - ."\n" - .'* true: The request is successful.'."\n" - .'* false: The request fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], + 'Code' => ['description' => 'The response code. The status code 200 indicates that the request was successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '22D97921-16BD-547C-B175-1DC25B1DCD73', 'title' => ''], + 'TaskId' => ['description' => 'The ID of the asynchronous job. You can call the DescribeTask operation to query the execution result of an asynchronous job.', 'type' => 'string', 'example' => 't-000i97jujk0z58a2ignf', 'title' => ''], + 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" + ."\n" + .'- true'."\n" + ."\n" + .'- false', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TaskId\\": \\"t-*********************\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => 'DetachNasFileSystem', - 'summary' => 'Deletes an internal mount target created by Cloud Backup.', - 'description' => '* If the request is successful, the mount target is deleted.'."\n" - .'* After you create a backup plan for an Apsara File Storage NAS file system, HBR automatically creates a mount target for the file system. You can call this operation to delete the mount target. In the **Status** column of the mount target of the NAS file system, the following information is displayed: **This mount target is created by an Alibaba Cloud internal service and cannot be operated. Service name: HBR**.'."\n", - 'requestParamsDescription' => ' ', - 'responseParamsDescription' => ' ', - 'extraInfo' => ' ', - ], - 'GenerateRamPolicy' => [ - 'methods' => [ - 'post', - 'get', + 'title' => 'UpgradeClient', + 'summary' => 'Upgrades the Cloud Backup client.', + 'description' => 'Upgrades a Cloud Backup client to the latest version. After the upgrade succeeds, the client version cannot be rolled back.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpgradeClient'], + ], + ], + 'ramActions' => [ + [ + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:UpgradeClient', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], + ], ], - 'schemes' => [ - 'http', - 'https', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"22D97921-16BD-547C-B175-1DC25B1DCD73\\",\\n \\"TaskId\\": \\"t-000i97jujk0z58a2ignf\\",\\n \\"Success\\": true\\n}","type":"json"}]', + ], + ], + 'endpoints' => [ + ['regionId' => 'cn-wulanchabu', 'regionName' => 'China (Ulanqab)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'hbr.cn-wulanchabu.aliyuncs.com', 'endpoint' => 'hbr.cn-wulanchabu.aliyuncs.com', 'vpc' => 'hbr-vpc.cn-wulanchabu.aliyuncs.com'], + ['regionId' => 'cn-beijing', 'regionName' => 'China (Beijing)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'hbr.cn-beijing.aliyuncs.com', 'endpoint' => 'hbr.cn-beijing.aliyuncs.com', 'vpc' => 'hbr-vpc.cn-beijing.aliyuncs.com'], + ['regionId' => 'cn-qingdao', 'regionName' => 'China (Qingdao)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'hbr.cn-qingdao.aliyuncs.com', 'endpoint' => 'hbr.cn-qingdao.aliyuncs.com', 'vpc' => 'hbr-vpc.cn-qingdao.aliyuncs.com'], + ['regionId' => 'cn-shanghai', 'regionName' => 'China (Shanghai)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'hbr.cn-shanghai.aliyuncs.com', 'endpoint' => 'hbr.cn-shanghai.aliyuncs.com', 'vpc' => 'hbr-vpc.cn-shanghai.aliyuncs.com'], + ['regionId' => 'cn-hongkong', 'regionName' => 'China (Hong Kong)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'hbr.cn-hongkong.aliyuncs.com', 'endpoint' => 'hbr.cn-hongkong.aliyuncs.com', 'vpc' => 'hbr-vpc.cn-hongkong.aliyuncs.com'], + ['regionId' => 'cn-heyuan', 'regionName' => 'China (Heyuan)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'hbr.cn-heyuan.aliyuncs.com', 'endpoint' => 'hbr.cn-heyuan.aliyuncs.com', 'vpc' => 'hbr-vpc.cn-heyuan.aliyuncs.com'], + ['regionId' => 'cn-zhangjiakou', 'regionName' => 'China (Zhangjiakou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'hbr.cn-zhangjiakou.aliyuncs.com', 'endpoint' => 'hbr.cn-zhangjiakou.aliyuncs.com', 'vpc' => 'hbr-vpc.cn-zhangjiakou.aliyuncs.com'], + ['regionId' => 'cn-shenzhen', 'regionName' => 'China (Shenzhen)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'hbr.cn-shenzhen.aliyuncs.com', 'endpoint' => 'hbr.cn-shenzhen.aliyuncs.com', 'vpc' => 'hbr-vpc.cn-shenzhen.aliyuncs.com'], + ['regionId' => 'ap-northeast-2', 'regionName' => 'South Korea (Seoul)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'hbr.ap-northeast-2.aliyuncs.com', 'endpoint' => 'hbr.ap-northeast-2.aliyuncs.com', 'vpc' => 'hbr-vpc.ap-northeast-2.aliyuncs.com'], + ['regionId' => 'ap-northeast-1', 'regionName' => 'Japan (Tokyo)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'hbr.ap-northeast-1.aliyuncs.com', 'endpoint' => 'hbr.ap-northeast-1.aliyuncs.com', 'vpc' => 'hbr-vpc.ap-northeast-1.aliyuncs.com'], + ['regionId' => 'cn-chengdu', 'regionName' => 'China (Chengdu)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'hbr.cn-chengdu.aliyuncs.com', 'endpoint' => 'hbr.cn-chengdu.aliyuncs.com', 'vpc' => 'hbr-vpc.cn-chengdu.aliyuncs.com'], + ['regionId' => 'cn-guangzhou', 'regionName' => 'China (Guangzhou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'hbr.cn-guangzhou.aliyuncs.com', 'endpoint' => 'hbr.cn-guangzhou.aliyuncs.com', 'vpc' => 'hbr-vpc.cn-guangzhou.aliyuncs.com'], + ['regionId' => 'ap-southeast-1', 'regionName' => 'Singapore', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'hbr.ap-southeast-1.aliyuncs.com', 'endpoint' => 'hbr.ap-southeast-1.aliyuncs.com', 'vpc' => 'hbr-vpc.ap-southeast-1.aliyuncs.com'], + ['regionId' => 'ap-southeast-3', 'regionName' => 'Malaysia (Kuala Lumpur)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'hbr.ap-southeast-3.aliyuncs.com', 'endpoint' => 'hbr.ap-southeast-3.aliyuncs.com', 'vpc' => 'hbr-vpc.ap-southeast-3.aliyuncs.com'], + ['regionId' => 'cn-huhehaote', 'regionName' => 'China (Hohhot)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'hbr.cn-huhehaote.aliyuncs.com', 'endpoint' => 'hbr.cn-huhehaote.aliyuncs.com', 'vpc' => 'hbr-vpc.cn-huhehaote.aliyuncs.com'], + ['regionId' => 'ap-southeast-5', 'regionName' => 'Indonesia (Jakarta)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'hbr.ap-southeast-5.aliyuncs.com', 'endpoint' => 'hbr.ap-southeast-5.aliyuncs.com', 'vpc' => 'hbr-vpc.ap-southeast-5.aliyuncs.com'], + ['regionId' => 'ap-southeast-6', 'regionName' => 'Philippines (Manila)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'hbr.ap-southeast-6.aliyuncs.com', 'endpoint' => 'hbr.ap-southeast-6.aliyuncs.com', 'vpc' => 'hbr-vpc.ap-southeast-6.aliyuncs.com'], + ['regionId' => 'ap-southeast-7', 'regionName' => 'Thailand (Bangkok)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'hbr.ap-southeast-7.aliyuncs.com', 'endpoint' => 'hbr.ap-southeast-7.aliyuncs.com', 'vpc' => 'hbr-vpc.ap-southeast-7.aliyuncs.com'], + ['regionId' => 'cn-hangzhou', 'regionName' => 'China (Hangzhou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'hbr.cn-hangzhou.aliyuncs.com', 'endpoint' => 'hbr.cn-hangzhou.aliyuncs.com', 'vpc' => 'hbr-vpc.cn-hangzhou.aliyuncs.com'], + ['regionId' => 'us-east-1', 'regionName' => 'US (Virginia)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'hbr.us-east-1.aliyuncs.com', 'endpoint' => 'hbr.us-east-1.aliyuncs.com', 'vpc' => 'hbr-vpc.us-east-1.aliyuncs.com'], + ['regionId' => 'eu-west-1', 'regionName' => 'UK (London)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'hbr.eu-west-1.aliyuncs.com', 'endpoint' => 'hbr.eu-west-1.aliyuncs.com', 'vpc' => 'hbr-vpc.eu-west-1.aliyuncs.com'], + ['regionId' => 'us-west-1', 'regionName' => 'US (Silicon Valley)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'hbr.us-west-1.aliyuncs.com', 'endpoint' => 'hbr.us-west-1.aliyuncs.com', 'vpc' => 'hbr-vpc.us-west-1.aliyuncs.com'], + ['regionId' => 'eu-central-1', 'regionName' => 'Germany (Frankfurt)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'hbr.eu-central-1.aliyuncs.com', 'endpoint' => 'hbr.eu-central-1.aliyuncs.com', 'vpc' => 'hbr-vpc.eu-central-1.aliyuncs.com'], + ['regionId' => 'me-east-1', 'regionName' => 'UAE (Dubai)', 'areaId' => 'middleEast', 'areaName' => 'Middle East', 'public' => 'hbr.me-east-1.aliyuncs.com', 'endpoint' => 'hbr.me-east-1.aliyuncs.com', 'vpc' => 'hbr-vpc.me-east-1.aliyuncs.com'], + ['regionId' => 'me-central-1', 'regionName' => 'Saudi Arabia (Riyadh)', 'areaId' => 'middleEast', 'areaName' => 'Middle East', 'public' => 'hbr.me-central-1.aliyuncs.com', 'endpoint' => 'hbr.me-central-1.aliyuncs.com', 'vpc' => 'hbr-vpc.me-central-1.aliyuncs.com'], + ['regionId' => 'cn-hangzhou-finance', 'regionName' => 'China East 1 Finance', 'areaId' => 'industryCloud', 'areaName' => 'Industry Cloud', 'public' => 'hbr.cn-hangzhou-finance.aliyuncs.com', 'endpoint' => 'hbr.cn-hangzhou-finance.aliyuncs.com', 'vpc' => 'hbr-vpc.cn-hangzhou-finance.aliyuncs.com'], + ['regionId' => 'cn-shenzhen-finance-1', 'regionName' => 'China South 1 Finance', 'areaId' => 'industryCloud', 'areaName' => 'Industry Cloud', 'public' => 'hbr.cn-shenzhen-finance-1.aliyuncs.com', 'endpoint' => 'hbr.cn-shenzhen-finance-1.aliyuncs.com', 'vpc' => 'hbr-vpc.cn-shenzhen-finance-1.aliyuncs.com'], + ['regionId' => 'cn-beijing-finance-1', 'regionName' => 'China North 2 Finance (Preview)', 'areaId' => 'industryCloud', 'areaName' => 'Industry Cloud', 'public' => 'hbr.cn-beijing-finance-1.aliyuncs.com', 'endpoint' => 'hbr.cn-beijing-finance-1.aliyuncs.com', 'vpc' => 'hbr-vpc.cn-beijing-finance-1.aliyuncs.com'], + ['regionId' => 'cn-shanghai-finance-1', 'regionName' => 'China East 2 Finance', 'areaId' => 'industryCloud', 'areaName' => 'Industry Cloud', 'public' => 'hbr.cn-shanghai-finance-1.aliyuncs.com', 'endpoint' => 'hbr.cn-shanghai-finance-1.aliyuncs.com', 'vpc' => 'hbr-vpc.cn-shanghai-finance-1.aliyuncs.com'], + ], + 'errorCodes' => [ + ['code' => 'AirBackupJobNotExists', 'message' => 'The air backup job does not exist.', 'http_code' => 404, 'description' => 'The ECS Backup Air backup job does not exist.'], + ['code' => 'AirBackupPlanNotExists', 'message' => 'The air backup plan does not exist.', 'http_code' => 404, 'description' => 'The ECS Backup Air plan does not exist.'], + ['code' => 'AirInstanceAtLeastOnePlan', 'message' => 'The air instance must have one plan.', 'http_code' => 400, 'description' => 'The air instance must have at least one plan.'], + ['code' => 'AirInstanceError', 'message' => 'The air instance is error, does not support this operation.', 'http_code' => 400, 'description' => 'The ECS Backup Air is in error status. This operation is not supported. Please rebind or unbind ECS.'], + ['code' => 'AirInstanceExpired', 'message' => 'The air instance is expired, does not support this operation.', 'http_code' => 400, 'description' => 'The Ecs Backup Air instance is expired, does not support this operation.'], + ['code' => 'AirInstanceInitializing', 'message' => 'The air instance is in INITIALIZING.', 'http_code' => 400, 'description' => 'The ECS Backup Air instance is in INITIALIZING or UNBINDING status, does not support this operation.'], + ['code' => 'AirInstanceNotExists', 'message' => 'The air Instance does not exist.', 'http_code' => 404, 'description' => 'The ECS Backup Air instance does not exist.'], + ['code' => 'ArchiveDaysTooShort', 'message' => 'The snapshot should be in standard bucket for at least 30 days.', 'http_code' => 400, 'description' => ''], + ['code' => 'ArchiveRetentionDaysTooShort', 'message' => 'The archive snapshot should be in archive bucket for at least 60 days.', 'http_code' => 400, 'description' => ''], + ['code' => 'ArchiveSnapshotCannotDetect', 'message' => 'Archive snapshot cannot detect.', 'http_code' => 400, 'description' => 'The snapshot is archived, cannot do detect.'], + ['code' => 'ArchiveSnapshotCannotGenerateReport', 'message' => 'The archived snapshot can not generate report.', 'http_code' => 400, 'description' => 'The archived snapshot can not generate report.'], + ['code' => 'BackupJobStillRunning', 'message' => 'Previous backup job has not complete yet, please wait until it complete.', 'http_code' => 400, 'description' => 'The preceding backup jobs has not been completed. Please wait until the backup jobs are completed.'], + ['code' => 'BrowseDuplicateLoad', 'message' => 'Backend job have already submitted.', 'http_code' => 400, 'description' => 'The task is running at the backend.'], + ['code' => 'BrowseFileError', 'message' => 'An error occurred while browsing the backup files; please submit a ticket.', 'http_code' => 500, 'description' => ''], + ['code' => 'BrowseFileError', 'message' => 'Browse file error.', 'http_code' => 400, 'description' => 'Failed to browse file'], + ['code' => 'BrowseTimeout', 'message' => 'Too many files in this folder, backend job have already launched. Please wait for a while and try again.', 'http_code' => 400, 'description' => 'The folder contains too many files. A task is running at the backend to process the files. Please wait for a while and try again.'], + ['code' => 'CannotArchiveDetectingSnapshot', 'message' => 'Can not archive detecting snapshot.', 'http_code' => 400, 'description' => 'The snapshot is detecting, can not be archived. Please wait for the snapshot detection to complete before retry.'], + ['code' => 'CannotDeleteActiveClient', 'message' => 'The active client can not deleted.', 'http_code' => 400, 'description' => 'Active clients cannot be deleted.'], + ['code' => 'CannotDeleteArchivedSnapshot', 'message' => 'Can not delete archived snapshot.', 'http_code' => 400, 'description' => 'The snapshot is archived, can not delete manually. Please wait for the snapshot to expire, it will be deleted automatically by Cloud Backup service.'], + ['code' => 'CannotDeleteArchivingSnapshot', 'message' => 'Can not delete archiving snapshot.', 'http_code' => 400, 'description' => 'The snapshot is archving, can not delete it manually. Please wait for the snapshot to expire and it will be deleted automatically by Cloud Backup service.'], + ['code' => 'CannotDeleteDetectingSnapshot', 'message' => 'Cannot delete detecting snapshot.', 'http_code' => 400, 'description' => 'The snapshot is detecting, cannot be deleted. Please wait for the detection to complete before retry.'], + ['code' => 'CannotDeleteLatestOtsSnapshot', 'message' => 'Cannot delete latest snapshot. The backup plan has enabled Keep-Latest-Snapshot. If you want to delete this snapshot, please delete the backup plan first.', 'http_code' => 400, 'description' => 'The latest backup cannot be deleted. "Keep Latest Backup" is enabled for this backup plan. If you still want to delete this backup, delete the backup plan first.'], + ['code' => 'CannotDeleteLatestSnapshot', 'message' => 'Cannot delete latest snapshot. The backup plan has enabled Keep-Latest-Snapshot. If you want to delete this snapshot, please turn off Keep-Latest-Snapshot.', 'http_code' => 400, 'description' => 'The latest backup cannot be deleted. "Keep At Least One Backup Version" is enabled for this backup plan. If you still want to delete this backup, turn off "Keep At Least One Backup Version" first.'], + ['code' => 'CannotDeletePlanWithRunningJobs', 'message' => 'Cannot delete plan with running jobs.', 'http_code' => 400, 'description' => 'You cannot delete a schedule while a task is running'], + ['code' => 'CannotDeleteReplicationSourceVault', 'message' => 'Cannot delete replication source vault.', 'http_code' => 400, 'description' => 'You cannot delete the source backup database for cross-region backup.'], + ['code' => 'CannotInstallNewClientWithAegisClient', 'message' => 'Cannot install client on this ECS because an old version of aegis backup client already installed.', 'http_code' => 400, 'description' => 'The client cannot be installed on this ECS because an older version of the aegis backup client is already installed.'], + ['code' => 'CannotOperateClientInstalledByEcsOwner', 'message' => 'Can not operate client on this ECS because it was installed by ECS owner.', 'http_code' => 403, 'description' => 'Cannot operate another user\'s ECS client'], + ['code' => 'CannotOperateClientInstalledByOthers', 'message' => 'The client is installed by another service, can not be operated.', 'http_code' => 400, 'description' => 'You cannot operate clients installed by other services.'], + ['code' => 'CannotTurnOffKeepLatestSnapshot', 'message' => 'Cannot turn off Keep latest snapshot, please set KeepLatestSnapshot to 1.', 'http_code' => 400, 'description' => '"Keep At Least One Backup Version" cannot be turned off. We recommend that you enable this feature.'], + ['code' => 'CannotUnInstallNewClientWithAegisClient', 'message' => 'The client is being used by the Anti-Ransomware feature of Security Center and cannot be deleted.', 'http_code' => 403, 'description' => 'The client is being used by the Anti-Ransomware feature of Security Center and cannot be deleted.'], + ['code' => 'CannotUpgradeClientWithRunningJobs', 'message' => 'Cannot upgrade the client when there is an ongoing job. Try again after the job is finished.', 'http_code' => 400, 'description' => ''], + ['code' => 'Client.HanaInvalidCertOrNetworkFailure', 'message' => 'Connection to database failed, please ensure the server certificate is valid and network is reachable.', 'http_code' => 400, 'description' => 'Connection to database failed, please ensure the server certificate is valid and network is reachable.'], + ['code' => 'Client.HanaSqlError', 'message' => 'Internal HANA SQL error.', 'http_code' => 400, 'description' => 'The client reported an error when executing the HANA SQL statement.'], + ['code' => 'Client.HanaSqlError', 'message' => 'Hana reports error when execute SQL statements.', 'http_code' => 400, 'description' => 'An error occurred while Hana was executing the SQL statement.'], + ['code' => 'ClientBindsToWormVaultCannotBeDeleted', 'message' => 'The client is bound to a backup vault that has enabled backup lock. You cannot delete the client.', 'http_code' => 400, 'description' => ''], + ['code' => 'ClientBindsToWormVaultCannotBeDeleted', 'message' => 'Cannot delete client bond to WORM vault.', 'http_code' => 400, 'description' => 'Deletion of a client from a WORM backup vault is not allowed'], + ['code' => 'ClientResponseTimeout', 'message' => 'The client response timed out.', 'http_code' => 400, 'description' => 'The client response timed out.'], + ['code' => 'CloudAssistNotRunningOnInstance', 'message' => 'There is no cloud assistant running on the instance.', 'http_code' => 400, 'description' => 'There is no cloud assistant running on the instance.'], + ['code' => 'ClusterNameDuplicate', 'message' => 'The cluster name already exists, please modify the cluster name and try again.', 'http_code' => 400, 'description' => 'The cluster name already exists, please modify the cluster name and try again.'], + ['code' => 'ClusterNotExist', 'message' => 'Cluster does not exist.', 'http_code' => 400, 'description' => 'Cluster does not exist'], + ['code' => 'CommodityCodeNotSupport', 'message' => 'The commodity code does not support.', 'http_code' => 404, 'description' => 'Commodity Code is not supported.'], + ['code' => 'ContainerBackupJobStillRunning', 'message' => 'The previous backup task for this resource is still running.', 'http_code' => 400, 'description' => ''], + ['code' => 'ContainerClusterNotExists', 'message' => 'The container cluster does not exist.', 'http_code' => 404, 'description' => 'The container cluster does not exist.'], + ['code' => 'CrossAccountBackupSlrNotExist', 'message' => 'AliyunServiceRoleForHbrCrossAccountBackup does not exist, please create this role.', 'http_code' => 400, 'description' => ''], + ['code' => 'CrossAccountBackupSlrNotExist', 'message' => 'AliyunServiceRoleForHbrCrossAccountBackup doesn\'t exist, please create this role.', 'http_code' => 200, 'description' => 'AliyunServiceRoleForHbrCrossAccountBackup the role does not exist, create this service association role.'], + ['code' => 'CrossAccountItemNotExists', 'message' => 'The cross account item not exists.', 'http_code' => 403, 'description' => 'Cross-account information does not exist'], + ['code' => 'DataSourceNotExists', 'message' => 'Data source not exist.', 'http_code' => 400, 'description' => 'Data source does not exist'], + ['code' => 'DoNotHaveActivatedClient', 'message' => 'There is not any actived client.', 'http_code' => 400, 'description' => 'There are no active clients.'], + ['code' => 'EcsAlreadyHasClientInstalledByOthers', 'message' => 'The ECS already has a client which managed by another service.', 'http_code' => 400, 'description' => 'The ECS instance already has a disaster recovery client managed by other services.'], + ['code' => 'EncryptedDiskNotSupportCopy', 'message' => 'The instance contains encrypted disk not support replication in ecs server backup.', 'http_code' => 400, 'description' => ''], + ['code' => 'ExceedMaxBytes', 'message' => 'The bytes done exceeds 500G.', 'http_code' => 400, 'description' => 'The bytes done exceeds the upper limit.'], + ['code' => 'FailedToActivateUniBackupInstance', 'message' => 'Failed to activate unibackup instance.', 'http_code' => 400, 'description' => 'Unable to activate database backup instance'], + ['code' => 'FailedToCreateUniBackupJob', 'message' => 'Failed to create unibackup job.', 'http_code' => 400, 'description' => 'Unable to create database backup task'], + ['code' => 'FailedToDeleteUniBackupJob', 'message' => 'Failed to delete unibackup job.', 'http_code' => 400, 'description' => 'Unable to delete database backup task'], + ['code' => 'FailedToDescribeFileSystems', 'message' => 'Failed to describe NAS file systems.', 'http_code' => 400, 'description' => 'Failed to describe NAS file systems.'], + ['code' => 'FailedToGetOssBucket', 'message' => 'Failed to get oss bucket.', 'http_code' => 400, 'description' => 'Failed to get oss bucket.'], + ['code' => 'FailedToListUniBackupInstanceDetail', 'message' => 'Failed to list unibackup instance detail.', 'http_code' => 400, 'description' => 'Unable to list database instance details'], + ['code' => 'FailedToListUniBackupResources', 'message' => 'Failed to list unibackup resources.', 'http_code' => 400, 'description' => 'Expand Database Instance Resources'], + ['code' => 'FailedToUpdateUniBackupJob', 'message' => 'Failed to update unibackup job.', 'http_code' => 400, 'description' => 'Unable to update database backup task'], + ['code' => 'FileDetectionNotExits', 'message' => 'File detection not exists.', 'http_code' => 400, 'description' => 'The file detection record does not exist, please submit the ticket.'], + ['code' => 'HanaNodeNotExist', 'message' => 'There is no hana node.', 'http_code' => 400, 'description' => 'No legitimate hana node found'], + ['code' => 'HanaNotExist', 'message' => 'The HANA cluster or instance does not exist.', 'http_code' => 404, 'description' => 'The HANA cluster or instance does not exist.'], + ['code' => 'HanaUsesWormVaultCannotBeDeleted', 'message' => 'Hana instances that use worm vault cannot be deleted.', 'http_code' => 400, 'description' => 'Hana instances that use locked backup vaults cannot be deleted.'], + ['code' => 'HanaUsesWormVaultCannotBeDeleted', 'message' => 'Cannot delete Hana instance in WORM vault.', 'http_code' => 400, 'description' => 'HANA instances in the locked backup vault are not allowed to be deleted.'], + ['code' => 'HbrRoleNotExist', 'message' => 'Aliyun HBR default role doesn\'t exist.', 'http_code' => 400, 'description' => 'The default role of Alibaba Cloud Backup does not exist.'], + ['code' => 'ImmutableSnapshotCannotBeDeleted', 'message' => 'This ECS instance backup snapshot is immutable and cannot be deleted.', 'http_code' => 403, 'description' => 'This ECS instance backup snapshot is immutable and cannot be deleted.'], + ['code' => 'InDebt', 'message' => 'Use is in debt.', 'http_code' => 400, 'description' => 'User is overdue.'], + ['code' => 'InDebtOverdue', 'message' => 'The user is overdue.', 'http_code' => 400, 'description' => 'The user is overdue, please recharge before using the service.'], + ['code' => 'InitVaultError', 'message' => 'An error occurred while initializing the repository; please submit a ticket.', 'http_code' => 500, 'description' => ''], + ['code' => 'InitVaultError', 'message' => 'Initialize vault failed.', 'http_code' => 400, 'description' => 'Failed to initialize vault.'], + ['code' => 'InstanceHasBeenProtectedByAir', 'message' => 'The instance has been protected by air instance.', 'http_code' => 400, 'description' => 'The ECS instance is protected by other ECS Backup Air instances.'], + ['code' => 'InstanceNotExists', 'message' => 'The instance does not exist.', 'http_code' => 400, 'description' => 'Instance does not exist'], + ['code' => 'InstanceNotRunning', 'message' => 'The Ecs instance is not running.', 'http_code' => 400, 'description' => 'The ECS instance is not running.'], + ['code' => 'INSUFFICIENT_AVAILABLE_QUOTA', 'message' => 'Your account balance drops below 0. Top up your account balance before you can make a purchase.', 'http_code' => 400, 'description' => 'Your account balance is insufficient, please recharge before purchasing.'], + ['code' => 'InvalidBackupInterval', 'message' => 'invalid backup interval, please modify your parameter', 'http_code' => 400, 'description' => ''], + ['code' => 'InvalidBackupRuleRetention', 'message' => 'The retention of BACKUP rules is invalid. If the policy has no TRANSITION rule, the retention of BACKUP rule must be -1 or 1 to 364635 days.', 'http_code' => 400, 'description' => 'The retention of BACKUP rules is invalid. If the policy has no TRANSITION rule, the retention of BACKUP rule must be -1 or 1 to 364635 days.'], + ['code' => 'InvalidDestinationPath', 'message' => 'Invalid destination path.', 'http_code' => 400, 'description' => 'Invalid destination path'], + ['code' => 'InvalidPolicyPolicyNameDuplicate', 'message' => 'The policy name is duplicate.', 'http_code' => 400, 'description' => 'Duplicate policy name.'], + ['code' => 'InvalidPolicyPolicyNameTooLong', 'message' => 'The policy name is too long. The length should be between 1 and 64 characters.', 'http_code' => 400, 'description' => 'The policy name is too long. The length should be between 1 and 64 characters.'], + ['code' => 'InvalidPolicyType', 'message' => 'The policy type does not allow binding to this type of data source. Please change the policy and try again.', 'http_code' => 400, 'description' => 'The policy type does not allow binding to this type of data source. Please change the policy and try again.'], + ['code' => 'InvalidScheduleFormat', 'message' => 'invalid schedule format, please modify your parameter', 'http_code' => 400, 'description' => ''], + ['code' => 'InvalidScheduleForOtsIncrementalBackup', 'message' => 'Invalid backup interval for Tablestore incremental backup, please modify the parameters.', 'http_code' => 400, 'description' => 'The time interval specified for the incremental backup of Tablestore data is invalid. Modify the parameter.'], + ['code' => 'InvalidSourcePath', 'message' => 'Invalid source path.', 'http_code' => 400, 'description' => 'Invalid source path'], + ['code' => 'InvalidStatusToDetect', 'message' => 'The archiving snapshot can not do detect.', 'http_code' => 400, 'description' => 'The snapshot is archiving, can not do detect.'], + ['code' => 'InvalidToken', 'message' => 'The token is invalid.', 'http_code' => 400, 'description' => 'Token is not valid.'], + ['code' => 'InventoryFilterPrefixNotEqualToBackupPrefix', 'message' => 'Inventory filter prefix does not equal to backup prefix', 'http_code' => 400, 'description' => 'Cannot create backup plan. The OSS inventory filter does not equal to the backup prefix. Please modify the filter or backup prefix.'], + ['code' => 'InventoryFilterPrefixNotEqualToBackupPrefix', 'message' => 'OSS inventory filter prefix doesn\'t equal to backup prefix.', 'http_code' => 400, 'description' => 'The prefix of the OSS inventory is different from the prefix of the backup task.'], + ['code' => 'JobCanceled', 'message' => 'The job has been canceled.', 'http_code' => 400, 'description' => 'The job has been canceled.'], + ['code' => 'LocalDiskNotSupported', 'message' => 'This instance has local disk(s) that is not supported by HBR ECS Server Backup', 'http_code' => 400, 'description' => ''], + ['code' => 'LocalDiskNotSupported', 'message' => 'Not support local disk yet.', 'http_code' => 400, 'description' => 'Local cloud disks are not supported.'], + ['code' => 'MagpieBridgeSlrNotExist', 'message' => 'AliyunServiceRoleForHbrMagpieBridge doesn\'t exist, please create this role.', 'http_code' => 403, 'description' => 'AliyunServiceRoleForHbrMagpieBridge doesn\'t exist, please create this role.'], + ['code' => 'NasFileSystemNotExist', 'message' => 'The NAS file system does not exsit.', 'http_code' => 404, 'description' => 'The NAS file system does not exist.'], + ['code' => 'NasFileSystemTypeNotSupported', 'message' => 'The NAS file system type is not supported.', 'http_code' => 400, 'description' => 'This NAS file system type is not supported.'], + ['code' => 'NasServiceNotOpened', 'message' => 'Alibaba Cloud NAS has not been activated. Go to the Alibaba Cloud NAS console to activate the product.', 'http_code' => 400, 'description' => 'Your account does not open Nas Service yet or balance is insufficient.'], + ['code' => 'NoCompleteBackupRule', 'message' => 'The policy is missing the backup rule for full backup. Add it and try again.', 'http_code' => 400, 'description' => 'The policy is missing the backup rule (RuleType = BACKUP) for full backup (BackupType = COMPLETE). Add it and try again.'], + ['code' => 'NoPermissionToCreateCrossAccountBackupSlr', 'message' => 'No permission to create AliyunServiceRoleForHbrCrossAccountBackup', 'http_code' => 400, 'description' => ''], + ['code' => 'NoPermissionToCreateMagpieBridgeSlr', 'message' => 'No permission to create AliyunServiceRoleForHbrMagpieBridge.', 'http_code' => 403, 'description' => 'AliyunServiceRoleForHbrMagpieBridge you do not have permission to create a service association role, please check the permission.'], + ['code' => 'NoSuchEcsInstance', 'message' => 'The ECS Instance does not exist.', 'http_code' => 404, 'description' => ''], + ['code' => 'NotExist_ResourceGroup', 'message' => 'The resource group does not exist.', 'http_code' => 403, 'description' => 'The resource group does not exist.'], + ['code' => 'OssBucketNotFound', 'message' => 'The OSS bucket is not found.', 'http_code' => 404, 'description' => 'The OSS bucket is not found.'], + ['code' => 'PlanNameDuplicate', 'message' => 'Plan with specified name already exists.', 'http_code' => 400, 'description' => 'Plan with specified name already exists.'], + ['code' => 'PlanNotExist', 'message' => 'Plan doesn\'t exist.', 'http_code' => 400, 'description' => 'Plan does not exist'], + ['code' => 'PolicyAlreadyBoundWithThisDataSource', 'message' => 'This datasource has already been bound with the policy, please use another one.', 'http_code' => 400, 'description' => ''], + ['code' => 'PolicyAlreadyExist', 'message' => 'The specified policy already exists.', 'http_code' => 400, 'description' => ''], + ['code' => 'PolicyBindingCreatedByTagCannotDelete', 'message' => 'The policy binding is created by tag rule in the policy, can not be deleted.', 'http_code' => 403, 'description' => 'The policy binding is created by tag rule in the policy, can not be deleted.'], + ['code' => 'PolicyBindingExists', 'message' => 'This datasource has been bound to a policy (can not create backup plan or been bound to another policy).', 'http_code' => 400, 'description' => ''], + ['code' => 'PolicyBindingNotExist', 'message' => 'PolicyBinding doesn\'t exist.', 'http_code' => 404, 'description' => 'Policy binding does not exist'], + ['code' => 'PolicyOnExecution', 'message' => 'The policy is on execution, please wait and retry.', 'http_code' => 400, 'description' => 'The policy is on execution, please wait and retry.'], + ['code' => 'ReplicationSourceVaultNotFound', 'message' => 'The replication source vault does not exist.', 'http_code' => 404, 'description' => 'The replication source vault does not exist.'], + ['code' => 'ReplicationVaultCannotBeWormIfSourceVaultNot', 'message' => 'The replication vault cannot be immutable if the source vault is not immutable.', 'http_code' => 400, 'description' => ''], + ['code' => 'ReplicationVaultEncryptionTypeNotMatch', 'message' => 'Replication vault encryption type not match source vault.', 'http_code' => 400, 'description' => 'The replication vault encryption type is inconsistent with the source vault. Please modify the replication vault encryption type.'], + ['code' => 'ReportFileTaskAlreadyExist', 'message' => 'The task to generate the report file already exists.', 'http_code' => 400, 'description' => 'The task to generate the report file already exists.'], + ['code' => 'RoleNotExist', 'message' => 'The specified role doesn\'t exist.', 'http_code' => 404, 'description' => 'The cross-service authorization role required by the cloud backup service does not exist. Please grant the cloud backup service corresponding permissions.'], + ['code' => 'SameSourceAndDestinationDataSourceError', 'message' => 'The source and destination data source can not be same.', 'http_code' => 400, 'description' => 'Source and destination cannot be the same data source'], + ['code' => 'SnapshotAlreadyArchived', 'message' => 'Can not archive archived snapshot.', 'http_code' => 400, 'description' => 'The snapshot is archived, can not archive again.'], + ['code' => 'SnapshotDetecting', 'message' => 'The snapshot or another snapshot in the same snapshot link is detecting.', 'http_code' => 400, 'description' => 'The snapshot or another snapshot in the same snapshot link is detecting, cannot detect this snapshot.'], + ['code' => 'SnapshotExistsCanNotDeletePlan', 'message' => 'The backup plan or policy binding can not be deleted when snapshots exist.', 'http_code' => 400, 'description' => 'The backup plan/policy still has snapshots and cannot be deleted. Delete the snapshots first. Before deleting snapshots, you can pause the backup plan if you want the backup plan to no longer run.'], + ['code' => 'StandardPolicyMustSetVaultId', 'message' => 'The standard policy must set vault id in the rules.', 'http_code' => 400, 'description' => 'The standard policy must set vault id in the rules.'], + ['code' => 'TagKeyCannotBeEmpty', 'message' => 'The tag key in the tag filters can not be empty.', 'http_code' => 400, 'description' => 'The tag key in the policy tag filters can not be empty.'], + ['code' => 'UdmBackupPlanMayExceedEcsDiskSnapshotQuota', 'message' => 'This risky backup plan may cause too many recovery points to exist at the same time, exceeding the maximum number of snapshots (default 256) that can be created by a single disk, resulting in the failure of creating new snapshots.', 'http_code' => 400, 'description' => ''], + ['code' => 'UdmEcsInstanceWithSnapshotsCanNotBeDeleted', 'message' => 'The ecs instance with snapshots can not be unprotected, please delete snapshots first.', 'http_code' => 400, 'description' => 'The ECS instance has available backup points and cannot be unprotected. Delete the available recovery points first.'], + ['code' => 'UdmEcsOnlyPolicyCanNotSetVaultId', 'message' => 'The ecs-instance-backup-only policy can not set vault id in the rules.', 'http_code' => 400, 'description' => 'The ecs-instance-backup-only policy can not set vault id in the rules.'], + ['code' => 'VaultBoundPolicyCannotBeDeleted', 'message' => 'The vault has been bound to the policy, please go to the Policy Center, delete the policy and retry.', 'http_code' => 400, 'description' => ''], + ['code' => 'VaultNotFound', 'message' => 'The vault is not found.', 'http_code' => 404, 'description' => 'The vault is not found.'], + ['code' => 'VaultReplicationNotExist', 'message' => 'Vault replication doesn\'t exist.', 'http_code' => 404, 'description' => 'Vault replication doesn\'t exist.'], + ['code' => 'VaultWithFileDetectionRunningCannotBeDeleted', 'message' => 'The vault with file detection running cannot be deleted.', 'http_code' => 403, 'description' => 'The vault with file detection running cannot be deleted.'], + ['code' => 'WormVaultCannotBeDeleted', 'message' => 'The vault has enabled backup lock and cannot be deleted.', 'http_code' => 400, 'description' => ''], + ['code' => 'WormVaultRetentionCannotBeReduced', 'message' => 'The retention days of immutable vault cannot be reduced.', 'http_code' => 400, 'description' => ''], + ['code' => 'WormVaultSnapshotsCannotBeDeleted', 'message' => 'You cannot delete snapshots in the backup locked vault.', 'http_code' => 400, 'description' => ''], + ['code' => 'WormVaultSupportedForStandardOnly', 'message' => 'You can only enable backup lock for standard backup vaults.', 'http_code' => 400, 'description' => ''], + ['code' => 'WormVaultSupportedForStandardOnly', 'message' => 'Only Standard type vault supports WORM.', 'http_code' => 400, 'description' => 'Only the standard vault supports WORM.'], + ['code' => 'CannotOperateNewClientWithBasic', 'message' => 'The client is used by the essential edition, please do not perform any operations on this client.', 'http_code' => 400, 'description' => 'The client is used by the essential edition, please do not perform any operations on this client.'], + ['code' => 'CannotDeleteReplicationTargetVault', 'message' => 'Cannot delete replication target vault.', 'http_code' => 400, 'description' => 'You cannot close the copy target backup library in a copy.'], + ['code' => 'ReplicationVaultCannotBeWormBeforeCreateReplication', 'message' => 'The replication vault cannot be immutable before create replication.', 'http_code' => 400, 'description' => 'The replication vault cannot be immutable before create replication.'], + ['code' => 'CannotDeleteSharedResource', 'message' => 'Cannot delete shared resource.', 'http_code' => 400, 'description' => 'You cannot delete a resource from a share.'], + ['code' => 'DuplicateRequest', 'message' => 'Duplicate request, another request is processing.', 'http_code' => 409, 'description' => 'Duplicate request, another request is in progress.'], + ['code' => 'KmsKeyNotFound', 'message' => 'Kms key not found.', 'http_code' => 404, 'description' => 'KMS key not found.'], + ['code' => 'InvalidKmsKeyStatus', 'message' => 'The status of kms key is invalid.', 'http_code' => 400, 'description' => 'The status of kms key is invalid.'], + ['code' => 'BackupJobStillRunning', 'message' => 'Last Backup job with same backup plan ID is not finished yet.', 'http_code' => 400, 'description' => 'Last Backup job with same backup plan ID is not finished yet.'], + ['code' => 'BASIC_INFO_UNCOMPLETED', 'message' => 'Your information is incomplete. Complete your information before the operation.', 'http_code' => 400, 'description' => 'Your user basic information is incomplete, please improve the user basic information.'], + ['code' => 'ORDER.OPEND', 'message' => 'The service is activated.', 'http_code' => 400, 'description' => 'Service activated'], + ['code' => 'QUOTA_NOT_ENOUGH', 'message' => 'The quota is insufficient. You can contact your channel partner to request a quota increase.', 'http_code' => 400, 'description' => 'The account limit is insufficient, please contact the channel to increase the limit.'], + ['code' => 'PERMISSION_DENIED', 'message' => 'Permission denied: Unknown or unsupported caller type. Please ensure the request is made with a valid caller type (Partner, Customer, SubUser, or AssumedRoleUser).', 'http_code' => 400, 'description' => 'Unknown caller type'], + ['code' => 'AccountNotEnableRdTrustedService', 'message' => 'You have not enabled HBR as a trust service of resource directory.', 'http_code' => 400, 'description' => 'You have not enabled HBR as a trust service of resource directory.'], + ['code' => 'BackupAccountNotInSpecifiedRd', 'message' => 'The backup account is not in the specified resource directory.', 'http_code' => 403, 'description' => 'The account to be backed up is not in the specified resource directory.'], + ['code' => 'CannotAccessRdService', 'message' => 'Cannot access resource directory service.', 'http_code' => 400, 'description' => 'Cannot access resource directory service.'], + ['code' => 'CrossAccountRoleNotExist', 'message' => 'Cross account role doesn\'t exist, please check this role.', 'http_code' => 404, 'description' => 'Cross account role doesn\'t exist, please check this role.'], + ['code' => 'VaultReplicationStopping', 'message' => 'Vault replication is stopping.', 'http_code' => 400, 'description' => 'Vault replication is stopping.'], + ['code' => 'CrossAccountItemAlreadyExists', 'message' => 'The cross account item already exists.', 'http_code' => 400, 'description' => 'Cross-account configuration already exists. Do not create it again.'], + ['code' => 'SnapshotHashRequired', 'message' => 'Snapshot hash is required.', 'http_code' => 400, 'description' => 'Snapshot hash is missing.'], + ['code' => 'KmsServiceNotEnabled', 'message' => 'Kms service not enabled.', 'http_code' => 400, 'description' => 'Key Management Service not activated'], + ['code' => 'FeatureDeprecated', 'message' => 'The feature has been deprecated.', 'http_code' => 400, 'description' => 'The feature has been deprecated.'], + ], + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateVault'], + ['threshold' => '-1', 'countWindow' => 1, 'regionId' => '*'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteBackupClientResource'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeVaultReplicationRegions'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeHanaInstances'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GenerateRamPolicy'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'StopHanaDatabaseAsync'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateHanaBackupPlan'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetTempFileDownloadLink'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'EnableBackupPlan'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeTask'], + ['threshold' => '200', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteHanaInstance'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteAirEcsInstance'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateContainerCluster'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateClients'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeBackupPlans'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateBackupPlan'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteVault'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateHanaBackupPlan'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdatePolicyBinding'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateRestoreJob'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribePolicyBindings'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateReplicationVault'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CancelRestoreJob'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateHanaRetentionSetting'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeCrossAccounts'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateHanaInstance'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeHanaDatabases'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteBackupClient'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateHanaRestore'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeVaults'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeletePolicyV2'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeRecoverableOtsInstances'], + ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateTempFileUploadUrl'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpgradeClient'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CancelBackupJob'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeClients'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateBackupPlan'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeHanaBackupSetting'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteUdmEcsInstance'], + ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeBackupClients'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreatePolicyBindings'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteSnapshot'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CheckRole'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteClient'], + ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreatePolicyV2'], + ['threshold' => '200', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteHanaBackupPlan'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateBackupJob'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteUdmDisk'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteBackupPlan'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeletePolicyBinding'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeRegions'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeOtsTableSnapshots'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeRestoreJobs2'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'OpenHbrService'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'AddContainerCluster'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeHanaBackupPlans'], + ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribePoliciesV2'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateHanaInstance'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeContainerCluster'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeHanaBackupsAsync'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeHanaRestores'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'SearchHistoricalSnapshots'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DisableHanaBackupPlan'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'InstallBackupClients'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpgradeBackupClients'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'StartHanaDatabaseAsync'], + ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdatePolicyV2'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UninstallBackupClients'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DetachNasFileSystem'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UninstallClient'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeHanaRetentionSetting'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DisableBackupPlan'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateClientSettings'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'EnableHanaBackupPlan'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ChangeResourceGroup'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ExecuteBackupPlan'], + ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ExecutePolicyV2'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateVault'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateHanaBackupSetting'], + ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeBackupJobs2'], + ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeUdmSnapshots'], + ], + ], + 'ram' => [ + 'productCode' => 'HBR', + 'productName' => 'Cloud Backup', + 'ramCodes' => ['hbr'], + 'ramLevel' => 'OPERATION', + 'ramConditions' => [], + 'ramActions' => [ + [ + 'apiName' => 'DescribeBackupPlans', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeBackupPlans', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'DeleteContainerCluster', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:DeleteContainerCluster', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], - 'operationType' => 'write', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'none', - 'abilityTreeCode' => '95715', - 'abilityTreeNodes' => [ - 'FEATUREhbr3BJQCT', + [ + 'apiName' => 'DeleteAirEcsInstance', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:DeleteAirEcsInstance', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], - 'tenantRelevance' => 'publicInformation', ], - 'parameters' => [ - [ - 'name' => 'RequireBasePolicy', - 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to generate the policy based on an existing instance-specific rule. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', + [ + 'apiName' => 'CreateVaultReplication', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:CreateVaultReplication', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], - [ - 'name' => 'ActionType', - 'in' => 'query', - 'schema' => [ - 'description' => 'The type of policy that you want to generate. Valid values:'."\n" - ."\n" - .'* BACKUP: the permission to back up data to a backup vault'."\n" - .'* RESTORE: the permission to restore data from a backup vault'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'system', + ], + [ + 'apiName' => 'UpdateHanaRetentionSetting', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:UpdateHanaRetentionSetting', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], - [ - 'name' => 'VaultId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'v-0007al3m******7ao', + ], + [ + 'apiName' => 'UpgradeClient', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:UpgradeClient', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], - [ - 'name' => 'ResourceGroupId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the resource group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'rg-*********************', + ], + [ + 'apiName' => 'DescribeContainerCluster', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeContainerCluster', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'PolicyDocument' => [ - 'description' => 'The content of the policy.'."\n", - 'type' => 'string', - 'example' => '{ "Version": "1", "Statement": [ { "Effect": "Deny", "Action": [ "hbr:CreateRestore", "hbr:CreateRestoreJob", "hbr:CreateHanaRestore", "hbr:CreateUniRestorePlan", "hbr:CreateSqlServerRestore" ], "Resource": [ "acs:hbr:*:1178******531:vault/v-000******blx06", "acs:hbr:*:1178******531:vault/v-000******blx06/client/*" ] } ] }', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - ], - 'description' => '', + [ + 'apiName' => 'CreateTempFileUploadUrl', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:CreateTempFileUploadUrl', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PolicyDocument\\": \\"{ \\\\\\"Version\\\\\\": \\\\\\"1\\\\\\", \\\\\\"Statement\\\\\\": [ { \\\\\\"Effect\\\\\\": \\\\\\"Deny\\\\\\", \\\\\\"Action\\\\\\": [ \\\\\\"hbr:CreateRestore\\\\\\", \\\\\\"hbr:CreateRestoreJob\\\\\\", \\\\\\"hbr:CreateHanaRestore\\\\\\", \\\\\\"hbr:CreateUniRestorePlan\\\\\\", \\\\\\"hbr:CreateSqlServerRestore\\\\\\" ], \\\\\\"Resource\\\\\\": [ \\\\\\"acs:hbr:*:1178******531:vault/v-000******blx06\\\\\\", \\\\\\"acs:hbr:*:1178******531:vault/v-000******blx06/client/*\\\\\\" ] } ] }\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<GenerateRamPolicyResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <PolicyDocument>{ \\"Version\\": \\"1\\", \\"Statement\\": [ { \\"Effect\\": \\"Deny\\", \\"Action\\": [ \\"hbr:CreateRestore\\", \\"hbr:CreateRestoreJob\\", \\"hbr:CreateHanaRestore\\", \\"hbr:CreateUniRestorePlan\\", \\"hbr:CreateSqlServerRestore\\" ], \\"Resource\\": [ \\"acs:hbr:*:1178******531:vault/v-000******blx06\\", \\"acs:hbr:*:1178******531:vault/v-000******blx06/client/*\\" ] } ] }</PolicyDocument>\\n <Success>true</Success>\\n</GenerateRamPolicyResponse>","errorExample":""}]', - 'title' => 'GenerateRamPolicy', - 'summary' => 'Generates a Resource Access Management (RAM) policy.', - ], - 'ChangeResourceGroup' => [ - 'methods' => [ - 'post', - 'get', + [ + 'apiName' => 'DescribePoliciesV2', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'hbr:DescribePoliciesV2', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], ], - 'schemes' => [ - 'http', - 'https', + [ + 'apiName' => 'DeleteCrossAccount', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:DeleteCrossAccount', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'AddDataSource', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:AddDataSource', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ + [ + 'apiName' => 'UpdateHanaBackupSetting', + 'description' => '', 'operationType' => 'update', - 'abilityTreeCode' => '95415', - 'abilityTreeNodes' => [ - 'FEATUREhbr3BJQCT', + 'ramAction' => [ + 'action' => 'hbr:UpdateHanaBackupSetting', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'ResourceType', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The resource type. Valid values:'."\n" - ."\n" - .'* **vault**: backup vault'."\n" - .'* **client**: backup client'."\n" - .'* **hanainstance**: SAP HANA instance'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'vault', + [ + 'apiName' => 'DescribeUdmSnapshots', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'hbr:DescribeUdmSnapshots', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], - [ - 'name' => 'ResourceId', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The ID of the resource. The value of this parameter varies with the resource type. For example, if the ResourceType parameter is set to vault, the ResourceId parameter specifies the ID of the backup vault.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'v-0002vido6j5zyh5k****', + ], + [ + 'apiName' => 'OpenHbrService', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:OpenHbrService', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], - [ - 'name' => 'NewResourceGroupId', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The ID of the new resource group. You can view the available resource groups in the Resource Management console.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'rg-bp67acfmxazb4p**** ', + ], + [ + 'apiName' => 'DescribeBackupJobs2', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeBackupJobs2', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => 'C438054F-9088-5D1B-AED0-0EA86D9C65F4', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - ], - 'description' => '', + [ + 'apiName' => 'DeleteBackupClient', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:DeleteBackupClient', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"C438054F-9088-5D1B-AED0-0EA86D9C65F4\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<ChangeResourceGroupResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>C438054F-9088-5D1B-AED0-0EA86D9C65F4</RequestId>\\n <Success>true</Success>\\n</ChangeResourceGroupResponse>","errorExample":""}]', - 'title' => 'ChangeResourceGroup', - 'summary' => 'Changes the resource group to which an instance belongs.', - 'description' => '* In the Cloud Backup console, you can use resource groups to manage resources such as backup vaults, Cloud Backup clients, and SAP HANA instances.'."\n" - .'* A resource is a cloud service entity that you create on Alibaba Cloud, such as an Elastic Compute Service (ECS) instance, a backup vault, or an SAP HANA instance.'."\n" - .'* You can sort resources owned by your Alibaba Cloud account into various resource groups. Resource groups facilitate resource management among multiple projects or applications within your Alibaba Cloud account and simplify permission management.'."\n", - ], - 'CreateTempFileUploadUrl' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'BrowseFiles', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'hbr:BrowseFiles', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], - 'operationType' => 'readAndWrite', - 'systemTags' => [ - 'operationType' => 'create', - 'abilityTreeCode' => '146297', - 'abilityTreeNodes' => [ - 'FEATUREhbrKJCQWH', - 'FEATUREhbrS7MI6C', + [ + 'apiName' => 'DescribeHanaBackupSetting', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeHanaBackupSetting', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], - 'tenantRelevance' => 'publicInformation', ], - 'parameters' => [ - [ - 'name' => 'FileName', - 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the file to be uploaded.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'file-list.txt', + [ + 'apiName' => 'DescribeHanaRetentionSetting', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeHanaRetentionSetting', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'Endpoint' => [ - 'description' => 'The endpoint that is used to upload the file to OSS.'."\n", - 'type' => 'string', - 'example' => 'oss-cn-shenzhen.aliyuncs.com', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => 'F4EEB401-DD21-588D-AE3B-1E835C7655E1', - ], - 'ExpireTime' => [ - 'description' => 'The expiration time of the signature that is used to upload the file to OSS. This value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1654326678', - ], - 'Success' => [ - 'description' => 'Indicates whether the call is successful. Valid values:'."\n" - ."\n" - .'* true: The call is successful.'."\n" - .'* false: The call fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the call is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'TempFileKey' => [ - 'description' => 'The key that is used to upload the file to OSS.'."\n", - 'type' => 'string', - 'example' => 'temp/1440155109798732/upload/2022-07-29/49bed34c-b430-4e7e-89b1-4be2b734f95c/iaclone.diff', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the call is successful, "successful" is returned. If the call fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'BucketName' => [ - 'description' => 'The name of the OSS bucket to which the file is uploaded.'."\n", - 'type' => 'string', - 'example' => 'hbr-temp-bucket', - ], - 'OssAccessKeyId' => [ - 'description' => 'The AccessKey ID that is used to upload the file to OSS.'."\n", - 'type' => 'string', - 'example' => 'LTAI****Up', - ], - 'Policy' => [ - 'description' => 'The policy that is used to upload the file to OSS.'."\n", - 'type' => 'string', - 'example' => 'eyJleH****V19', - ], - 'Signature' => [ - 'description' => 'The signature that is used to upload the file to OSS.'."\n", - 'type' => 'string', - 'example' => 'RmhI****0A=', - ], - ], + [ + 'apiName' => 'CreateVault', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:CreateVault', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Endpoint\\": \\"oss-cn-shenzhen.aliyuncs.com\\",\\n \\"RequestId\\": \\"F4EEB401-DD21-588D-AE3B-1E835C7655E1\\",\\n \\"ExpireTime\\": 1654326678,\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"TempFileKey\\": \\"temp/1440155109798732/upload/2022-07-29/49bed34c-b430-4e7e-89b1-4be2b734f95c/iaclone.diff\\",\\n \\"Message\\": \\"successful\\",\\n \\"BucketName\\": \\"hbr-temp-bucket\\",\\n \\"OssAccessKeyId\\": \\"LTAI****Up\\",\\n \\"Policy\\": \\"eyJleH****V19\\",\\n \\"Signature\\": \\"RmhI****0A=\\"\\n}","type":"json"}]', - 'title' => 'CreateTempFileUploadUrl', - 'summary' => 'Generates the parameters and signature required for a file upload URL.', - 'description' => '1. You can directly upload a file to Object Storage Service (OSS) by using a form based on the returned value of this operation.'."\n" - .'2. For more information about how to upload a file to OSS by using a form, see OSS documentation.'."\n" - .'3. The system periodically deletes files that are uploaded to OSS.'."\n", - ], - 'GetTempFileDownloadLink' => [ - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + [ + 'apiName' => 'AddContainerCluster', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:AddContainerCluster', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'GetBasicStatistics', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:GetBasicStatistics', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], - 'operationType' => 'read', - 'systemTags' => [ + [ + 'apiName' => 'DescribeHanaBackupPlans', + 'description' => '', 'operationType' => 'get', - 'abilityTreeCode' => '146984', - 'abilityTreeNodes' => [ - 'FEATUREhbr56LH1C', - 'FEATUREhbrFWIWBG', - 'FEATUREhbrAW9I1R', - 'FEATUREhbrB1KQ9G', - 'FEATUREhbr3BJQCT', - 'FEATUREhbrAL60OZ', - 'FEATUREhbr9ZUQY7', + 'ramAction' => [ + 'action' => 'hbr:DescribeHanaBackupPlans', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'TempFileKey', - 'in' => 'query', - 'schema' => [ - 'description' => 'The key that is used to download a file.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'temp/1797733170015112/report/r-000jdzknbp39cnf9hs99/r-000jdzknbp39cnf9hs99-total.csv', + [ + 'apiName' => 'EnableBackupPlan', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:EnableBackupPlan', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the request is successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Url' => [ - 'description' => 'The download URL of the file.'."\n", - 'type' => 'string', - 'example' => 'https://a-hbr-temp-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/job-0007yg2i0m6705wdhgb6_0.csv?Expires=1649406469&OSSAccessKeyId=LTAI************&Signature=26%2BgjegCrRmMDCpS5jzyG4ivKU8%3D', - ], - 'Message' => [ - 'description' => 'The message that is returned. If the request is successful, a value of successful is returned. If the request fails, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Success' => [ - 'description' => 'Indicates whether the request is successful.'."\n" - ."\n" - .'* true: The request is successful.'."\n" - .'* false: The request fails.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - ], + [ + 'apiName' => 'ChangeResourceGroup', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:ChangeResourceGroup', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Url\\": \\"https://a-hbr-temp-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/job-0007yg2i0m6705wdhgb6_0.csv?Expires=1649406469&OSSAccessKeyId=LTAI************&Signature=26%2BgjegCrRmMDCpS5jzyG4ivKU8%3D\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => 'GetTempFileDownloadLink', - 'summary' => 'Obtains download links of files such as job reports.', - ], - 'CheckRole' => [ - 'methods' => [ - 'post', - 'get', + [ + 'apiName' => 'AddCrossAccount', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:AddCrossAccount', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], ], - 'schemes' => [ - 'https', + [ + 'apiName' => 'StartHanaDatabaseAsync', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:StartHanaDatabaseAsync', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'DescribeClients', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeClients', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], - 'operationType' => 'read', - 'systemTags' => [ - 'operationType' => 'none', - 'abilityTreeCode' => '95418', - 'abilityTreeNodes' => [ - 'FEATUREhbr3BJQCT', + [ + 'apiName' => 'DescribeOtsTableSnapshots', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeOtsTableSnapshots', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], - 'tenantRelevance' => 'publicInformation', ], - 'parameters' => [ - [ - 'name' => 'CheckRoleType', - 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the role. Valid values:'."\n" - ."\n" - .'* EcsRole: a role with the permissions to access Elastic Compute Service (ECS) resources'."\n" - .'* CsgRole: a role with the permissions to perform Cloud Storage Gateway (CSG) backup'."\n" - .'* NasRole: a role with the permissions to perform NAS backup'."\n" - .'* OssRole: a role with the permissions to perform Object Storage Service (OSS) backup'."\n" - .'* UdmRole: a role with the permissions to perform ECS instance backup'."\n" - .'* VMwareLocalRole: a role with the permissions to back up on-premises VMware virtual machines (VMs)'."\n" - .'* VMwareCloudRole: a role with the permissions to back up VMs deployed on Alibaba Cloud VMware Service (ACVS)'."\n" - .'* EcsBackupRole: a role with the permissions to perform ECS backup'."\n" - .'* OtsRole: a role with the permissions to perform Tablestore backup'."\n" - .'* CrossAccountRole: a role with the permissions to perform cross-account backup'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'OssRole', + [ + 'apiName' => 'GetTempFileDownloadLink', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:GetTempFileDownloadLink', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], - [ - 'name' => 'CrossAccountUserId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the source Alibaba Cloud account that authorizes the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '158975xxxxx4625', + ], + [ + 'apiName' => 'ExecutePolicyV2', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:ExecutePolicyV2', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], - [ - 'name' => 'CrossAccountRoleName', - 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the Resource Access Management (RAM) role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'BackupRole', + ], + [ + 'apiName' => 'DescribeContainerResource', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeContainerResource', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '2F63CA9B-744E-51C0-A638-27882BB03078', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - ], - 'description' => '', + [ + 'apiName' => 'UpdateContainerCluster', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:UpdateContainerCluster', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'errorCodes' => [ - 200 => [ - [ - 'errorCode' => 'CrossAccountBackupSlrNotExist', - 'errorMessage' => 'AliyunServiceRoleForHbrCrossAccountBackup doesn\'t exist, please create this role.', + [ + 'apiName' => 'DescribeBackupClients', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeBackupClients', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"2F63CA9B-744E-51C0-A638-27882BB03078\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => 'CheckRole', - 'summary' => 'Checks whether the user has permissions to access the current resource or page.', - ], - 'DescribeCrossAccounts' => [ - 'summary' => 'Queries the information about the accounts used in cross-account backup.', - 'methods' => [ - 'post', - 'get', + [ + 'apiName' => 'CreatePolicyV2', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:CreatePolicyV2', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], ], - 'schemes' => [ - 'http', - 'https', + [ + 'apiName' => 'EnableHanaBackupPlan', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:EnableHanaBackupPlan', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'CreateClients', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:CreateClients', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'list', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '137629', - 'abilityTreeNodes' => [ - 'FEATUREhbr3BJQCT', - 'FEATUREhbrB08D1M', + [ + 'apiName' => 'DescribeRecoverableOtsInstances', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeRecoverableOtsInstances', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], - 'tenantRelevance' => 'tenant', ], - 'parameters' => [ - [ - 'name' => 'PageNumber', - 'in' => 'query', - 'schema' => [ - 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '1', - 'example' => '1', - 'default' => '1', + [ + 'apiName' => 'CreateReplicationVault', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:CreateReplicationVault', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], - [ - 'name' => 'PageSize', - 'in' => 'query', - 'schema' => [ - 'description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '100', - 'minimum' => '1', - 'example' => '10', - 'default' => '10', + ], + [ + 'apiName' => 'DescribeHanaInstances', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeHanaInstances', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => 'The HTTP status code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'PageNumber' => [ - 'description' => 'The page number. Pages start from page 1. Default value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'PageSize' => [ - 'description' => 'The number of entries per page. Valid values: 1 to 99. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'TotalCount' => [ - 'description' => 'The total number of entries returned.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '22', - ], - 'CrossAccounts' => [ - 'type' => 'object', - 'itemNode' => true, - 'properties' => [ - 'CrossAccount' => [ - 'description' => 'The information about the accounts used in cross-account backup.'."\n", - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'OwnerId' => [ - 'description' => 'The ID of the current account.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '184164xxxxx49795', - ], - 'CrossAccountUserId' => [ - 'description' => 'The ID of the source Alibaba Cloud account that authorizes the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '15897534xxxxx625', - ], - 'CrossAccountRoleName' => [ - 'description' => 'The name of the RAM role that is created within the source Alibaba Cloud account and assigned to the current Alibaba Cloud account to authorize the current Alibaba Cloud account to back up data across Alibaba Cloud accounts.'."\n", - 'type' => 'string', - 'example' => 'BackupRole', - ], - 'Alias' => [ - 'description' => 'The account alias. The value can be up to 32 bits in length.'."\n", - 'type' => 'string', - 'example' => 'content', - ], - 'Id' => [ - 'description' => 'The ID of the backup type.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'CreatedTime' => [ - 'description' => 'The time when the account was created. This value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1654570439', - ], - 'UpdatedTime' => [ - 'description' => 'The time when the account information was updated. The value is a UNIX timestamp. Unit: seconds.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1640157098', - ], - 'CrossAccountType' => [ - 'title' => '跨账号类型', - 'type' => 'string', - 'example' => 'CROSS_ACCOUNT', - ], - ], - ], - ], - ], - ], - ], - 'description' => '', + [ + 'apiName' => 'UpdateDataSource', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:UpdateDataSource', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 22,\\n \\"CrossAccounts\\": {\\n \\"CrossAccount\\": [\\n {\\n \\"OwnerId\\": 0,\\n \\"CrossAccountUserId\\": 0,\\n \\"CrossAccountRoleName\\": \\"BackupRole\\",\\n \\"Alias\\": \\"content\\",\\n \\"Id\\": 1,\\n \\"CreatedTime\\": 1654570439,\\n \\"UpdatedTime\\": 1640157098,\\n \\"CrossAccountType\\": \\"CROSS_ACCOUNT\\"\\n }\\n ]\\n }\\n}","type":"json"}]', - 'title' => 'DescribeCrossAccounts', - 'translator' => 'machine', - ], - 'DeleteUdmEcsInstance' => [ - 'methods' => [ - 'post', - 'get', + [ + 'apiName' => 'DescribeCrossAccounts', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'hbr:DescribeCrossAccounts', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], ], - 'schemes' => [ - 'http', - 'https', + [ + 'apiName' => 'ExecuteBackupPlan', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:ExecuteBackupPlan', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'DeleteBackupPlan', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:DeleteBackupPlan', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], - 'operationType' => 'write', - 'deprecated' => false, - 'systemTags' => [ + [ + 'apiName' => 'DeleteHanaInstance', + 'description' => '', 'operationType' => 'delete', - 'abilityTreeCode' => '95487', - 'abilityTreeNodes' => [ - 'FEATUREhbrB1KQ9G', + 'ramAction' => [ + 'action' => 'hbr:DeleteHanaInstance', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'InstanceId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the ECS instance.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'i-2zed************tlrm', + [ + 'apiName' => 'SearchHistoricalSnapshots', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:SearchHistoricalSnapshots', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '0497C0D3-82B5-56B2-8D64-D62E61B90E95', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful. Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - ], - 'description' => '', + [ + 'apiName' => 'CreateHanaRestore', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:CreateHanaRestore', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"0497C0D3-82B5-56B2-8D64-D62E61B90E95\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => 'DeleteUdmEcsInstance', - 'summary' => 'Stops protection for Elastic Compute Service (ECS) instance backup.', - ], - 'DeleteUdmDisk' => [ - 'summary' => 'Cancels a protected disk.', - 'methods' => [ - 'post', - 'get', + [ + 'apiName' => 'DescribePolicyBindings', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'hbr:DescribePolicyBindings', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], ], - 'schemes' => [ - 'https', + [ + 'apiName' => 'DescribeHanaDatabases', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeHanaDatabases', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'CancelRestoreJob', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:CancelRestoreJob', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ + [ + 'apiName' => 'DeleteClient', + 'description' => '', 'operationType' => 'delete', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '230674', - 'abilityTreeNodes' => [ - 'FEATUREhbrB1KQ9G', + 'ramAction' => [ + 'action' => 'hbr:DeleteClient', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'DiskId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The disk ID.'."\n", - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'd-bp15************xy70', + [ + 'apiName' => 'UninstallBackupClients', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:UninstallBackupClients', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response'."\n", - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'Id of the request'."\n", - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Code' => [ - 'description' => 'The response code. The status code 200 indicates that the request was successful.'."\n", - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => 'The returned message. If the request was successful, "successful" is returned. If the request failed, an error message is returned.'."\n", - 'type' => 'string', - 'example' => 'successful', - ], - 'Success' => [ - 'description' => 'Indicates whether the request was successful.'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - ], + [ + 'apiName' => 'DeleteHanaBackupPlan', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:DeleteHanaBackupPlan', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"Success\\": true\\n}","type":"json"}]', - 'title' => 'DeleteUdmDisk', - ], - 'AddCrossAccount' => [ - 'summary' => '添加跨账号信息', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'DetachNasFileSystem', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:DetachNasFileSystem', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], - 'operationType' => 'write', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'create', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREhbrB08D1M', + [ + 'apiName' => 'GenerateRamPolicy', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'hbr:GenerateRamPolicy', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], - 'tenantRelevance' => 'tenant', ], - 'parameters' => [ - [ - 'name' => 'CrossAccountUserId', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'example' => '1589753xxxxxx625', + [ + 'apiName' => 'DeletePolicyV2', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:DeletePolicyV2', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], - [ - 'name' => 'CrossAccountRoleName', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'hbrcrossrole', + ], + [ + 'apiName' => 'CreateHanaInstance', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:CreateHanaInstance', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], - [ - 'name' => 'CrossAccountType', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'CROSS_ACCOUNT', + ], + [ + 'apiName' => 'DescribeTask', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeTask', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], - [ - 'name' => 'Alias', - 'in' => 'query', - 'allowEmptyValue' => false, - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => '', + ], + [ + 'apiName' => 'CreateBackupJob', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:CreateBackupJob', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'Code' => [ - 'description' => '', - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => '', - 'type' => 'string', - 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', - ], - 'Success' => [ - 'description' => '', - 'type' => 'boolean', - 'example' => 'true', - ], - ], + [ + 'apiName' => 'DisableBackupPlan', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:DisableBackupPlan', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'eventInfo' => [ - 'enable' => false, - 'eventNames' => [], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Success\\": true\\n}","type":"json"}]', - ], - 'DeleteCrossAccount' => [ - 'summary' => '删除跨账号信息', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'UpdatePolicyV2', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:UpdatePolicyV2', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ + [ + 'apiName' => 'UninstallClient', + 'description' => '', 'operationType' => 'delete', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '137630', - 'abilityTreeNodes' => [ - 'FEATUREhbrB08D1M', + 'ramAction' => [ + 'action' => 'hbr:UninstallClient', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'CrossAccountUserId', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int64', - 'required' => true, - 'example' => '1841xxxxx3649795', + [ + 'apiName' => 'DescribeHanaBackupsAsync', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeHanaBackupsAsync', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], - [ - 'name' => 'CrossAccountRoleName', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => true, - 'example' => 'hbrcrossrole', + ], + [ + 'apiName' => 'StopHanaDatabaseAsync', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:StopHanaDatabaseAsync', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], - [ - 'name' => 'CrossAccountType', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'CROSS_ACCOUNT', + ], + [ + 'apiName' => 'DescribeRestoreJobs2', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeRestoreJobs2', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'Code' => [ - 'description' => '', - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'successful', - ], - 'RequestId' => [ - 'description' => '', - 'type' => 'string', - 'example' => '921E9989-735C-5254-A29F-6B8A5DDC1ED1', - ], - 'Success' => [ - 'description' => '', - 'type' => 'boolean', - 'example' => 'True', - ], - ], + [ + 'apiName' => 'DeleteVaultReplication', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:DeleteVaultReplication', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"921E9989-735C-5254-A29F-6B8A5DDC1ED1\\",\\n \\"Success\\": true\\n}","errorExample":""},{"type":"xml","example":"<DeleteCrossAccountResponse>\\n <Code>200</Code>\\n <Message>successful</Message>\\n <RequestId>921E9989-735C-5254-A29F-6B8A5DDC1ED1</RequestId>\\n <Success>true</Success>\\n</DeleteCrossAccountResponse>","errorExample":""}]', - ], - 'ListProtectedResources' => [ - 'summary' => '查询已保护的资源列表', - 'path' => '', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'DeleteSnapshot', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:DeleteSnapshot', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'list', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREhbrIF7VXM', + [ + 'apiName' => 'InstallBackupClients', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:InstallBackupClients', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'NextToken', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'aWQj********MCMy', + [ + 'apiName' => 'UpdateHanaBackupPlan', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:UpdateHanaBackupPlan', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], - [ - 'name' => 'MaxResults', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'minimum' => '0', - 'example' => '10', + ], + [ + 'apiName' => 'CreateRestoreJob', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:CreateRestoreJob', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], - [ - 'name' => 'CreatedByProduct', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'BASIC', - 'enum' => [ - 'BASIC', - ], + ], + [ + 'apiName' => 'DeleteUdmDisk', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:DeleteUdmDisk', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], - [ - 'name' => 'SourceType', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'ECS_FILE', - 'enum' => [ - 'ECS_FILE', - ], + ], + [ + 'apiName' => 'CancelBackupJob', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:CancelBackupJob', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], - [ - 'name' => 'ResourceId', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'i-wz95************7zrd', + ], + [ + 'apiName' => 'CheckRole', + 'description' => '', + 'operationType' => 'none', + 'ramAction' => [ + 'action' => 'hbr:CheckRole', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], - [ - 'name' => 'Skip', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', + ], + [ + 'apiName' => 'UpdateVault', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:UpdateVault', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '', - 'type' => 'string', - 'example' => 'EB09****-****-****-****-********6C38', - ], - 'Code' => [ - 'description' => '', - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'successful', - ], - 'Success' => [ - 'description' => '', - 'type' => 'boolean', - 'example' => 'true', - ], - 'TotalCount' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '3', - ], - 'ProtectedResources' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'SnapshotCount' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '30', - ], - 'ResourceId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'i-wz95************7zrd', - ], - 'ProtectedResourceId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'pr-0004************gs61', - ], - 'SourceType' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'ECS_FILE', - ], - 'ProtectedDataSize' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '107374182400', - ], - 'CreatedByProduct' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'BASIC', - ], - 'ResourceOwnerId' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1024********0703', - ], - ], - ], - ], - 'MaxResults' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'NextToken' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'eyJJ************MX0=', - ], - ], + [ + 'apiName' => 'DeleteUdmEcsInstance', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:DeleteUdmEcsInstance', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EB09****-****-****-****-********6C38\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"Success\\": true,\\n \\"TotalCount\\": 3,\\n \\"ProtectedResources\\": [\\n {\\n \\"SnapshotCount\\": 30,\\n \\"ResourceId\\": \\"i-wz95************7zrd\\",\\n \\"ProtectedResourceId\\": \\"pr-0004************gs61\\",\\n \\"SourceType\\": \\"ECS_FILE\\",\\n \\"ProtectedDataSize\\": 107374182400,\\n \\"CreatedByProduct\\": \\"BASIC\\",\\n \\"ResourceOwnerId\\": 0\\n }\\n ],\\n \\"MaxResults\\": 10,\\n \\"NextToken\\": \\"eyJJ************MX0=\\"\\n}","type":"json"}]', - ], - 'CreateVaultReplication' => [ - 'summary' => '创建备份库复制', - 'path' => '', - 'methods' => [ - 'post', - 'get', + [ + 'apiName' => 'CreateBackupPlan', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:CreateBackupPlan', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], ], - 'schemes' => [ - 'https', + [ + 'apiName' => 'DescribeDataSources', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeDataSources', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'DeleteBackupClientResource', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:DeleteBackupClientResource', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], - 'operationType' => 'write', - 'deprecated' => false, - 'systemTags' => [ + [ + 'apiName' => 'CreateHanaBackupPlan', + 'description' => '', 'operationType' => 'create', - 'riskType' => 'none', - 'chargeType' => 'paid', - 'abilityTreeCode' => '95458', - 'abilityTreeNodes' => [ - 'FEATUREhbrGSUVI2', + 'ramAction' => [ + 'action' => 'hbr:CreateHanaBackupPlan', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'ReplicationSourceVaultId', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => true, - 'example' => 'v-*********************', + [ + 'apiName' => 'ListProtectedResources', + 'description' => '', + 'operationType' => 'list', + 'ramAction' => [ + 'action' => 'hbr:ListProtectedResources', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], - [ - 'name' => 'ReplicationTargetVaultId', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => true, - 'example' => 'r-*********************', + ], + [ + 'apiName' => 'UpdatePolicyBinding', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:UpdatePolicyBinding', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], - [ - 'name' => 'ReplicationSourceRegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou', + ], + [ + 'apiName' => 'DescribeVaults', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeVaults', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '', - 'type' => 'string', - 'example' => '280DD872-EE25-52E8-9CB4-491067173DD0', - ], - 'TaskId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 't-*********************', - ], - 'Success' => [ - 'description' => '', - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => '', - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'successful', - ], - ], + [ + 'apiName' => 'UpgradeBackupClients', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:UpgradeBackupClients', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"280DD872-EE25-52E8-9CB4-491067173DD0\\",\\n \\"TaskId\\": \\"t-*********************\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\"\\n}","type":"json"}]', - ], - 'DeleteVaultReplication' => [ - 'summary' => '关闭备份库复制', - 'path' => '', - 'methods' => [ - 'post', - 'get', + [ + 'apiName' => 'CreatePolicyBindings', + 'description' => '', + 'operationType' => 'create', + 'ramAction' => [ + 'action' => 'hbr:CreatePolicyBindings', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], ], - 'schemes' => [ - 'https', + [ + 'apiName' => 'UpdateHanaInstance', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:UpdateHanaInstance', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], ], - 'security' => [ - [ - 'AK' => [], + [ + 'apiName' => 'RemoveDataSource', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:RemoveDataSource', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], - 'operationType' => 'write', - 'deprecated' => false, - 'systemTags' => [ + [ + 'apiName' => 'DeletePolicyBinding', + 'description' => '', 'operationType' => 'delete', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeCode' => '95458', - 'abilityTreeNodes' => [ - 'FEATUREhbrGSUVI2', + 'ramAction' => [ + 'action' => 'hbr:DeletePolicyBinding', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], ], ], - 'parameters' => [ - [ - 'name' => 'ReplicationSourceVaultId', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => true, - 'example' => 'v-*********************', + [ + 'apiName' => 'UpdateClientSettings', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:UpdateClientSettings', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], - [ - 'name' => 'ReplicationTargetVaultId', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => true, - 'example' => 'r-*********************', + ], + [ + 'apiName' => 'DeleteVault', + 'description' => '', + 'operationType' => 'delete', + 'ramAction' => [ + 'action' => 'hbr:DeleteVault', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], - [ - 'name' => 'ReplicationSourceRegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou', + ], + [ + 'apiName' => 'DescribeHanaRestores', + 'description' => '', + 'operationType' => 'get', + 'ramAction' => [ + 'action' => 'hbr:DescribeHanaRestores', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'C438054F-9088-5D1B-AED0-0EA86D9C65F4', - ], - 'Success' => [ - 'description' => '', - 'type' => 'boolean', - 'example' => 'true', - ], - 'Code' => [ - 'description' => '', - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'successful', - ], - ], + [ + 'apiName' => 'DisableHanaBackupPlan', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:DisableHanaBackupPlan', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + [ + 'apiName' => 'UpdateBackupPlan', + 'description' => '', + 'operationType' => 'update', + 'ramAction' => [ + 'action' => 'hbr:UpdateBackupPlan', + 'authLevel' => 'operate', + 'actionConditions' => [], + 'resources' => [ + ['validationType' => 'always', 'product' => 'HBR', 'resourceType' => 'All Resource', 'arn' => '*'], + ], + ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C438054F-9088-5D1B-AED0-0EA86D9C65F4\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\"\\n}","type":"json"}]', - ], - ], - 'endpoints' => [ - [ - 'regionId' => 'cn-qingdao', - 'endpoint' => 'hbr.cn-qingdao.aliyuncs.com', - ], - [ - 'regionId' => 'cn-beijing', - 'endpoint' => 'hbr.cn-beijing.aliyuncs.com', - ], - [ - 'regionId' => 'cn-zhangjiakou', - 'endpoint' => 'hbr.cn-zhangjiakou.aliyuncs.com', - ], - [ - 'regionId' => 'cn-huhehaote', - 'endpoint' => 'hbr.cn-huhehaote.aliyuncs.com', - ], - [ - 'regionId' => 'cn-wulanchabu', - 'endpoint' => 'hbr.cn-wulanchabu.aliyuncs.com', - ], - [ - 'regionId' => 'cn-hangzhou', - 'endpoint' => 'hbr.cn-hangzhou.aliyuncs.com', - ], - [ - 'regionId' => 'cn-shanghai', - 'endpoint' => 'hbr.cn-shanghai.aliyuncs.com', - ], - [ - 'regionId' => 'cn-shenzhen', - 'endpoint' => 'hbr.cn-shenzhen.aliyuncs.com', - ], - [ - 'regionId' => 'cn-heyuan', - 'endpoint' => 'hbr.cn-heyuan.aliyuncs.com', - ], - [ - 'regionId' => 'cn-guangzhou', - 'endpoint' => 'hbr.cn-guangzhou.aliyuncs.com', - ], - [ - 'regionId' => 'cn-chengdu', - 'endpoint' => 'hbr.cn-chengdu.aliyuncs.com', - ], - [ - 'regionId' => 'cn-hongkong', - 'endpoint' => 'hbr.cn-hongkong.aliyuncs.com', - ], - [ - 'regionId' => 'ap-northeast-1', - 'endpoint' => 'hbr.ap-northeast-1.aliyuncs.com', - ], - [ - 'regionId' => 'ap-northeast-2', - 'endpoint' => 'hbr.ap-northeast-2.aliyuncs.com', - ], - [ - 'regionId' => 'ap-southeast-1', - 'endpoint' => 'hbr.ap-southeast-1.aliyuncs.com', - ], - [ - 'regionId' => 'ap-southeast-2', - 'endpoint' => 'hbr.ap-southeast-2.aliyuncs.com', - ], - [ - 'regionId' => 'ap-southeast-3', - 'endpoint' => 'hbr.ap-southeast-3.aliyuncs.com', - ], - [ - 'regionId' => 'ap-southeast-5', - 'endpoint' => 'hbr.ap-southeast-5.aliyuncs.com', - ], - [ - 'regionId' => 'ap-southeast-6', - 'endpoint' => 'hbr.ap-southeast-6.aliyuncs.com', - ], - [ - 'regionId' => 'us-east-1', - 'endpoint' => 'hbr.us-east-1.aliyuncs.com', - ], - [ - 'regionId' => 'us-west-1', - 'endpoint' => 'hbr.us-west-1.aliyuncs.com', - ], - [ - 'regionId' => 'eu-west-1', - 'endpoint' => 'hbr.eu-west-1.aliyuncs.com', - ], - [ - 'regionId' => 'eu-central-1', - 'endpoint' => 'hbr.eu-central-1.aliyuncs.com', - ], - [ - 'regionId' => 'ap-south-1', - 'endpoint' => 'hbr.ap-south-1.aliyuncs.com', - ], - [ - 'regionId' => 'me-east-1', - 'endpoint' => 'hbr.me-east-1.aliyuncs.com', - ], - [ - 'regionId' => 'cn-hangzhou-finance', - 'endpoint' => 'hbr.cn-hangzhou-finance.aliyuncs.com', - ], - [ - 'regionId' => 'cn-shanghai-finance-1', - 'endpoint' => 'hbr.cn-shanghai-finance-1.aliyuncs.com', - ], - [ - 'regionId' => 'cn-shenzhen-finance-1', - 'endpoint' => 'hbr.cn-shenzhen-finance-1.aliyuncs.com', - ], - [ - 'regionId' => 'ap-southeast-7', - 'endpoint' => 'hbr.ap-southeast-7.aliyuncs.com', - ], - [ - 'regionId' => 'cn-beijing-finance-1', - 'endpoint' => 'hbr.cn-beijing-finance-1.aliyuncs.com', - ], - [ - 'regionId' => 'me-central-1', - 'endpoint' => 'hbr.me-central-1.aliyuncs.com', ], + 'resourceTypes' => [], ], ]; |
